scala - Zeppelin SqlContext registerTempTable 问题

标签 scala apache-spark apache-spark-sql apache-zeppelin

我正在尝试在 zeppelin 中使用 sqlContext.jsonFile 访问一些 json 数据...

以下代码执行没有任何错误:

import sys.process._
val sqlCon = new org.apache.spark.sql.SQLContext(sc)
val jfile = sqlCon.jsonFile(s"file:///usr/local/src/knoldus/projects/scaladay_data/scalaDays2015Amsterdam_tweets.json")

import sqlContext.implicits._
jfile.registerTempTable("jTable01")

output :

import sys.process._ sqlCon: org.apache.spark.sql.SQLContext = org.apache.spark.sql.SQLContext@7034473 jfile: org.apache.spark.sql.DataFrame = [id: struct, content: string, hashtags: array, score: struct, session: string, timestamp: bigint, tweetId: bigint, username: string] import sqlContext.implicits.



接下来我验证我刚刚注册的表名
sqlCon.tableNames().foreach(println)

output :

jTable01



但是当我尝试运行以下命令时,出现错误:
%sql
select * from jTable01

output :

no such table jTable01; line 1 pos 14



同时,当我为“银行”运行教程示例时,它可以工作....
我能看出的唯一区别是在银行教程中我们使用的是 sc.textFile 但就我而言,我想使用 sqlContext.json 文件。

您能否就如何解决此问题提供任何指导?

最佳答案

找到解决方案 已移除
val sqlCon = new org.apache.spark.sql.SQLContext(sc)
来自我的代码并使用 zeppelin 默认 sqlContext
它有效!!!

关于scala - Zeppelin SqlContext registerTempTable 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30819075/

相关文章:

python - 使用 Word2VecModel.transform() 在映射函数中不起作用

apache-spark - 即使使用 PySpark 存在表,如何写入 Microsoft SQL Server 表

apache-spark - HadoopPartitions 的 Spark 的默认分区是如何计算的?

mysql - 如何使用spark sql比较两个表?

具有函数式结构的 Scala 性能

scala - Spark 1.5 MlLib LDA - 获取新文档的主题分布

scala - 使用 Global.Run 编译 Scala 代码时出现 MissingRequirementError

斯卡拉 Spark : Convert Double Column to Date Time Column in dataframe

r - 相当于 sparkR 中的 na.locf

scala - 如何在 MLlib 中编写自定义 Transformer?