インジェスト用のデータ アクセスを構成する
この記事では、Databricks ユーザーが S3 から Databricks のテーブルにデータをロードできるように、管理者ユーザーが Amazon S3 (S3) のバケット内のデータへのアクセスを構成する方法について説明します。
この記事では、ソース データへの安全なアクセスを構成する次の方法について説明します。
-
(推奨)Unity Catalog ボリュームを作成します。
-
ストレージ資格情報を使用して Unity Catalog 外部ロケーションを作成します。
-
AWS インスタンスプロファイルを使用するコンピュート リソースを起動します。
-
一時的な認証情報 (AWS アクセスキー ID、シークレットキー、セッショントークン) を生成します。
始める前に
S3 でデータへのアクセスを設定する前に、次のものがあることを確認してください。
-
AWS アカウントの S3 バケット内のデータ。 バケットを作成するには、AWS ドキュメントの「 バケットの作成 」を参照してください。
-
Unity Catalog ボリューム (推奨) を使用してデータにアクセスするには、ボリュームに対する
READ VOLUME
特権が必要です。 詳細については、「Unity Catalog ボリュームとは」および「Unity Catalog特権とセキュリティ保護可能なオブジェクト」を参照してください。 -
Unity Catalog外部ロケーションを使用してデータにアクセスするには、外部ロケーションに対する
READ FILES
権限が必要です。詳細については、「クラウド ストレージを Databricksに接続するための外部ロケーションを作成する」を参照してください。 -
AWS インスタンスプロファイルを持つコンピュート リソースを使用してデータにアクセスするには、ワークスペース管理者のアクセス許可Databricks。
-
Databricks SQL ウェアハウス。 SQLウェアハウスを作成するには、「SQLウェアハウスの作成」を参照してください。
-
Databricks SQL ユーザー インターフェイスに精通している。
クラウドストレージへのアクセスを構成する
次のいずれかの方法を使用して、S3 へのアクセスを設定します。
-
(推奨)Unity Catalog ボリュームを作成します。 詳細については、「Unity Catalog ボリュームとは」を参照してください。
-
ストレージ認証情報を使用して Unity Catalog 外部ロケーションを設定します。 外部ロケーションの詳細については、「クラウド ストレージを Databricksに接続するための外部ロケーションを作成する」を参照してください。
-
AWS インスタンスプロファイルを使用するようにコンピュート リソースを構成します。詳細については、「サーバレス コンピュートの構成」および「インスタンスプロファイルを使用するようにウェアハウスSQL」を参照してください。
-
一時的な認証情報 (AWS アクセスキー ID、シークレットキー、セッショントークン) を生成して、他の Databricks ユーザーと共有します。 詳細については、「 インジェスト用の一時的な資格情報の生成」を参照してください。
片付ける
クラウドアカウントとDatabricksの関連リソースを保持しなくなった場合は、それらをクリーンアップできます。
AWS CLI 名前付きプロファイルの削除
Unix、Linux、macOS の場合は ~/.aws/credentials
ファイル、Windows の場合は %USERPROFILE%\.aws\credentials
ファイルで、ファイルの次の部分を削除してから、ファイルを保存します。
[<named-profile>]
aws_access_key_id = <access-key-id>
aws_secret_access_key = <secret-access-key>
IAM ユーザーを削除する
- AWS アカウント (通常は https://console.aws.amazon.com/iam) で IAM コンソールを開きます。
- サイドバーで、「 ユーザー 」をクリックします。
- ユーザーの横にあるボックスを選択し、[ 削除 ] をクリックします。
- ユーザーの名前を入力し、[ 削除 ] をクリックします。
IAM ポリシーを削除する
- AWS アカウントで IAM コンソールを開きます (まだ開いていない場合 (通常は https://console.aws.amazon.com/iam) )。
- サイドバーで、「 ポリシー」 をクリックします。
- ポリシーの横にあるオプションを選択し、[ アクション] > [削除 ] をクリックします。
- ポリシーの名前を入力し、[ 削除 ] をクリックします。
S3 バケットを削除する
- AWS アカウント (通常は https://console.aws.amazon.com/s3) で Amazon S3 コンソールを開きます。
- バケットの横にあるオプションを選択し、[ 空] をクリックします。
- 「
permanently delete
」と入力し、[ 空] をクリックします。 - サイドバーで、「 バケット 」をクリックします。
- バケットの横にあるオプションを選択し、[ 削除 ] をクリックします。
- バケットの名前を入力し、[ バケットの削除 ] をクリックします。
SQLウェアハウスを停止する
SQLウェアハウスを他のタスクに使用していない場合は、追加コストを避けるために SQLウェアハウスを停止する必要があります。
- SQL ペルソナのサイドバーで、[ SQLウェアハウス ] をクリックします。
- SQLウェアハウスの名前の横にある [ 停止] をクリックします。
- プロンプトが表示されたら、もう一度 [停止 ] をクリックします。
次のステップ
この記事の手順を完了すると、ユーザーは COPY INTO
コマンドを実行して、S3 バケットから Databricks ワークスペースにデータを読み込むことができます。
-
Unity Catalogボリュームまたは外部ロケーションを使用してデータをロードするには、COPY INTOUnity Catalogボリュームまたは外部ロケーションを使用した を使用したデータのロード を参照してください。
-
インスタンスプロファイルを持つ SQLウェアハウスを使用してデータをロードするには、AWSCOPY INTOインスタンスプロファイルを持つ を使用したデータのロード を参照してください。
-
一時的な認証情報 (AWS アクセスキー ID、シークレットキー、セッショントークン) を使用してデータをロードするには、「 一時的な認証情報を使用した COPY INTO を使用したデータのロード」を参照してください。