Spark学习(一) pyspark基本操作
引入pySpark工作模块
- 初始化SparkContext,SparkContext初始化完毕,才能向spark集群提交任务,其中,SparkConf负责SparkContext的配置参数,RDD为SparkContext重要的数据载体。
from pyspark import SparkContext
from pyspark import SparkConf
conf=SparkConf().setAppName("firstSparkTest").setMaster("local[*]")
sc = SparkContext.getOrCreate(conf)
初始化RDD
RDD是主要的API,我们通过sparkcontext来创建和操作RDD,通常有以下几种方式,以本地为例:
- 序列数据(比如python中的list): 通过sc.parallelize去初始化一个RDD;
rdd = sc.parallelize([1,2,3,4,5])
rdd
- 通过把文本读入进RDD来创建RDD: 通过sc.textFile去初始化一个RDD;
#D:\spark\spark-2.2.0-bin-hadoop2.7\README.MD为文件的存储路径
rdd=sc.textFile("'file:\\\\\\D:\spark\spark-2.2.0-bin-hadoop2.7\README.MD")
rdd
Out[7]:file:\\\D:\spark\spark-2.2.0-bin-hadoop2.7\README.MD MapPartitionsRDD[3] at textFile at NativeMethodAccessorImpl.java:0
#读取rdd中的第一个item
rdd.first()
Out[8]:'# Apache Spark'
- 读取整个文件夹下的所有文件来创建一个RDD: 通过sc.wholeTextFiles去初始化一个RDD,RDD中的每个item是以(文件名,文件内容)的元组形式存储;
In [14]:
rdd = sc.wholeTextFiles('file:\\\\\\D:\spark\spark-2.2.0-bin-hadoop2.7\data\graphx')
rdd.first()
Out[14]:('file:/D:/spark/spark-2.2.0-bin-hadoop2.7/data/graphx/followers.txt',
'2 1\n4 1\n1 2\n6 3\n7 3\n7 6\n6 7\n3 7\n')
- 其他RDD的初始化方法: HDFS中文件、sparkSQL、hive数据库,表等;
580

被折叠的 条评论
为什么被折叠?



