本篇文章主要介绍如何使用独立的python程序运行pyspark。
一般,我们在测试的时候可以使用pyspark进行简单的交互,但是在线上具体使用的程序,我们需要使用一个完整的pyspark程序的。
主要参考:http://spark.apache.org/docs/1.6.0/quick-start.html
好,下面上货。
首先是完整的程序,从hdfs中读取文件并且缓存下来,同时算出包含a和包含b 的行数,并且打印出来。
代码语言:javascript复制from pyspark import SparkContext, SparkConf
def main():
logFile = "/user/root/data.txt"
master = 'yarn-client'
appName = 'Simple App spark study01'
conf = SparkConf().setAppName(appName).setMaster(master)
sc = SparkContext(conf=conf)
logData = sc.textFile(logFile).cache()
numAs = logData.filter(lambda s: 'a' in s).count()
numBs = logData.filter(lambda s: 'b' in s).count()
print("Lines with a: %i, lines with b: %i" % (numAs, numBs))
if __name__ == '__main__':
main()
运行命令:
代码语言:javascript复制spark-submit --master yarn-client sparkstudy01.py