Вычислить статистику с помощью оператора Analyze в искре - PullRequest
0 голосов
/ 27 марта 2019

Я пытаюсь вычислить статистику для таблицы Hive, используя контекст Spark SQL.

Версия Spark: 1.6.3

sqlContext.sql("ANALYZE TABLE sample PARTITION (company='aaa', market='aab',pdate='2019-01-10') COMPUTE STATISTICS FOR COLUMNS")

Я получаю приведенную ниже ошибку, но могу выполнить тот же запрос в Hive.

Ошибка:

org.apache.spark.sql.execution.QueryExecutionException: FAILED: Execution Error, return code -101 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask. Could not initialize class com.sun.jersey.core.header.MediaTypes

Когда я пытаюсь запустить как показано ниже, я сталкиваюсь с ошибкой как "Раздел не найден"

sqlContext.sql("ANALYZE TABLE sample PARTITION (company='aaa', market='aab',pdate='2019-01-10') COMPUTE STATISTICS")

Error

org.apache.spark.sql.execution.QueryExecutionException: FAILED: SemanticException [Error 10006]: Line 1:56 Partition not found ''2019-01-10''

Пожалуйста, дайте мне знать, как исправить то же самое.

Спасибо.!

1 Ответ

0 голосов
/ 27 марта 2019

Можете ли вы попробовать с приведенными ниже запросами

sqlContext.sql("ANALYZE TABLE sample COMPUTE STATISTICS FOR COLUMNS col1 [, col2, ...]")

sqlContext.sql("ANALYZE TABLE sample COMPUTE STATISTICS [NOSCAN]")

Пожалуйста, проверьте https://docs.databricks.com/spark/latest/spark-sql/language-manual/analyze-table.html для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...