我正在使用 Zeppelin 0.5.5。我在此处为 python 找到了此代码/示例,因为我无法自己使用 %pyspark http://www.makedatauseful.com/python-spark-sql-zeppelin-tutorial/。我感觉他的 %pyspark 示例有效,因为如果您使用原始的 %spark zeppelin 教程,则“银行”表已经创建。
此代码在笔记本中。
%pyspark
from os import getcwd
# sqlContext = SQLContext(sc) # Removed with latest version I tested
zeppelinHome = getcwd()
bankText = sc.textFile(zeppelinHome+"/data/bank-full.csv")
bankSchema = StructType([StructField("age", IntegerType(), False),StructField("job", StringType(), False),StructField("marital", StringType(), False),StructField("education", StringType(), False),StructField("balance", IntegerType(), False)])
bank = bankText.map(lambda s: s.split(";")).filter(lambda s: s[0] != "\"age\"").map(lambda s:(int(s[0]), str(s[1]).replace("\"", ""), str(s[2]).replace("\"", ""), str(s[3]).replace("\"", ""), int(s[5]) ))
bankdf = sqlContext.createDataFrame(bank,bankSchema)
bankdf.registerAsTable("bank")
此代码在同一个笔记本中,但在不同的工作台上。
%sql
SELECT count(1) FROM bank
org.apache.spark.sql.AnalysisException: no such table bank; line 1 pos 21
...