CIFCOM跨境电商 CIFCOM跨境电商

当前位置: 首页 » 出海百科 »

亚马逊拆分变体可以再次领v评吗

9月18日有什么互联网新闻?

回答这个问题之前,首先要搞明白spark和Hadoop各自的定义以及用途,搞明白这个之后这个问题的答案也就出来了。

首先Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎

Hadoop是一个由Apache基金会所开发的分布式系统基础架构

Spark是一个计算引擎,主要用来做数据计算用。其核心模块包括Spark Core,Spark Streaming(流式计算),MLlib(集群学习),GraphX(图计算模块)。

Hadoop主要包括HDFS(分布式存储)、MapReduce(并行计算引擎)、Yarn(资源调度)。

由此看来,Spark≈MapReduce,同时Spark相比于MapReduce有着更方便的函数处理,在计算速度,开发效率上更有着无法比拟的优势。Spark也支持外部的内存管理组件(Alluxio等),不排除未来Spark也提供分布式文件存储,目前来看没戏。其现在的发展目标主要集中在机器学习这块,已经提供了一体化的机器学习平台。这一点Flink还差点事。目前在国内更多的应用场景是Spark+Hadoop,即使用Spark来做数据计算,用Hadoop的HDFS来做分布式文件存储,用Yarn来做资源调度。

想精通excel,可以推荐这方面的书吗?

总结为以下四点,可以参考。

1、Hadoop底层使用MapReduce计算架构,只有map和reduce两种操作,表达能力比较欠缺,而且在MR过程中会重复的读写hdfs,造成大量的磁盘io读写操作,所以适合高时延环境下批处理计算的应用;

2、Spark是基于内存的分布式计算架构,提供更加丰富的数据集操作类型,主要分成转化操作和行动操作,包括map、reduce、filter、flatmap、groupbykey、reducebykey、union和join等,数据分析更加快速,所以适合低时延环境下计算的应用;

3、spark与hadoop最大的区别在于迭代式计算模型。基于mapreduce框架的Hadoop主要分为map和reduce两个阶段,两个阶段完了就结束了,所以在一个job里面能做的处理很有限;spark计算模型是基于内存的迭代式计算模型,可以分为n个阶段,根据用户编写的RDD算子和程序,在处理完一个阶段后可以继续往下处理很多个阶段,而不只是两个阶段。所以spark相较于mapreduce,计算模型更加灵活,可以提供更强大的功能。

4、但是spark也有劣势,由于spark基于内存进行计算,虽然开发容易,但是真正面对大数据的时候,在没有进行调优的轻局昂下,可能会出现各种各样的问题,比如OOM内存溢出等情况,导致spark程序可能无法运行起来,而mapreduce虽然运行缓慢,但是至少可以慢慢运行完。

未经允许不得转载: CIFCOM跨境电商 » 亚马逊拆分变体可以再次领v评吗

相关文章

themebetter

contact