나는 3 제플린 (0.6) 단락이 있습니다제플린 %의 SQL은 임시 테이블을 액세스 할 수 없습니다
para1 :
val hc = new org.apache.spark.sql.hive.HiveContext(sc)
val df = hc.sql("SELECT * FROM tweetsORC")
z.put("wds", df)
para2 :
import org.apache.spark.sql.DataFrame
import sqlContext.implicits._
import org.apache.spark.sql.functions._
val df = z.get("wds").asInstanceOf[DataFrame]
df.select(explode($"filtered").as("value")).groupBy("value").count().sort(desc("count")).show(20, false)
df.registerTempTable("top20")
para3 :
%sql
select * from top20
을 이 경우 다음 오류가 발생합니다.
Table not found: top20
테이블이 hivecontext의 일부이고 sql이 볼 수 없기 때문입니다. sqlcontext를 만드는 것이 문제인 비슷한 문제에 대한 해결책을 보았지만이 작업을 수행하지 않았습니다. 그럼 % SQL 단락이 임시 테이블에 액세스 할 수 있습니까? 모든 포인터 크게 감사하겠습니다. (좋은 기본 제공 그래프에 % sql을 사용하고 싶습니다.)
고맙습니다. 좀 더 설명해 주시겠습니까? 이것은 val df = hc.sql ("SELECT * FROM tweetsORC")을 val df = sqlContext.sql ("SELECT * FROM tweetsORC")로 변경할 수 있다는 것을 의미합니까? – schoon
예, 작동합니다. 감사! – schoon