重庆交通大学信息科学与工程学院
实验报告
班 级: 曙光1701班
姓名 学号: 和程序运行结果进行详细描述。
(1)从Linux本地磁盘或者HDFS文件系统中,读取任意一个包含了若干英文单词的文本文件,并将其载入为RDD对象,调用适宜的Spark Transformation和Action算子,完成WordCount程序,并显示运行结果;
(2)初始化List对象input_data = [3, 4, 5, 7, 9, 12],调用适宜的Spark Transformation算子,过滤掉其中小于5的元素,然后对过滤后的数据生成形式为(x, x)的元组,并调用适宜的Action算子将结果输出到Linux本地或HDFS文件系统中;
(3)初始化一个RDD对象,并赋值为range(1, 10)的集合,仅选择适宜的Action算子,完成集合中元素数据值的累加,并将结果print输出。
【实验过程】(步骤、记录、数据、程序等)
请提供相应代码或相应界面截图证明。
从Linux本地磁盘或者HDFS文件系统中,读取任意一个包含了若干英文单词的文本文件,并将其载入为RDD对象,调用适宜的Spark Transformation和Action算子,完成WordCount程序,并显示运行结果;
import findspark
()
import pyspark
from pyspark import SparkContext,SparkConf
conf =SparkConf().setAppName('spark rdd test')
sc = SparkContext(conf=conf)
text_file=("")
conuts=(lambda line:(" "))\
.map(lambda word:(word,1))\
.reduceByKey(lambda a,b:a+b)
("")
line=()
print(line)
- 8 -
初始化List对象input_data = [3, 4, 5, 7, 9, 12],调用适宜的Spark Transformation算子,过滤掉其中小于5的元素,然后对过滤后的数据生成形式为(x, x)的元组,并调用适宜的Action算子将结果输出到Linux本地或HDFS文件系统中;
input_data=[3,4,5,7,9,12]
distData=(input_data,numSlices=10)#numSlices为分块数目,根据集群数进行分块
()
#filter:过滤数据
def my_add(l):
result=False
if l>5:
result=True
return result
result1=(my_add)
print(())#返回一个分布数据集
#map:迭代,对数据集中数据进行单独操作
def my_add(l):
return (l,l)
result=(my_add)
print(())#返回一个分布数据
(3)初始化一个RDD对象,并赋值为range(1, 10)的集合,仅选择适宜的Action算子,完成集合中元素数据值的累加,并将结果print输出。
rdd=(range(1,10))
print(rdd)
print(())
rdd=(range(1,10))
result=(lambda a,b:a+b)
print(result)
- 9 -
第3题 Spark SQL程序设计实验
【实验内容】
结合课堂讲授内容,在基于Python语言的Spark SQL计算环境下,设计实现以下功能,并对代码和程序运行结果进行详细描述。
使用Python环境下的Spark SQL,读取Spark安装包自带的peopl
大数据平台技术—实验3(2019-2020) 来自淘豆网www.taodocs.com转载请标明出处.