我正在尝试将pyspark.rdd.RDD转换为数据框。我已经在Spark中完成了这个操作,但是在Zeppelin中似乎不能以同样的方式工作。
我过去通常使用以下方法将pyspark.rdd.RDD转换:
from pyspark import SparkContext, SparkConf
from pyspark.sql import SparkSession
import pandas as pd
#comment if a SparkContext has already been created
sc = SparkContext()
conf = {"es.resource" : "index/type", "es.nodes" : "ES_Serveur", "es.port" : "9200", "es.query" : "?q=*"}
rdd = sc.newAPIHadoopRDD("org.elasticsearch.hadoop.mr.EsInputFormat","org.apache.hadoop.io.NullWritable", "org.elasticsearch.hadoop.mr.LinkedMapWritable", conf=conf)
#to allow the toDF methode
spark = SparkSession(sc)
df = rdd.toDF().toPandas()
在spark submit中可以正常工作,但在Zeppelin中不行。 我想知道为什么。 我有一些错误日志,但超过1000行。如果你需要,我可以提供这些日志。 如果有人有想法... 谢谢