大数据处理系统的发展历程与演进
1. 引言
外界对谷歌所做的工作很感兴趣,毕竟谷歌在这方面过去一直比较低调。接下来,我们将沿着时间线,介绍各种系统的发展历程,以及它们对现代流处理生态系统的贡献。
2. MapReduce:大数据处理的开端
2003 年,MapReduce 的诞生开启了大规模数据处理的时代。当时,谷歌的工程师们为应对万维网规模的数据处理挑战,构建了各种定制系统。在这个过程中,他们发现了数据处理面临的三大难题:
- 数据处理困难 :数据科学家和工程师们深知,从原始数据中提取有用信息并非易事,甚至可以成为一生的事业追求。
- 可扩展性困难 :在大规模数据上提取有用信息更是难上加难。
- 容错性困难 :在通用硬件上以容错且正确的方式从大规模数据中提取有用信息,简直是一项艰巨的任务。
在解决了多个用例中的这三个挑战后,他们发现所构建的定制系统存在一些相似之处。于是得出结论:如果能构建一个框架来解决可扩展性和容错性问题,专注于数据处理问题就会简单很多。这便是 MapReduce 的诞生背景。
MapReduce 的基本思想是提供一个简单的数据处理 API,围绕函数式编程领域的两个常见操作:map 和 reduce。使用该 API 构建的管道将在分布式系统框架上执行,该框架负责处理所有棘手的可扩展性和容错性问题。
MapReduce 工作流程可分为六个离散阶段:MapRead、Map、MapWrite、ReduceRead、Reduce、ReduceWrite。从高层次来
超级会员免费看
订阅专栏 解锁全文
1084

被折叠的 条评论
为什么被折叠?



