ОШИБКА: AnalysisException: распределение данных должно быть указано с использованием предложения DISTRIBUTE BY

Следуя краткому руководству по куду по адресу http://kudu.apache.org/docs/quickstart.html Я столкнулся с ошибкой «ОШИБКА: AnalysisException: распределение данных должно быть указано с использованием предложения DISTRIBUTE BY». при попытке создать таблицу кудуpassage_data из таблицы impalapassage_data_raw.

[quickstart.cloudera:21000] > CREATE TABLE passenger_data
                            > TBLPROPERTIES(
                            > 'storage_handler' = 'com.cloudera.kudu.hive.KuduStorageHandler',
                            > 'kudu.table_name' = 'passenger_data',
                            > 'kudu.master_addresses' = '127.0.0.1',
                            > 'kudu.key_columns' = 'id'
                            >  ) AS SELECT * FROM passenger_data_raw;
Query: create TABLE passenger_data
TBLPROPERTIES(
'storage_handler' = 'com.cloudera.kudu.hive.KuduStorageHandler',
'kudu.table_name' = 'passenger_data',
'kudu.master_addresses' = '127.0.0.1',
'kudu.key_columns' = 'id'
 ) AS SELECT * FROM passenger_data_raw
ERROR: AnalysisException: A data distribution must be specified using a DISTRIBUTE BY clause.

Спецификация системы 1. Macbook 2011 2. ОС El-Capitan 3. ВМ CDH, загруженная для куду в соответствии с руководством по быстрому запуску. 4. куду 0.9.0 (версия 5f2bf643d8ce3d042aa3903543a92841077a6874) uuid ca7e69c27e064aac8fa64db53cad71e5

Может кто-нибудь, пожалуйста, помогите.


person Abdurrahman Adebiyi    schedule 03.07.2016    source источник


Ответы (1)


К счастью, поиск в Google привел меня к http://www.cloudera.com/documentation/betas/kudu/0-5-0/PDF/cloudera-kudu.pdf . Итак, я попытался использовать «РАСПРЕДЕЛЕНИЕ ПО ХЕШУ»... Я понятия не имею, почему я попробовал это, возможно, потому, что это было связано с ошибкой. Этот запрос работал для меня.

CREATE TABLE passenger_data
DISTRIBUTE BY HASH (id) INTO 16 BUCKETS
TBLPROPERTIES(
'storage_handler' = 'com.cloudera.kudu.hive.KuduStorageHandler',
'kudu.table_name' = 'passenger_data',
'kudu.master_addresses' = '127.0.0.1',
'kudu.key_columns' = 'id'
 ) AS SELECT * FROM passenger_data_raw;

Надеюсь, это полезно для кого-то еще.

person Abdurrahman Adebiyi    schedule 03.07.2016