2017-01-07 13 views
0

私は50個のテーブルを持つハイブデータベースレコードを持っています。ハイブデータベースで空のテーブルを見つける方法

テーブルが空であるかどうかをチェックしたいと思います。

データベース名はemployeeです。

私はこれを手動で行いたくはありません。つまり、各テーブルでselect *クエリを個別に実行します。

誰もが

答えて

1

ハイブがテーブルに存在するレコード数を追跡しませんを説明することができます。クエリの実行中にのみ、特定のテーブルに属するファイルが読み込まれて処理されます。したがって、各テーブルに個別にクエリを出すことなく、各テーブルに存在するレコードの数を知る他の方法はありません。

代わりに、あなたは0Bは明らかに空になっていると

hdfs dfs -du -s -h <hive.warehouse.dir>/employee/*

表フォルダHDFS

でデータベースディレクトリのディスク使用量のコマンドを実行することができます。

ハイブは、テーブルの作成時またはhive-site.xmlhive.warehouse.dirプロパティに言及したパスで指定したHDFS LOCATIONでテーブルファイルを保存するので、これは可能です。デフォルトは/user/hive/warehouseです。

テーブルがmanagedテーブルの場合、データベースemployeeのすべてのテーブルのレコードは<hive.warehouse.dir>/employee/の下に格納されます。

+0

ありがとうございました@franklinsijoまさに私が探していたものでした – User12345

関連する問題