三种大数据处理引擎
批量大数据处理
- 数据特点:静态数据
- 场景:离散计算,対实时性要求不高
- 代表技术:MapReduce
MapReduce
- 一次计算可以分为映射和规约两个阶段
- 拿到数据进行预处理
- 先被分成各个数据块
- Map阶段:读取数据,生成键(词)值(对应词出现的次数)对形式的中间结果,存储到本地内存,并定期写入磁盘并进行分区交互给Reduce阶段。
- Reduce阶段:拿到Map阶段的数据后进行排序,key相同的键值对进行规约累加,计算结果存储到规定位置进行输出。完成所有操作给用户反馈
举例:
流式大数据处理
- 数据特点:动态数据;数据在计算过程中,不断更新,无法预先把数据保存
- 场景:在线计算,对实时性要求高
- 代表技术:storm
大规模图处理
- 数据特点:比较重要,普遍存在生活中的数据,如交通网,社交网数据
- 代表技术:pregel