Как создать таблицу кустов и добавить разделы, когда данные хранятся в AWS S3 - PullRequest
0 голосов
/ 09 января 2019

Мои данные о паркете хранятся в AWS S3 и я хочу получить к ним доступ с помощью таблицы кустов. Попытка создать его немного не получая результатов из таблицы.

Данные в AWS S3 хранятся как s3://bucket/some_key/year=2018/month=12/day=10 и т. Д. С соответствующими папками с датами.

Я создаю таблицу улья следующим образом:

CREATE EXTERNAL TABLE `ais_daily_data` (
         `A` BIGINT,
         `B` STRING,
         `C` STRING,
         `D` STRING

) PARTITIONED BY (
        year STRING, month STRING, day STRING
) 
ROW FORMAT SERDE 'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe' STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3://bucket/some_key' TBLPROPERTIES ( 'parquet.compress'='SNAPPY', 'CrawlerSchemaDeserializerVersion'='1.0', 'CrawlerSchemaSerializerVersion'='1.0', 'classification'='parquet')

Тогда я добавлю раздел явно как

ALTER TABLE hive_table
ADD PARTITION (year='2018', month='10', day='10')
location 's3://bucket/some_key/year=2018/month=10/day=10'

Я получаю пустые строки при запуске select * from hive_table, но select count(*) from hive_table дает ненулевое значение.

Любая помощь будет по достоинству оценена.

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