この記事では、Azure HDInsight クラスターで Interactive Query コンポーネントを使用するときのトラブルシューティングの手順と問題の可能な解決策について説明します。
問題
テーブルを作成しようとすると、次のエラーが表示される。
java.sql.SQLException: Error while compiling statement: FAILED: HiveAccessControlException Permission denied: user [hdiuser] does not have [ALL] privilege on [wasbs://data@xxxxx.blob.core.windows.net/path/table]
次の HDFS ストレージ コマンドを実行すると、同様のエラー メッセージが表示される。
hdfs dfs -mkdir wasbs://data@xxxxx.blob.core.windows.net/path/table
原因
Apache Hive でテーブルを作成する能力は、クラスターのストレージ アカウントに適用されるアクセス許可によって決定されます。 クラスター ストレージ アカウントのアクセス許可が正しくない場合、テーブルは作成できません。 このエラーは、テーブル作成に関する適切な Ranger ポリシーがある一方で、"アクセス許可が拒否されました" というエラーが表示される可能性があることを示します。
解像度
このエラーの原因は、使用するストレージ コンテナーのアクセス許可が不十分であることです。 Hive テーブルを作成するユーザーには、コンテナーに対する読み取り、書き込み、および実行のアクセス許可が必要です。
次のステップ
問題がわからなかった場合、または問題を解決できない場合は、次のいずれかのチャネルでサポートを受けてください。
Azure コミュニティのサポートを通じて Azure エキスパートから回答を得る。
カスタマー エクスペリエンスを向上させるための Microsoft Azure の公式アカウントの @AzureSupport に連絡する。 Azure コミュニティで適切なリソース (回答、サポート、エキスパートなど) につながる。
さらにヘルプが必要な場合は、Azure portal からサポート リクエストを送信できます。 メニュー バーから [サポート] を選択するか、 [ヘルプとサポート] ハブを開いてください。 詳細については、「Azure サポート要求を作成する方法」を参照してください。 サブスクリプション管理と課金サポートへのアクセスは、Microsoft Azure サブスクリプションに含まれていますが、テクニカル サポートはいずれかの Azure のサポート プランを通して提供されます。