比较Hadoop、Spark和Kafka大数据框架

日期: 2021-12-13 作者:Daniel Robinson翻译:邹铮 来源:TechTarget中国 英文

大约十年前,大数据开始流行。随着存储成本不断下降,很多企业开始存储他们获取或生成的大部分数据,以便他们可以挖掘这些数据,以获得关键的业务洞察力。

企业分析所有这些数据的需求推动着各种大数据框架的开发,这些框架能够筛选大量数据,从Hadoop开始。大数据框架最初用于数据仓库或数据湖中的静态数据,但最近的趋势是实时处理来自多个源的数据。

什么是大数据框架?

大数据框架是一组软件组件,可用于构建分布式系统以处理大型数据集,包括结构化、半结构化或非结构化数据。这些数据集可以来自多个来源,大小从TB到PB到EB不等。

此类框架通常在高性能计算 (HPC) 中发挥作用,该技术可以解决材料科学、工程或金融建模等不同领域的难题。寻找这些问题的答案通常在于筛选尽可能多的相关数据。

最著名的大数据框架是Apache Hadoop。其他大数据框架包括Spark、Kafka、Storm和Flink,它们与Hadoop一样都是由Apache软件基金会开发的开源项目。Apache Hive最初由Facebook开发,也是一个大数据框架。

Spark相对于Hadoop的优势是什么?

Apache Hadoop的主要组件是Hadoop分布式文件系统 (HDFS) 和数据处理引擎–部署 MapReduce程序以过滤和排序数据。还包括YARN,它是Hadoop集群的资源管理器。

Apache Spark也可以在HDFS或替代的分布式文件系统上运行。它的开发速度比MapReduce更快,通过在内存中处理和保留数据以供后续步骤使用,而不是将结果直接写回存储。对于较小的工作负载,这会使Spark比Hadoop快100倍。

但是,Hadoop MapReduce可以处理比Spark大得多的数据集,尤其是那些整个数据集的大小超过可用内存的数据集。如果企业拥有大量数据并且处理对时间不敏感,那么Hadoop可能是更好的选择。

Spark更适合企业需要快速答案的应用程序,例如涉及迭代或图形处理的应用程序。这种技术也称为网络分析,该技术分析客户和产品等实体之间的关系。

HadoopKafka的区别是什么?

Apache Kafka是分布式事件流平台,旨在处理实时数据源。这意味着数据在通过系统时被处理。

与Hadoop一样,Kafka在服务器节点集群上运行,因此具有可扩展性。有些服务器节点形成存储层,称为代理,而另一些则处理数据流的连续导入和导出。

严格来说,Kafka不是Hadoop的竞争对手平台。企业可以将它与Hadoop一起用作整体应用程序架构的一部分,在该架构中,它处理传入的数据流并将其输入到数据湖中,以供Hadoop等框架进行处理。

由于其每秒可处理数千条消息,Kafka对于网站活动跟踪或大规模物联网部署中的遥测数据收集等应用非常有用。

KafkaSpark的区别是什么?

Apache Spark是一种通用处理引擎,开发用于执行批处理(类似于MapReduce)和工作负载,例如流、交互式查询和机器学习 (ML)。

Kafka的架构是分布式消息传递系统架构,将记录流存储在称为主题的类别中。它不是用于大规模分析作业,而是用于高效的流处理。它旨在集成到应用程序的业务逻辑中,而不是用于批量分析作业。

Kafka最初是在社交网络LinkedIn上开发,用于分析其数百万用户之间的联系。也许最好将其视为能够从众多来源实时捕获数据,并将其分类为要分析的主题以深入了解数据的框架。

这种分析可能会使用Spark等工具执行,Spark是一种集群计算框架,可以执行用Java、Python或Scala等语言开发的代码。Spark还包含Spark SQL,它支持查询结构化和半结构化数据;以及Spark MLlib,用于构建和操作ML管道的机器学习库。

其他大数据框架

以下是其他你可能感兴趣的大数据框架。

Apache Hive使SQL开发人员使用Hive查询语言 (HQL) 语句,类似于用于数据查询和分析的标准SQL。Hive可以在HDFS上运行,最适合数据仓库任务,例如提取、转换和加载 (ETL)、报告和数据分析。

Apache Flink将有状态的流处理与处理ETL和批处理作业的能力相结合。这使其非常适合事件驱动的工作负载,例如网站上的用户交互或在线采购订单。与Hive一样,Flink可以运行在HDFS或其他数据存储层上。

Apache Storm是分布式实时处理框架,可以与带有MapReduce的Hadoop进行比较,不同之处在于它实时处理事件数据,而MapReduce以离散批次运行。Storm是为可扩展性和高级别容错而设计。它对于需要快速响应的应用程序也很有用,例如检测安全漏洞。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

翻译

邹铮
邹铮

相关推荐

  • Java、JDBC和Postgres

    现在越来越多的企业开始部署PostgreSQL,为什么呢?当你看到这个许可开源数据库所提供的功能,你就不会对此 […]

  • 5个元数据管理最佳实践

    在数据驱动的环境中,元数据不仅仅是数据的副产品;还是综合数据治理战略的关键组成部分。企业需要适当的元数据管理, […]

  • Cockroach Labs增加矢量搜索,更新定价选项

    Cockroach Labs 近日推出矢量搜索功能,旨在使客户能够访问和操作非结构化数据,以训练生成式人工智能 […]

  • 如何使用数据治理成熟度模型

    如果没有强大的数据治理,数据就无法产生有价值的见解以及改善决策。数据治理成熟度模型可帮助企业评估当前的成就水平 […]