《Spark数据分析:基于Python语言 》 —1.2.7 Spark与Hadoop
【摘要】 本节书摘来自华章计算机《Spark数据分析:基于Python语言 》 一书中第1章,第1.2.7节,作者是[澳] 杰夫瑞·艾文(Jeffrey Aven) ,王道远 译。
1.2.7 Spark与Hadoop
如前所述,Hadoop和Spark两者是紧密关联的,它们有共同的历史,核心的并行处理概念也有共通之处,比如无共享和数据本地化。下面我们了解一下Hadoop和Spark一般是如何共同使用的。
1.以HDFS作为Spark的一种数据源
Spark可以用作Hadoop平台上的数据,也就是HDFS上数据的处理框架。Spark为读写HDFS上的多种文件格式的数据提供了内建支持,包括如下所列:
原生文本文件格式
SequenceFile格式
Parquet格式
此外,Spark还支持Avro、ORC等文件格式。用Spark从HDFS上读取一个文件非常简单,如下所示:
从Spark应用向HDFS写数据也很简单,如下所示:
2.以YARN作为Spark的一种资源调度器
YARN是Spark应用最常用的进程调度器。因为在Hadoop集群里,YARN通常和HDFS部署在一起,所以使用YARN作为平台管理Spark应用很方便。
同时,因为YARN管理着Hadoop集群里各节点的计算资源,所以它能在任何可用的地方并发调度Spark的处理任务。这样,当使用HDFS作为Spark应用的输入数据源时,YARN可以调度映射任务以充分保证数据本地化,以此在关键的初始处理阶段最大程度地减小需要跨网传输的数据量。
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)