Hiveを介してhbaseデータを照会しようとします(私はclouderaを使用しています)。私はhbaseを指すいくつかのHive外部テーブルを実行しましたが、問題はClouderaのImpalaがそれらすべてのテーブルにアクセスできないことです。すべてのHive外部テーブルがメタストアマネージャーに表示されますが、Impalaで単純な「テーブルの表示」を実行すると、3つのテーブルが見つからないことがわかります。特権の問題でしょうか?メタストアマネージャーでは、不足している3つのテーブルが誰でも読み取り可能であることがわかります。
Impalaで「メタデータを無効にする」というクエリを実行すると、テーブルが表示されます。
下は?オンラインヘルプの説明:一部のテーブルがありませんか? Impalaが参照するテーブル/メタデータのリストを更新するには、次のいずれかのクエリを実行します。
"invalidate metadata" invalidates the entire catalog metadata. All table metadata will be reloaded on the next access.
"invalidate metadata <table>" invalidates the metadata, load on the next access
"refresh <table>" refreshes the metadata immediately. It is a faster, incremental refresh.
INVALIDATE METADATA
impalaのコマンドは機能します それは高価であると文書化されています 、最近のバージョンでは、わずか1つのテーブルのメタデータを無効にできるようになりました。
INVALIDATE METADATA mynewtable
あるいは、HUEを使用する場合は、より安価なオプションも利用できます。これは、複数の新しいテーブルを追加した場合に便利です。