2015-06-13 28 views
7

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?

Trả lời

7

tìm thấy giải pháp loại bỏ

val sqlCon = new org.apache.spark.sql.SQLContext(sc)

từ mã của tôi và sử dụng khí cầu zeppelin mặc định sqlContext và nó hoạt động !!!

+0

Bạn có thể cung cấp mã cần thiết để sử dụng mặc định sqlContext? – turkenh

+1

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) –

+0

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 ** –

0

Trong trường hợp của tôi không có gì giải quyết nó cho đến khi tôi loại bỏ

import org.apache.spark.sql.SQLContext