Предложение Apache spark WHERE не работает

Я запускаю Apache Spark 1.6.1 в небольшом кластере пряжи. Я пытаюсь извлечь данные из таблицы улья, используя такой запрос:

df = hiveCtx.sql("""
SELECT *
  FROM hive_database.gigantic_table
 WHERE loaddate = '20170502'
""")

Однако результирующий кадр данных представляет собой всю таблицу, независимо от того, какое значение я даю для loaddate. Единственное, что мне кажется странным, это то, что таблица куста разделена по этому столбцу даты загрузки.

Только Hive, по-видимому, правильно выполняет этот запрос. Я пробовал приводить к целым числам, используя .filter() и различные уровни кавычек, но не повезло со Spark.


person m_wynn    schedule 13.07.2017    source источник


Ответы (1)


Оказывается, фильтрация в столбце раздела чувствительна к регистру.

https://issues.apache.org/jira/browse/SPARK-19292

person m_wynn    schedule 13.07.2017