当前位置:   article > 正文

spark编程基础python版实验报告_Spark2.1.0+入门:RDD编程(Python版)

spark编程基础实验报告

通过前面几章的介绍,我们已经了解了Spark的运行架构和RDD设计与运行原理,并介绍了RDD操作的两种类型:转换操作和行动操作。

同时,我们前面通过一个简单的WordCount实例,也大概介绍了RDD的几种简单操作。现在我们介绍更多关于RDD编程的内容。

Spark中针对RDD的操作包括创建RDD、RDD转换操作和RDD行动操作。

RDD创建

RDD可以通过两种方式创建:

* 第一种:读取一个外部数据集。比如,从本地文件加载数据集,或者从HDFS文件系统、HBase、Cassandra、Amazon S3等外部数据源中加载数据集。Spark可以支持文本文件、SequenceFile文件(Hadoop提供的 SequenceFile是一个由二进制序列化过的key/value的字节流组成的文本存储文件)和其他符合Hadoop InputFormat格式的文件。

* 第二种:调用SparkContext的parallelize方法,在Driver中一个已经存在的集合(数组)上创建。

创建RDD之前的准备工作

在即将进行相关的实践操作之前,我们首先要登录Linux系统(本教程统一采用hadoop用户登录),然后,打开命令行“终端”,请按照下面的命令启动Hadoop中的HDFS组件:

cd /usr/local/hadoop

./sbin/start-dfs.sh

然后,我们按照下面命令启动pyspark:

cd /usr/local/spark

./bin/pyspark

然后,新建第二个“终端”,方法是,在前面已经建设的第一个终端窗口的左上方,点击“终端”菜单,在弹出的子菜单中选择“新建终端”,就可以打开第二个终端窗口,现在,我们切换到第二个终端窗口,在第二个终端窗口中,执行以下命令,进入之前已经创建好的“/usr/local/spark/mycode/”目录,在这个目录下新建rdd子目录,用来存放本章的代码和相关文件:

cd usr/local/spark/mycode/

mkdir rdd

然后,使用vim编辑器,在rdd目录下新建一个word.txt文件,你可以在文件里面随便输入几行英文语句用来测试。

经过上面的准备工作以后,我们就可以开始创建RDD了。

从文件系统中加载数据创建RDD

Spark采用textFile()方法来从文件系统中加载数据创建RDD,该方法把文件的URI作为参数,这个URI可以是本地文件系统的地址,或者是分布式文件系统HDFS的地址,或者是Amazon S3的地址等等。

下面请切换回pyspark窗口,看一下如何从本地文件系统中加载数据:

>>> lines = sc.textFile("file:///usr/local/spark/mycode/rdd/word.txt")

下面看一下如何从HDFS文件系统中加载数据,这个在前面的第一个Spark应用程序:WordCount实例中已经讲过,这里再简单复习一下。

请根据前面的第一个Spark应用程序:WordCount实例中的内容介绍,把刚才在本地文件系统中的“/usr/local/spark/mycode/rdd/word.txt”上传到HDFS文件系统的hadoop用户目录下(注意:本教程统一使用hadoop用户登录Linux系统)。然后,在pyspark窗口中,就可以使用下面任意一条命令完成从HDFS文件系统中加载数据:

>>> lines = sc.textFile("hdfs://localhost:9000/user/hadoop/word.txt")

>>> lines = sc.textFile("/user/hadoop/wo

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/929185
推荐阅读
相关标签
  

闽ICP备14008679号