pyspark介绍: pyspark是一个spark工具,是用spark提供的python编写的sparkAPI库。
原理:通过将名为py4j的pythonAPI链接到sparkContext,python程序可以动态访问jvm中的java对象,java也可以动态回调python对象
模式映射:
首先,SparkContext是spark程序的入口,SparkContext使用Py4J启动JVM并创建JavaSparkContext。
由于py4J在启动sparkContext后分发到work节点,因此群集节点需要python环境才能解析python文件。
pyspark sparkContext的参数和含义:Master-您所连接的群集的URL。appName-您的工作名称。sparkHome- Spark安装目录。pyFiles-发送到群集并将其添加到PYTHONPATH的. zip或. py文件中。environment-工作节点环境变量。batchSize-表示为单个Java对象的Python对象的数量。 设置1禁用批处理,设置0根据对象大小自动选择批处理大小,设置-1使用无限批处理大小。serializer- RDD串行化器。 在http://www.Sina.com/- l { Spark conf }的对象中设置所有spark属性。Conf-使用现有网关和JVM或初始化新JVM。 33558 www.Sina.com//-javasparkcontext实例。gateway-配置式的自定义配置式。 默认值为pyspark.profiler.BasicProfiler。 在上述参数中,主要使用3358www.Sina.com/和JSC。 任何PySpark程序的前两行如下:
frompysparkimportsparkcontextsc=sparkcontext (' local ',' appName ' ) sparkConf:spark需要spark context ),但配置爸爸
profiler_cls-设置配置属性。master-设置主URL。appname-设置APP应用程序名称。set(key,value)-获取密钥的设定值。setMaster(value)-在工作节点上设置Spark安装路径。 运行方式:1.pySpark shell交互
运行python.py脚本实际上是提交的过程,使用spark-submit #参数# #file.py#
pySpark语法:实际上语法与rdd的常规语法相似
官方API文档: http://spark.Apache.org/docs/latest/API/python /