物联网之王:Spark还是Hadoop?

本文探讨了物联网(IoT)带来的大数据挑战,以及Spark和Hadoop如何作为互补技术来应对这些挑战。Hadoop作为分布式数据基础设施,Spark则提供快速的内存计算能力,适合流数据分析和实时决策。通过结合这两者,组织可以更好地管理和利用物联网数据,成为数据的主宰。
摘要由CSDN通过智能技术生成

您的数据分析组织中的人们是否正在考虑来自物联网的即将到来的数据雪崩,从而提出以下问题:“ Spark或Hadoop?” 那是个错误的问题!

物联网(IOT)将生成大量数据。 在大多数情况下,这些将来自无处不在的传感器和设备的流数据。 通常,我们将需要根据这种数据输入海啸做出实时(或接近实时)的决策。 我们将如何有效地管理所有这些问题,有效利用它并在成为我们的主宰之前成为它的主宰?

答案已经在我们中间上升了。

1.物联会

组织已经从众多来源(Web,社交,移动,呼叫中心,客户联系人,数据库,新闻来源,网络等)收集了大量的异构数据。 数据收集的这种“伙伴关系”已经被利用(或者应该如此)以获取竞争情报和商业见解。 通过收购数据科学家和大数据科学能力,我们的数据基础架构和分析生态系统正在不断发展,以使我们能够探索和利用这种丰富的数据来源。 我们现在可以开始使用现有的数据分析资产(或建立数据分析资产),以便在IOT超越中土(我的意思是……我们的中间件环境)之前成为事物的主人。

2.两种力量

Hadoop和Spark不反对。 实际上,它们在处理IOT的大数据和快速分析要求至关重要的方式上是互补的。 特别,

Hadoop是分布式数据基础结构(用于对数据进行群集),而Spark是数据处理程序包(用于集群计算)。

集群数据– Apache Hadoop在商品服务器集群中的许多节点上分布大量数据集合,这对于当今的庞大数据集绝对至关重要,因为否则我们将需要购买和维护昂贵的定制硬件。 Hadoop索引并跟踪每块数据所处的位置,从而比以前的任何数据管理基础架构更有效地支持大数据操作(处理和分析)。 通过向集群添加更多的商用服务器,可以轻松扩展Hadoop集群。

数据上的集群计算– Apache Spark是一个快速的数据处理软件包,可对Hadoop集群上的分布式数据集合进行操作。 与传统上随Hadoop一起提供的处理工具MapReduce相比,Spark可以将数据保存在内存中并更快地执行分析。 最大的不同是:MapReduce在原子处理步骤中运行,而Spark在数据集上整体运行。 MapReduce工作流程如下所示:从集群读取数据,执行操作,将结果(更新的数据)写入集群,从集群读取更新的数据,执行下一个操作,将下一个结果写入集群,等等。如果您的数据操作和报告要求大部分是静态的,则可以等待数据处理以批处理方式执行(这是IOT工作流程的对立面)。 相反,Spark可以在内存中和近乎实时地(以交互方式,通过任意数量的其他分析师生成的查询和操作)完成完整的数据分析操作。 Spark工作流如下所示:从集群读取数据,执行所有必要的分析操作,将结果写入集群,完成!

Spark工作流非常适合流数据分析和需要多种操作的应用程序 。 这对于数据科学应用非常重要,因为大多数机器学习算法确实需要多种操作:训练模型,测试和验证模型,优化和更新模型,测试和验证,优化和更新等。类似地,Spark非常适应允许您对内存中的相同数据进行重复的即席“假设”查询,或者对流过内存的流数据执行相同的分析操作。 所有这些操作都需要快速完全访问数据。 因此,如果必须在每一步都必须从分布式数据集群中重新读取数据,那么这将非常耗时(并且对于IOT应用程序来说是完全不启动的)。 Spark跳过所有这些耗时的中间读取过程-写入-索引操作-Spark以最小的一次读取操作代价执行所有分析操作。

Spark的应用包括实时营销活动,实时广告选择和放置,在线客户产品推荐,网络安全分析,视频监控分析,机器日志监控等等(包括我们刚刚开始预期和设想的IOT应用) 。 一些实验表明,与传统的MapReduce操作相比,Spark的批处理速度可以快10倍,内存分析操作可以快100倍。

因为Hadoop是数据基础架构,而Spark是内存中多步数据处理程序包,所以两者是可分离的—一个不需要另一个。 由于Spark没有自带文件管理系统,因此需要将其与文件系统集成。 文件系统可以是HDFS(Hadoop分布式文件系统)或任何其他基于云的数据平台。 但是,由于Spark被设计为Hadoop数据层之上的快速分析层,因此将它们一起使用更加有效。 这是一个巨大的价值主张,因为Spark附带了丰富的算法集(还有更多算法正在开发中-它是Apache生态系统中目前最活跃的开源项目)。 Apache Spark带有自己的机器学习库(MLlib)以及图形处理(GraphX), SQLSpark Streaming应用程序。

最后要考虑的是故障恢复-Hadoop自然可以对系统故障或故障进行恢复,因为每次操作后数据都会写入磁盘。 幸运的是,Spark通过将其数据对象存储在弹性分布式数据集 (RDD)中,具有类似的内置弹性。 RDD分布在整个数据群集中-这些数据对象可以存储在内存或磁盘中,而RDD可以从故障或故障中完全恢复。

3.回归事物

那么,这两种力量(Hadoop和Spark)如何帮助我们成为事物的主人? 一个用于快速流式传输数据的融合数据系统(例如最近发布的MapR Streams )为我们提供了一个平台,可以对所有数据进行统治。 该平台对抗物联网的最终优势来自于两个大国的联盟。

总之,Spark通过仅启动MapReduce的方式来完成Hadoop。 Spark使用快速内存​​(RAM)来对Hadoop提供的数据进行分析操作,而MapReduce使用慢速带宽受限的网络和磁盘I / O来进行Hadoop数据操作。 MapReduce在当时是突破性的数据分析技术。 Spark是当今时代的突破性数据分析技术。

MapR融合数据平台将所有数据盟友汇聚到一支分析队伍中,以掌握和管理物联网对海量数据科学的要求。 因此,问自己一个正确的问题:如果没有Hadoop和Spark的双重力量,我是否有能力进入物联网时代?

翻译自: https://www.javacodegeeks.com/2016/01/lord-things-spark-hadoop.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值