当前位置:   article > 正文

spark的使用_sc = sparkcontext

sc = sparkcontext

一、基础概念:
RDD对象:
spark的核心对象,
文件等加载均转化为RDD对象(SparkContext.textFile(input_file) )
RDD对象属性、方法:
map、reduce、flatmap、reducebykey
二、使用
1.声明:
from pyspark import SparkContext, SparkConf #pyspark ,python-spark支持

appName = “程序名” #也可以用于web上监控
master = “spark://服务器名:端口” #服务器名可以使用ip
conf = SparkConf().setAppName(appName).setMaster(master)
sc = SparkContext(conf=conf)

说明:
val sc = new SparkContext(master, appName, [sparkHome], [jars])
参数master指明集群的地址,是字符串,master可以是”local”–在本地单机运行,也可以是Spark或者Mesos集群的URL。
参数appName是Spark应用的名称,会在集群的web界面里显示出来。
参数sparkHome是spark的安装目录,注意,集群内所有节点的Spark必须安装在同样的目录下。
参数jars是打包后的Spark应用,是本地目录,这些Jar包会被复制发送到集群内的所有节点执行。

2.文件加载及处理:
a.处理:
“”“odflow.py”“”
from pyspark import SparkContext

fileDir = “/TripChain3_Demo.txt”

sc = SparkContext(“local”, “ODFlow”)

sc = SparkContext(“spark://ITS-Hadoop10:7077”, “ODFlow”)
lines = sc.textFile(fileDir)

python不能直接写多行的lambda表达式,所以要封装在函数中

def toKV(line):
arr = line.split(“,”)
t = arr[5].split(” “)[1].split(“:”)
return (t[0]+t[1]+”,”+arr[11]+”,”+arr[18],1)

r1 = lines.map( lambda line : toKV(line) ).reduceByKey(lambda a,b: a+b)

排序并且存入一个(repartition)文件中

r1.sortByKey(False).saveAsTextFile(“/pythontest/output”)

b.发布
spark-submit \
–master spark://ITS-Hadoop10:7077 \
odflow.py

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/816409
推荐阅读
相关标签
  

闽ICP备14008679号