Как получить / сгенерировать инструкцию create для существующей таблицы hive?


предполагая, что у вас уже есть" таблица "в Hive, есть ли быстрый способ, как и другие базы данных, чтобы получить инструкцию" CREATE " для этой таблицы?

3 63

3 ответа:

по состоянию на улей 0.10 этой патч-967 осуществляет SHOW CREATE TABLE который "показывает CREATE TABLE оператор, который создает заданную таблицу, или CREATE VIEW оператор, который создает данное представление."

использование:

SHOW CREATE TABLE myTable;

шаги для создания таблицы Create ddls для всех таблиц в базе данных Hive и экспорта в текстовый файл для последующего запуска:

Шаг 1) создайте файл .sh с нижеприведенным содержимым, скажем hive_table_ddl.sh

#!/bin/bash
rm -f tableNames.txt
rm -f HiveTableDDL.txt
hive -e "use ; show tables;" > tableNames.txt  
wait
cat tableNames.txt |while read LINE
   do
   hive -e "use ;show create table $LINE" >>HiveTableDDL.txt
   echo  -e "\n" >> HiveTableDDL.txt
   done
rm -f tableNames.txt
echo "Table DDL generated"

Шаг 2) Запустите приведенный выше сценарий оболочки, передав "имя БД" как paramanter

>bash hive_table_dd.sh <<databasename>>

выход :

все инструкции create table вашей БД будут записаны в HiveTableDDL.txt

описание форматированный / расширенный покажет определение данных таблицы в hive

hive> describe Formatted dbname.tablename;