select работает только с определенной временной таблицей - PullRequest
0 голосов
/ 30 января 2019

У меня есть код ниже, где я пытаюсь создать 3 временные таблицы, а затем выполнить оператор выбора для временной таблицы.Я запускаю код в записной книжке Zeppelin.Код работает, если я запускаю оператор select в таблице order_temp, но возвращает ошибку, аналогичную ошибке ниже, если я запускаю оператор select в любой из двух других временных таблиц.Я дважды проверил, и кадры данных существуют и могут быть запрошены.Например, ahist_df.show () вернет записи.Кто-нибудь видит, в чем проблема?Я новичок в pyspark sql.

код:

ahist_df.registerTempTable("ahist_temp")

order_df.registerTempTable("order_temp")

pview_df.registerTempTable("pview_temp")




hive_context.sql("select * from ahist_temp").show()

ошибка:

Traceback (most recent call last):
  File "/tmp/zeppelin_pyspark-5310843562876721701.py", line 367, in <module>
    raise Exception(traceback.format_exc())
Exception: Traceback (most recent call last):
  File "/tmp/zeppelin_pyspark-5310843562876721701.py", line 360, in <module>
    exec(code, _zcUserQueryNameSpace)
  File "<stdin>", line 4, in <module>
  File "/usr/hdp/current/spark-client/python/pyspark/sql/context.py", line 580, in sql
    return DataFrame(self._ssql_ctx.sql(sqlQuery), self)
  File "/usr/hdp/current/spark-client/python/lib/py4j-0.9-src.zip/py4j/java_gateway.py", line 813, in __call__
    answer, self.gateway_client, self.target_id, self.name)
  File "/usr/hdp/current/spark-client/python/pyspark/sql/utils.py", line 51, in deco
    raise AnalysisException(s.split(': ', 1)[1], stackTrace)
AnalysisException: u'Table not found: ahist_temp; line 1 pos 14'

код:

hive_context.sql("select * from order_temp").show()
...