En supposant que vous avez déjà "table" dans Hive, existe-t-il un moyen rapide, comme d’autres bases de données, d’obtenir l’instruction "CREATE" pour cette table?
À partir de Hive 0.1 this patch-967 implémente SHOW CREATE TABLE
qui "affiche l'instruction CREATE TABLE
qui crée une table donnée, ou le CREATE VIEW
déclaration qui crée une vue donnée. "
Usage:
SHOW CREATE TABLE myTable;
Procédure pour générer des ddls de création de table pour toutes les tables de la base de données Hive et les exporter dans un fichier texte à exécuter ultérieurement:
étape 1) créez un fichier .sh avec le contenu ci-dessous, dites 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"
étape 2) Exécutez le script Shell ci-dessus en transmettant 'nom de la base de données' en tant que paramètre
>bash Hive_table_dd.sh <<databasename>>
sortie:
Toutes les instructions de création de table de votre base de données seront écrites dans le fichier HiveTableDDL.txt.
Décrire formaté/étendu montrera la définition des données de la table dans Hive
Hive> describe Formatted dbname.tablename;