For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
处理框架是大数据系统的基本的组件。处理框架负责对系统中的数据进行计算,例如处理从非易失存储中读取的数据,或处理刚刚摄入到系统中的数据。今天本文就带大家了解几个常用的大数据框架。
Apache Hadoop是一种专用于批处理的处理框架。Hadoop是首个在开源社区获得极大关注的大数据框架。吸收了谷歌有关海量数据处理所发表的多篇论文与经验的精华,Hadoop重新实现了相关算法和组件堆栈,让大规模批处理技术变得更易用。
Apache Hadoop及其MapReduce处理引擎提供了一套久经考验的批处理模型,最适合处理对时间要求不高的非常大规模数据集。与其他框架和引擎的兼容与集成能力使得Hadoop可以成为使用不同技术的多种工作负载处理平台的底层基础。
Apache Storm是一种侧重于极低延迟的流处理框架,也许是要求近实时处理的工作负载的最佳选择。这项技术可以处理非常大的量的数据,比其他解决方案能够在更低的延迟下提供结果。
Storm可能最适合处理延迟需求很高的纯粹的流处理工作负载。因为Storm可以保证每条消息都被处理,还可配合多种编程语言使用。但是Storm无法进行批处理,如果需要这些能力可能还需要使用其他软件。
大数据开发学习有一定难度,零基础入门首先要学习Java语言打基础,一般而言,Java学习SE、EE,需要约3个月的时间;然后进入大数据技术体系的学习,主要学习Hadoop、Spark、Storm等,从零基础到精通学习大数据qq群:606859705,分享大数据学习资源,有大佬指导学习,学习路线清晰。
Apache Samza是一种与Apache Kafka消息系统紧密绑定的流处理框架。按照设计,相较于Kafka,Samza可以更好地发挥Kafka独特的架构优势和保障。Samza能通过Kafka提供容错、缓冲,以及状态存储。
Samza可使用YARN作为资源管理器。这意味着默认情况下需要具备Hadoop集群(至少具备HDFS和YARN),但同时也意味着Samza可以直接使用YARN丰富的内建功能。
在已经有Hadoop和Kafka的环境,Apache Samza是流处理工作负载一个很好的选择。
Apache Spark是一种包含流处理能力的新一代批处理框架。和Hadoop的MapReduce引擎基于各种相同原则开发而来的Spark主要侧重于通过完善的内存计算和处理优化机制加快批处理工作负载的运行速度。
Spark可作为独立集群部署(需要相应存储层的配合),或可与Hadoop集成并取代MapReduce引擎。
多样化工作负载处理任务的最佳选择是Spark。Spark批处理能力以更高内存占用为代价,也提供了其他框架难以达到的速度优势。对于重视吞吐率而非延迟的工作负载, Spark Streaming更适合作为流处理解决方案。
Apache Flink是能处理批处理任务的流处理框架。这项技术能将批处理数据视作具备有限边界的数据流,然后借此将批处理任务当做流处理的子集来处理。把所有处理任务优先采取流处理,会产生一系列有趣的副作用。
Flink可提供低延迟流处理,与此同时还支持传统的批处理任务。对于有极高流处理需求,并有少量批处理任务的组织的任务,Flink也许是最适合的。
以上就是本文今天为大家分享的几款常用的大数据框架,你都了解了吗?