Якщо припустити, що у вас вже є "таблиця" у Hive, чи існує швидкий спосіб, як інші бази даних, отримати можливість отримати оператор "CREATE" для цієї таблиці?
Відповіді:
Починаючи з Hive 0.10, цей патч-967 реалізує SHOW CREATE TABLE
який "показує CREATE TABLE
оператор, який створює дану таблицю, або CREATE VIEW
оператор, який створює даний вигляд".
Використання:
SHOW CREATE TABLE myTable;
Кроки для створення таблиці ddls створення таблиці для всіх таблиць у базі даних Hive та експорту в текстовий файл для подальшого запуску:
Крок 1) Створіть файл .sh із вмістом нижче, скажімо hive_table_ddl.sh
#!/bin/bash
rm -f tableNames.txt
rm -f HiveTableDDL.txt
hive -e "use $1; show tables;" > tableNames.txt
wait
cat tableNames.txt |while read LINE
do
hive -e "use $1;show create table $LINE;" >>HiveTableDDL.txt
echo -e "\n" >> HiveTableDDL.txt
done
rm -f tableNames.txt
echo "Table DDL generated"
Крок 2) Запустіть вищезазначений сценарій оболонки, передавши 'db name' як парамант
>bash hive_table_dd.sh <<databasename>>
вихід:
Усі оператори створення таблиці вашої БД будуть записані в HiveTableDDL.txt
Опис Форматований / Розширений покаже визначення даних таблиці у вулику
hive> describe Formatted dbname.tablename;