使用 PySpark 的大数据基础
Upendra Devisetty
Science Analyst, CyVerse

弹性分布式数据集
弹性:可容错,能应对失败
分布式:跨多台机器
数据集:分区的数据集合,如数组、表、元组等
并行化现有对象集合
外部数据集:
HDFS 中的文件
Amazon S3 存储桶中的对象
文本文件中的行
基于现有 RDD 创建
parallelize() 从 Python 列表创建 RDDnumRDD = sc.parallelize([1,2,3,4])
helloRDD = sc.parallelize("Hello world")
type(helloRDD)
<class 'pyspark.rdd.PipelinedRDD'>
textFile() 从外部数据集创建 RDDfileRDD = sc.textFile("README.md")
type(fileRDD)
<class 'pyspark.rdd.PipelinedRDD'>
分区是对大型分布式数据集的逻辑划分
parallelize() 方法
numRDD = sc.parallelize(range(10), minPartitions = 6)
textFile() 方法fileRDD = sc.textFile("README.md", minPartitions = 6)
getNumPartitions() 可获取 RDD 的分区数使用 PySpark 的大数据基础