データアクセス構成
この記事では、ワークスペースの SQLウェアハウスで使用できるデータ アクセス設定について説明します。
Databricks は、 Unity Catalog ボリュームまたは外部ロケーションを使用してクラウド オブジェクト ストレージに接続することをお勧めします。 Unity Catalog は、アカウント内の複数のワークスペースにわたるデータアクセスを一元的に管理および監査するための場所を提供することで、データのセキュリティとガバナンスを簡素化します。 「Unity Catalogとは」および「外部ロケーションの使用に関する推奨事項」を参照してください。
これらの設定を変更すると、実行中のすべてのSQLウェアハウスが再起動されます。
必要条件
- これらの設定を構成するには、Databricks ワークスペース管理者である必要があります。
Google Cloud サービス アカウントを構成する
Google Cloud Storage (GCS) にアクセスするときに Google Cloud サービス アカウントを使用するようにすべてのウェアハウスを構成するには:
-
Google Cloud プラットフォームで、Google Cloud Storage 資産にアクセスするために必要な基盤となる Google Cloud プラットフォーム サービスに対する権限を持つサービス アカウントを作成します。
-
管理者設定ページに移動します。
-
「 コンピュート 」タブをクリックします。
-
SQLウェアハウス の横にある「 管理 」をクリックします。
-
[Google サービス アカウント ] フィールドに、すべての SQLウェアハウスの立ち上げに使用される ID を持つサービス アカウントの Eメール アドレスを入力します。
これらのウェアハウスで実行されるすべてのクエリは、Google Cloud プラットフォームでこのサービス アカウントに付与された権限を範囲とする、基盤となる Google Cloud プラットフォーム サービスにアクセスできます。
-
[ 保存 ]をクリックします。
SQLウェアハウスのデータ アクセス プロパティの構成
-
ワークスペースの上部バーでユーザー名をクリックし、ドロップダウンから [ 設定 ] を選択します。
-
「 コンピュート 」タブをクリックします。
-
SQLウェアハウス の横にある「 管理 」をクリックします。
-
[データ アクセス構成 ] テキスト ボックスで、メタストア プロパティを含むキーと値のペアを指定します。
シークレット値を Spark に公開せずに Spark 設定プロパティをシークレットの値に設定するには、値を {{secrets/<secret-scope>/<secret-name>}}
に設定します。 <secret-scope>
をシークレットスコープに、<secret-name>
をシークレット名に置き換えます。値は {{secrets/
and end with }}
で始まる必要があります。 この構文の詳細については、「 シークレットの管理」を参照してください。
- [ 保存 ]をクリックします。
Databricks Terraform プロバイダーと databricks_sql_global_config を使用して、データ アクセス プロパティを構成することもできます。
サポートされているプロパティ
-
*
が末尾にあるエントリの場合、その接頭辞内のすべてのプロパティがサポートされます。たとえば、
spark.sql.hive.metastore.*
はspark.sql.hive.metastore.jars
とspark.sql.hive.metastore.version
の両方がサポートされていることを示し、spark.sql.hive.metastore
で始まるその他のプロパティはサポートされています。 -
値に機密情報が含まれているプロパティの場合は、機密情報を シークレット に保存し、構文
secrets/<secret-scope>/<secret-name>
を使用してプロパティの値をシークレット名に設定できます。
SQLウェアハウスでは、次のプロパティがサポートされています。
-
spark.databricks.hive.metastore.glueCatalog.enabled
-
spark.sql.hive.metastore.*
-
spark.sql.warehouse.dir
-
spark.hadoop.datanucleus.*
-
spark.hadoop.fs.*
-
spark.hadoop.hive.*
-
spark.hadoop.javax.jdo.option.*
-
spark.hive.*
これらのプロパティの設定方法の詳細については、「 外部 Hive metastore」を参照してください。