Tôi cố gắng để truy cập vào một số dữ liệu json sử dụng sqlContext.jsonFile trong Zeppelin ...Zeppelin SqlContext registerTempTable vấn đề
mã sau thực thi mà không bất kỳ lỗi:
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 = [email protected] 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.
hôm sau tôi xác minh bàn tên mà tôi chỉ đăng ký
sqlCon.tableNames().foreach(println)
output :
jTable01
nhưng khi tôi cố gắng chạy sau tôi nhận được một lỗi:
%sql
select * from jTable01
output :
no such table jTable01; line 1 pos 14
cùng một lúc khi tôi chạy ví dụ hướng dẫn cho "ngân hàng" nó hoạt động .... sự khác biệt duy Tôi có thể tạo ra là trong hướng dẫn ngân hàng, chúng tôi đang sử dụng sc.textFile nhưng trong trường hợp của tôi, tôi muốn sử dụng sqlContext.jsonFile.
bạn có thể vui lòng cung cấp bất kỳ hướng dẫn nào về cách tôi có thể khắc phục sự cố này không?
Bạn có thể cung cấp mã cần thiết để sử dụng mặc định sqlContext? – turkenh
nhập sys.process._ val jfile = ** sqlContext ** .jsonFile (s "tệp: ///usr/local/src/knoldus/projects/scaladay_data/scalaDays2015Amsterdam_tweets.json") jfile.registerTempTable (" jTable01 ") ** sqlContext **. tableNames(). foreach (println) –
có một số vấn đề với ngắt dòng trong câu trả lời ở trên, vui lòng ngắt dòng trước ** val jfile ** và ** jfile.registerTempTable * * và ** sqlContext.tableNames ** –