本文主要介绍spark的基本操作,以shell端的操作为主,介绍通过pyspark在shell端操作时需要注意的一些点。
主要参考:http://spark.apache.org/docs/1.6.0/quick-start.html
1、首先创建文件
aa:bb:cc:dd
ee:ff:gg:hh
ii:kk:ll:mm
nn:zz
2、进入pyspark的shell命令行(对应执行的spark任务在http://cdh1:18088/)
这里需要注意的是,默认在shell环境中已经创建好了SparkContent的实例了,而且SparkContent的实例只能创建一个。
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel).
Welcome to
____ __
/ __/__ ___ _____/ /__
_ / _ / _ `/ __/ '_/
/__ / .__/_,_/_/ /_/_ version 1.6.0
/_/
Using Python version 2.7.5 (default, Nov 20 2015 02:00:19)
SparkContext available as sc, HiveContext available as sqlContext.
textFile = sc.textFile('data.txt')
这里默认对应的是当前用户在hdfs中文件的位置,例如当前用户是root,那么文件的位置就是
hdfs://user/root/data.txt
然后做一些简单的操作,例如
textFile.count()
textFile.first()
会有相应的输出,如下:
>>> textFile = sc.textFile('data.txt')
>>> textFile.count()
4
>>> textFile.first()
u'aa:bb:cc:dd'
>>> str = textFile.first()
>>> print str
aa:bb:cc:dd
>>> rdd = textFile.collect()
>>> print rdd
[u'aa:bb:cc:dd', u'ee:ff:gg:hh', u'ii:kk:ll:mm', u'nn:zz']
>>>
这样就完成了使用pyspark在shell端进行spark的程序的编写。
本文来源0day__,由javajgs_com转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处