大数据学习-spark

2018-09-16  本文已影响0人  笑谈1995

spark比较于Hadoop-MapReduce

Hadoop 提供的 MapReduce 框架处理大数据的时候,却发现它存在许多天生的缺陷, 如效率低,编程模型不够灵活,只适合做离线计算等。Spark 可用来构建大型的、低延迟的大数据处理的应用程序 ,它基于内存,并且提供了更加丰富的算子使得我们可以更高效和灵活的处理大数据。

大数据计算场景
(1) 复杂的批量数据处理 ,离线计算 ,比如MR
(2)交互式查询,比如Impala、Hive
(3) 实时数据流的数据处理 ,比如storm

Spark的设计遵循“一个软件栈满足不同应用场景”的理念,逐渐形成了一套完整的生态系统,既能够提供内存计算框架spark core,也可以支持SQL即席查询spark sql、实时流式计算spark stream、机器学习和图计算等。因此,Spark所提供的生态系统足以应对上述三种场景,即同时支持批处理、交互式查询和流数据处理。
另外,spark专注数据处理过程,处理数据来源不仅可以是hdfs,也可以是其它支持hadoop接口的系统,比如本地文件,hive、hbase等。Spark生态系统可以很好地实现与Hadoop生态系统的兼容,使得现有Hadoop应用程序可以非常容易地迁移到Spark系统中。

spark 运行框架

Spark运行架构包括

spark安装

基于已有的hadoop安装

请下载Pre-build with user-provided Hadoop [can use with most Hadoop distributions 版本

spark local模式

读写本地磁盘 :spark项目不必要求hdfs环境

spark yarn 模式

yarn -cluster 模式
driver --> RM (Master节点)--> AM(Slave节点)--> AM与RM交互,在另外的slave节点生成task
image.png
yarn -cleint 模式
driver --> RM (Master节点)--> AM(Master节点)--> AM与RM交互,在另外的slave节点生成task
image.png
上一篇下一篇

猜你喜欢

热点阅读