pyspark错误:AttributeError:' SparkSession'对象没有属性'序列化器'

时间:2017-02-21 10:17:27

标签: pyspark pyspark-sql

我正在使用spark ver 2.0.1

def f(l):
    print(l.b_appid)

sqlC=SQLContext(spark)
mrdd = sqlC.read.parquet("hdfs://localhost:54310/yogi/device/processed//data.parquet")
mrdd.forearch(f) <== this gives error

1 个答案:

答案 0 :(得分:1)

Spark 2.X - 为了使用Spark Session(又名spark),您需要创建

您可以像这样创建SparkSession

from pyspark.sql import SparkSession

spark = SparkSession \
     .builder \
     .appName("Python Spark SQL basic example") \
     .getOrCreate()   

获得SparkSession对象(spark)后,您可以像这样使用它:

mydf = spark.read.parquet("hdfs://localhost:54310/yogi/device/processed//data.parquet")
mydf.forearch(f) 

可在Spark Sessions section in spark docs

中找到更多信息
  

class pyspark.sql.SparkSession(sparkContext,jsparkSession = None)

     

使用Dataset和DataFrame编程Spark的入口点   API。 SparkSession可用于创建DataFrame,注册DataFrame   作为表,在表,缓存表和读取镶木地板上执行SQL   文件。要创建SparkSession,请使用以下构建器模式:

spark = SparkSession.builder \
    .master("local") \
    .appName("Word Count") \
    .config("spark.some.config.option", "some-value") \
    .getOrCreate()

有关课程构建者的信息可在 class Builder - Builder for SparkSession.

中找到