Supponendo che tu abbia già "table" in Hive, esiste un modo rapido come altri database per essere in grado di ottenere l'istruzione "CREATE" per quella tabella?
Risposte:
A partire da Hive 0.10 questa patch-967 implementa SHOW CREATE TABLE
che "mostra l' CREATE TABLE
istruzione che crea una data tabella o l' CREATE VIEW
istruzione che crea una data vista."
Utilizzo:
SHOW CREATE TABLE myTable;
Passaggi per generare Crea tabella ddls per tutte le tabelle nel database Hive ed esportare in file di testo per l'esecuzione in seguito:
passaggio 1) crea un file .sh con il contenuto di seguito, ad esempio 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"
passaggio 2) Esegui lo script di shell precedente passando "nome database" come parametro
>bash hive_table_dd.sh <<databasename>>
produzione :
Tutte le istruzioni create table del tuo DB verranno scritte in HiveTableDDL.txt
Descrivi formattato / esteso mostrerà la definizione dei dati della tabella in hive
hive> describe Formatted dbname.tablename;