常用的大数据处理框架有哪些?大数据框架详解

    /    2018-01-05

  大数据是当前最热门的词之一,已经渗透到了各个行业与领域,成为重要的决策手段。在当前大数据环境下,海量数据,呈爆发式增长,数据类型复杂多样,因此,对数据的处理需要更强大的技术和手段,因此,衍生出了很多大数据处理框架,其中Hadoop、Spark和Storm是比较常用的大数据框架

  一、大数据框架之Hadoop

  Hadoop是大数据批处理框架,Hadoop的处理功能来自MapReduce引擎,包含多个组件,通过配合使用可处理批数据,其处理技术复核使用键值对的map、shuffle、reduce算法要求,其基本处理过程如下:

  1. 从HDFS文件系统读取数据集;

  2. 将数据集拆分成小块并分配给所有可用节点;

  3. 针对每个节点上的数据子集进行计算(计算的中间态结果会重新写入HDFS);

  4. 重新分配中间态结果并按照键进行分组;

  5. 通过对每个节点计算的结果进行汇总和组合对每个键的值进行“Reducing”;

  6. 将计算而来的最终结果重新写入 HDFS。

  Hadoop是一套久经考验的批处理框架,适合处理对时间要求不高的非常大规模数据集,通过非常低成本的组件即可搭建完整功能的Hadoop集群,使得这一廉价且高效的处理技术可以灵活应用在很多案例中,与其他框架和引擎的兼容与集成能力使得Hadoop可以成为使用不同技术的多种工作负载处理平台的底层基础。

  二、大数据框架之Spark

  Spark是一种包含流处理能力的下一代批处理框架,与Hadoop相比,Spark主要侧重于通过完善的内存计算和处理优化机制加快批处理工作负载的运行速度。

  Spark是多样化工作负载处理任务的最佳选择。Spark批处理能力以更高内存占用为代价提供了无与伦比的速度优势。对于重视吞吐率而非延迟的工作负载,则比较适合使用Spark Streaming作为流处理解决方案。

  三、大数据框架之Storm

  Storm是一款极低延迟的流处理框架,是近实时处理的工作负载的最佳选择,该技术可处理非常大量的数据,比其他方案更加快捷!

  对于延迟需求很高的纯粹的流处理工作负载,Storm可能是最适合的技术。该技术可以保证每条消息都被处理,可配合多种编程语言使用。由于Storm无法进行批处理,如果需要这些能力可能还需要使用其他软件。如果对严格的一次处理保证有比较高的要求,就需要选择其他的大数据框架!

  以上是常用的大数据框架,可以根据数据处理的侧重点选择合适的框架,才可以取得想要的数据处理结果!

(30)

分享至