1. 批处理计算
批处理计算主要解决针对大规模数据的批量处理,也是我们日常数据分析工作中非常常见的一类数据处理需求。
MapReduce是最具有代表性和影响力的大数据批处理技术,可以并行执行大规模数据处理任务,用于大规模数据集(大于1 TB)的并行运算。
MapReduce极大地方便了分布式编程工作,它将复杂的、运行于大规模集群上的并行计算过程高度地抽象到了
两个函数——Map和Reduce上,编程人员在不会分布式并行编程的情况下,也可以很容易地将自己的程序运行在分布式系统上,
完成海量数据集的计算。
Spark是一个针对超大数据集合的低延迟的集群分布式计算系统,比MapReduce快许多。
Spark启用了内存分布数据集,除了能够提供交互式查询外,还可以优化迭代工作负载。
在MapReduce中,数据流从一个稳定的来源进行一系列加工处理后,流出到一个稳定的文件系统(如HDFS)。
而对于Spark而言,则使用内存替代HDFS或本地磁盘来存储中间结果,因此Spark要比MapReduce的速度快许多。
2. 流计算
流数据也是大数据分析中的重要数据类型。
流数据(或数据流)是指在时间分布和数量上无限的一系列动态数据集合体,数据的价值随着时间的流逝而降低,因此必须采用实时计算的方式给出秒级响应。
流计算可以实时处理来自不同数据源的、连续到达的流数据,经过实时分析处理,给出有价值的分析结果。
目前业内已涌现出许多的流计算框架与平台,
第一类是商业级的流计算平台,包括IBM InfoSphere Streams和IBM StreamBase等;

本文深入探讨大数据计算模式,包括批处理计算中的MapReduce和Spark,流计算的实时响应特性及其框架,图计算在处理大规模图数据中的应用,以及查询分析计算如何实现对超大规模数据的快速响应。涉及的技术包括MapReduce、Spark、Pregel、Giraph、GraphX、Dremel和Impala。
最低0.47元/天 解锁文章
3801

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



