PySpark支持多种数据的输入,在输入完成后,都会得到一个:RDD类的对象RDD全称为弹性分布式数据集(Resilient Distributed Datasets),PySpark针对数据的处理,都是以RDD对象作为载体,即:
•数据存储在RDD内
•各类数据的计算方法,也都是RDD的成员方法
•RDD的数据计算方法,返回值依旧是RDD对象
PySpark的编程模型(左图)可以归纳为:准备数据到RDD -> RDD迭代计算 -> RDD导出为list、文本文件等,即:源数据 -> RDD -> 结果数据
PySpark支持通过SparkContext对象的parallelize成员方法,将list、tuple、set、dict、str转换为PySpark的RDD对象,示例代码如下:
from pyspark import SparkConf,SparkContextconf = SparkConf(.setMaster("local[*]").\\ setAppName("test_spark_app")sc = SparkContext(conf=conf)rdd=sc.para1lelize(数据容器对象)# 输出RDD的内容print(rdd.collect(0)
注意:字符串会被拆分出1个个的字符,存入RDD对象,字典仅有key会被存入RDD对象。
PySpark也支持通过SparkContext入口对象,来读取文件,来构建出RDD对象,示例代码如下:
from pyspark import SparkConf,SparkContextconf = SparkConf().setMaster("loca][*]").\\ setAppName("test_spark_app")sc = SparkContext(conf=conf)rdd=sc.textFile(文件路径)#打印RDD内容print(rdd.collect())
本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/303270.html
如有侵犯您的合法权益请发邮件951076433@qq.com联系删除