大数据存储的演进:如何大规模支持实时分析

拥抱大数据的组织已准备好将数据投入使用,包括寻找有效地实时或接近实时分析各种来源的数据的方法。 能够大规模,快速地做到这一点,可以使组织*地对生命发生的情况作出反应,并进行调整,从而在机会仍然存在的情况下改善业务。

在企业大数据系统中什么时候可行和可行? 好消息是,已经出现了将数据服务技术与数据处理工具相结合的方法,使之在广泛的大规模工作负载和用例中变得可行且实用。

大数据平台需要做什么才能支持这些目标? 当我们研究在过去10年中推动数据存储发展的主要因素时,数据服务方面的一些关键要求变得清晰。 在圣何塞的Strata + Hadoop World会议上的最近一次演讲中,Ted Dunning谈到了随着领域的发展大数据存储的变化的重要性,并解释了MapR在构建融合大数据平台方面所做的工作。这种演变。

  • 兼容性和功能性:基于Unix的系统

多年来,基于Linux和Unix的系统已经提供了一种标准的兼容性兼容性方法以及可在各种分析项目中平稳运行的功能。 图1描述了这个想法。

大数据存储的演进:如何大规模支持实时分析

图1:功能和兼容性是数据存储服务的重要要求。 基于Unix的系统(包括Linux)可以有效地提供这种组合。 (基于Ted Dunning在Strata会议上的演讲,标题为“实时Hadoop:理想的消息传递系统应该为Hadoop带来什么,”已获许可使用。)

但是,由于需要使用更大规模的数据,因此需要进行更改。 Web活动和企业的增长以及对使用大量机器衍生数据的兴趣日益增长,极大地满足了对可伸缩性的需求。 输入一个好主意: 基于Apache Hadoop的分布式存储

  • 可扩展性: Hadoop带来了规模,但以失去兼容性为代价

在可负担得起的方法使可扩展性成为现实之前,大数据对于许多组织来说并不是实用资源。 满足这一需求的压力使得可以理解的是,初始解决方案将主要集中在规模上,即使这意味着损害兼容性。 Hadoop就是这样:它为以负担得起的方式处理大量数据打开了大门。

新的大数据项目的规模使其在性能和巨额费用方面都无法与传统系统兼容。 相反,Hadoop作为一种存储框架,通过使用HDFS(Hadoop分布式文件系统)在商用机器上分布文件(并使云存储也可行)。 毫无疑问,Hadoop激发了对开发用于数据处理各个方面的多样化大数据工具生态系统的兴趣。 还出现了新的数据服务,包括被称为Apache HBase的NoSQL数据库。

但是,尽管HDFS为扩展性开辟了道路,但这样做却以兼容性和功能为代价。 这种权衡如图2所示。

大数据存储的演进:如何大规模支持实时分析

图2:随着Apache Hadoop在解决可伸缩性问题方面取得长足发展,兼容性和功能遭受了损失。 (基于Ted Dunning的标题为“实时Hadoop:理想的消息传递系统应该为Hadoop带来的东西”的演示,该文档已获许可使用。)

这种缺乏兼容性的代价是,每当基于Hadoop的基于HDFS的Hadoop集群中的数据需要由非Hadoop程序处理时,就必须将数据从HDFS系统中复制出来以便进行处理,然后需要对结果进行处理。复制回去。好像Hadoop周围有一堵墙将它与其他人分开。 Hadoop使大规模收集和存储数据成为可能,但它需要“将数据扔在墙上”。

  • 大规模恢复兼容性:MapR-FS与Unix和Hadoop兼容

MapR的来龙去脉:在2011年初首次公开发布时,MapR通过恢复传统兼容性以及Hadoop的可扩展性在大数据存储选项方面取得了进步。 MapR从头开始设计为与Apache Hadoop兼容,但也与包括基于Unix的系统在内的旧代码兼容。

可扩展性与兼容性的这种结合是可能的,因为MapR不使用HDFS。 相反,他们设计了一个实时的完全读写文件系统MapR-FS,作为此Hadoop发行版的基础。 结果,恢复了对高度可扩展的分布式系统的兼容性,并提高了性能。 这些更改如图3所示。

大数据存储的演进:如何大规模支持实时分析

图3:随着Apache Hadoop的MapR发行版的开发,兼容性已恢复到高度可扩展的大数据系统。 (基于Ted Dunning的标题为“实时Hadoop:理想的消息传递系统应该为Hadoop带来的东西”的演示,并获得许可使用。)

最后阶段是通过添加其他功能,继续将这些图中的最新技术水平向上和向右移动。

MapR最初通过开发称为MapR-DB的集成NoSQL数据库向其数据平台添加了功能。 MapR-DB的原始版本与Apache HBase API兼容。 现在,通过文档样式的NoSQL数据库(使用还集成在MapR平台中的JSON API)添加了其他功能。

人们对流数据的兴趣日益浓厚,这凸显了对出色的消息传递系统的需求。 MapR通过开发MapR Streams (一种使用Apache Kafka 0.9 API的新型高性能消息传递系统)来完善其聚合数据平台。 如今,读/写文件,多模式NoSQL数据库和集成的消息传递系统已组成MapR融合数据平台。 图4中突出显示了可伸缩性,与旧系统的兼容性以及功能的结合。

大数据存储的演进:如何大规模支持实时分析

图4:功能以MapR融合数据平台的形式添加到了高度可扩展的基于Hadoop的存储中:文件,表和流都已集成到平台中。 (基于Ted Dunning的标题为“实时Hadoop:理想的消息传递系统应该为Hadoop带来的东西”的演示,并获得许可使用。)

有关使用流数据的更多信息,请阅读Ted Dunning和Ellen Friedman所著的《 流架构:使用Apache Kafka和MapR流进行新设计》 (O'Reilly,2016年3月),可从MapR免费下载。 大数据存储的演进:如何大规模支持实时分析

翻译自: https://www.javacodegeeks.com/2016/04/evolution-big-data-storage-support-real-time-analytics-scale.html