Я создаю внешнюю таблицу hive поверх таблицы Hbase, чтобы я мог анализировать данные с помощью Hive, но когда я запускаю скрипт для создания таблицы с использованием Hbase serde, он выдает ошибку «Таблица Hbase не существует». Пожалуйста, проверьте прикрепленное изображение ошибки. Любезное руководство.
Если ваша таблица HBase создана в конкретное пространство имен (network_tower), вы не упоминаете правильный синтаксис для доступа к таблица из определенного пространства имен в HBase.
В tblproperties включить :(двоеточие) для доступа к таблице из пространства имен HBase вместо .(период)
TBLPROPERTIES("hbase.table.name" = "network_tower:orders")
Пример HBase-Hive ddl:
CREATE EXTERNAL TABLE test(rowkey string, ...)
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:...")
TBLPROPERTIES("hbase.table.name" = "network_tower:orders");
Поскольку вы создаете внешнюю таблицу, таблица HBase уже должна существовать,
Убедитесь, что таблица существует в HBase.
bash$ hbase shell
hbase(main):> scan 'network_tower:orders',{LIMIT=>1}
Привет, Шу, большое спасибо за ответ, я обязательно попробую.