高容错分布式计算系统是什么样的?

作者: 数据僧 | 来源:发表于2018-12-09 15:26 被阅读10次

高容错分布式计算系统,就是要让系统高可用。您的问题可以理解为如何设计高可用的分布式计算系统。

高可用的分布式计算系统的设计通常需要做到:冗余,故障自动转移,状态同步,资源调度,系统自检,故障恢复,伸缩方便等。。。

我们可以参考当下比较流行的分布式计算框架,看看别人如何设计的。例如:MapReduce,Spark,Storm等。

MapReduce:分布式离线计算框架。在运行的时候根据文件块自动分配计算节点,和线程,在运行的过程中如果某个节点失败,则会尝试在别的节点去执行。
适合数据复杂度运算 不适合算法复杂度的运算 不适合实时计算、流式计算、DAG有向图计算 综上,要求算法足够简单,数据可以足够大!
MapReduce包含四个组成部分 Client, JobTracker, TaskTracker ,Task。

hadoop-MapReduce模型实现图
Map流程:

1,Inputformat:首先将 HDFS 中的数据以 Split 方式作为 MapReduce 的输入。Mapper:每个Mapper 将输入(key,value)数据解析成输出(key,value)。
2,Partition:根据key或value及reduce的数量来决定当前的这对输出数据最终应该交由哪个reduce task处理( Partitioner接口,默认自动完成,可定制)。
3,Combine:缓存溢写时完成,如果有很多个相同key/value对需要发送到某个reduce端去,那么需要将这些key/value值拼接到一块,减少与partition相关的索引记录(reducer接口,默认自动完成,可定制) 。
4,Merge:溢写文件合并,同时再次执行Combiner(默认自动完成)。

Map 流程
Reduce流程

1,Copy:简单地拉取数据 Merge:同map
2,Merge,文件合并
3,Reducer:每个Reducer将输入(key,value)数据解析成输出(key,value) 把结果放到HDFS上

Reduce流程

spark:分布式在线批量计算框架。可以实时执行批量计算命令。依赖内存资源。将RDD存放于内存,方面后续计算能够持续复用。

spark工作示意图

Storm是实时流式计算框架。主要是无法忍受MapReduce的高延迟。Storm的核心组件有Nimbus、Supervisor、Worker、Task、Topology、Stream、Spout、Bolt、Stream grouping、Reliability。

Storm

在我的日常工作,还没有自己去设计一套高可用的分布式计算框架。大多也只是研究目前市场主流的计算框架,理解其中的设计思想和框架中体现的架构思路,最终灵活应用与工作中的其它场景。


如果您觉得我用心了,觉得您有所收获,麻烦关注下我吧,您的关注就是我的动力,因为有你,我就不是一个人在前行。

数据僧

欢迎来找 数据僧 一起探讨大数据相关的问题。评论区留言,我们一起讨论。

相关文章

  • 高容错分布式计算系统是什么样的?

    高容错分布式计算系统,就是要让系统高可用。您的问题可以理解为如何设计高可用的分布式计算系统。 高可用的分布式计算系...

  • 大数据学习思路分解(3)storm流式计算

    Storm是一个分布式的、高容错的实时计算系统。Storm适用的场景: 1、Storm可以用来用来处理源源不断的消...

  • HDFS常用命令操作

    HDFS(Hadoop Distributed File System)是一种分布式文件系统,它具有高容错的特点,...

  • 拜占庭容错技术

    拜占庭容错技术(Byzantine Fault Tolerance,BFT)是一类分布式计算领域的容错技术。拜占庭...

  • 线性一致性与全序广播------《Designing Data-

    上一篇聊了聊构建分布式系统所面临的困难,这篇将着重讨论构建容错分布式系统的算法与协议。构建容错系统的最佳方法是使用...

  • Hadoop之HDFS

    什么是HDFS?HDFS是Haddop下的分布式文件系统、具有高容错、高吞吐量等特性,可以部署在低成本的硬件上。 ...

  • 并发、并行和分布式(Concurrent, Parallel,

    概述 在复杂的系统开发中,经常会遇到并发编程、高并发、并行计算、分布式系统、分布式计算、分布式存储这些词语,那么这...

  • Hbase的基本结构

    Hbase是分布式,可伸缩,面向列,高容错,快速查询写入的海量数据存储系统。 1.client提供访问Hbase的...

  • 浅谈分布式商业关系 - 社群的重要性

    我是通信行业出生,所以我就先解释一下计算机分布式系统是什么样子的。 上面这张图是分布式计算机系统。通过交换机...

  • Hadoop简介

    Hadoop是一个Apache基金会所开发的分布式系统基础架构,具有高容错、高可靠性、高扩展性、高效、低成本等特点...

网友评论

    本文标题:高容错分布式计算系统是什么样的?

    本文链接:https://www.haomeiwen.com/subject/rbxkhqtx.html