上周我们学习了消息中间件的核心原理以及如何搭建一套高并发高可用且支持海量存储的生产架构(今天来设计一套高可用高并发、海量存储以及可伸缩的消息中间件生产架构),我们暂且先放一放,后面再进行RocketMQ 详细讲解,今天我们开始学习分布式系统中的另一个核心知识点,即分布式技术技术。
分布式计算技术,目前主要分为四大模式,主要包括 MapReduce 、Stream、Actor 以及流水线。今天我就从 MapReduce 模式开始。
相信你对于 Hadoop 这个框架并不陌生,它主要就是用来解决海量数据计算的问题。那你知道他是怎样去做海量数据计算的吗?采取了什么特殊算法吗?
我们自己先来想一下,既然是海量的数据,规模那么大,那我就先把这些数据分开,分成多个进程去处理,每个进程计算一部分数据,最后,将各个进程计算的结果进行汇总,这样是不是就可以提高运算速度了呢。
是的,其实在分布式领域中这种想法叫做 Map Reduce 模式,也叫做 MR 模式,那接下来我们就一起来看看 MR 模式到底是个什么高级的东西。