Я пытаюсь получить доступ к некоторым данным JSon использования sqlContext.jsonFile в дирижабле ...Цеппелин SqlContext registerTempTable вопрос
следующего кода выполнить без ошибок:
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.
рядом я проверить таблицу имя, которое я только что зарегистрировался
sqlCon.tableNames().foreach(println)
output :
jTable01
, но когда я пытаюсь запустить следующий я получаю сообщение об ошибке:
%sql
select * from jTable01
output :
no such table jTable01; line 1 pos 14
в то же самое время, когда я бегу учебник пример для «банк» работает .... единственное отличие Я мог понять, что в учебнике по банку мы используем sc.textFile, но в моем случае я хотел использовать sqlContext.jsonFile.
не могли бы вы предоставить какие-либо указания, как я могу исправить эту проблему?
Можете ли вы предоставить код, необходимый для использования по умолчанию sqlContext? – turkenh
импорт sys.process._ вал JFile = ** sqlContext ** jsonFile (s "Файл: ///usr/local/src/knoldus/projects/scaladay_data/scalaDays2015Amsterdam_tweets.json"). jfile.registerTempTable (» jTable01 ") ** sqlContext **. tableNames(). foreach (println) –
есть некоторая проблема с разрывами строк в моем ответе, пожалуйста, разделите строки перед ** val jfile ** и ** jfile.registerTempTable * * и ** sqlContext.tableNames ** –