Pyspark error: AttributeError: 'SparkSession' Objekt hat kein Attribut 'parallelize'

Ich benutze pyspark auf Jupyter Notebook. Hier ist wie Spark Setup:

import findspark findspark.init(spark_home='/home/edamame/spark/spark-2.0.0-bin-spark-2.0.0-bin-hadoop2.6-hive', python_path='python2.7') import pyspark from pyspark.sql import * sc = pyspark.sql.SparkSession.builder.master("yarn-client").config("spark.executor.memory", "2g").config('spark.driver.memory', '1g').config('spark.driver.cores', '4').enableHiveSupport().getOrCreate() sqlContext = SQLContext(sc) 

Dann, wenn ich tue:

  • Boost.Python benutzerdefinierte Ausnahmeklasse
  • Kompiliert.so für Boost Python kann nicht finden Modul
  • Übergeben Sie sich bei Boost :: Python
  • Wie man python-Modul aus .so-Datei importiert?
  • Boost :: python Exportieren Sie benutzerdefinierte Ausnahme
  • Übergeben der Python-Liste auf C ++ - Vektor mit Boost.python
  •  spark_df = sqlContext.createDataFrame(df_in) 

    Wo df_in ist ein pandas dataframe. Ich habe dann die folgenden Fehler:

     --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) <ipython-input-9-1db231ce21c9> in <module>() ----> 1 spark_df = sqlContext.createDataFrame(df_in) /home/edamame/spark/spark-2.0.0-bin-spark-2.0.0-bin-hadoop2.6-hive/python/pyspark/sql/context.pyc in createDataFrame(self, data, schema, samplingRatio) 297 Py4JJavaError: ... 298 """ --> 299 return self.sparkSession.createDataFrame(data, schema, samplingRatio) 300 301 @since(1.3) /home/edamame/spark/spark-2.0.0-bin-spark-2.0.0-bin-hadoop2.6-hive/python/pyspark/sql/session.pyc in createDataFrame(self, data, schema, samplingRatio) 520 rdd, schema = self._createFromRDD(data.map(prepare), schema, samplingRatio) 521 else: --> 522 rdd, schema = self._createFromLocal(map(prepare, data), schema) 523 jrdd = self._jvm.SerDeUtil.toJavaArray(rdd._to_java_object_rdd()) 524 jdf = self._jsparkSession.applySchemaToPythonRDD(jrdd.rdd(), schema.json()) /home/edamame/spark/spark-2.0.0-bin-spark-2.0.0-bin-hadoop2.6-hive/python/pyspark/sql/session.pyc in _createFromLocal(self, data, schema) 400 # convert python objects to sql data 401 data = [schema.toInternal(row) for row in data] --> 402 return self._sc.parallelize(data), schema 403 404 @since(2.0) AttributeError: 'SparkSession' object has no attribute 'parallelize' 

    Weiß jemand was ich falsch gemacht habe? Vielen Dank!

  • Python Fibonacci Generator
  • Was ist der Zweck der einzelnen Unterstrich "_" Variable in Python?
  • Underscore _ als Variablenname in Python [Duplikat]
  • So importiere ich Standardbibliothek anstelle des gleichnamigen Moduls im Modulpfad
  • Python: Wie Batch umbenennen gemischte Fall zu Kleinbuchstaben mit Unterstrichen
  • One Solution collect form web for “Pyspark error: AttributeError: 'SparkSession' Objekt hat kein Attribut 'parallelize'”

    SparkSession ist kein Ersatz für einen SparkContext sondern ein Äquivalent des SQLContext . Verwenden Sie es einfach so, wie Sie SQLContext verwendet SQLContext :

     spark.createDataFrame(...) 

    Und wenn du jemals auf SparkContext zugreifen SparkContext benutzt das sparkContext Attribut:

     spark.sparkContext 

    Wenn Sie also SQLContext für Rückwärtskompatibilität benötigen, können Sie:

     SQLContext(sparkContext=spark.sparkContext, sparkSession=spark) 
    Python ist die beste Programmiersprache der Welt.