データソースと外部サービスへの接続
このページでは、 Databricks と外部データソースおよびサービス間の接続を構成する管理者およびパワー ユーザー向けの推奨事項を示します。
Databricks アカウントは、クラウドオブジェクトストレージ、リレーショナルデータベース管理システム、ストリーミングデータサービス、CRM などのエンタープライズプラットフォームなどのデータソースに接続できます。Databricks アカウントを AWS Glue や AWS Secrets Manager などの外部サービスに接続することもできます。
オブジェクトストレージへの接続の設定
Databricks ワークロードで使用されるほとんどのデータは、AWS S3 や Cloudflare R2 などのクラウドオブジェクトストレージに保存されます。クラウド・オブジェクト・ストレージへのアクセスは、以下のいずれかを使用して管理できます。
-
Unity Catalog (推奨): クラウド オブジェクト ストレージ内の構造化データと非構造化データの両方に対してデータガバナンスを提供します。 「Unity Catalog を使用してクラウド オブジェクト ストレージに接続する」を参照してください。
-
従来のコネクタと接続パターン。「レガシ パターンを使用して Databricks のクラウド オブジェクト ストレージへのアクセスを構成する」を参照してください。
外部データシステムへの接続の設定
Databricks には、外部データ システムへの接続を構成するためのオプションがいくつか用意されています。次の表に、これらのオプションの概要を示します。
オプション | 説明 |
---|---|
フェデレーション コネクタのクエリ | レイクハウスフェデレーションは、エンタープライズデータシステム内のデータへの読み取り専用アクセスを提供します。 接続は、Unity Catalog を介してカタログまたはスキーマ レベルで構成され、1 つの構成で複数のテーブルを同期します。「レイクハウスフェデレーションとは」を参照してください。 |
マネージド インジェスト コネクタ | LakeFlow Connect を使用すると、管理者ユーザーはデータ取り込み UI で接続と管理取り込みパイプラインを同時に作成できます。 LakeFlow Connectの管理対象コネクタを参照してください。 パイプラインを作成するユーザーが管理者以外のユーザーである場合、または Databricks API、 Databricks SDK、 Databricks CLI、または Databricks アセット バンドルを使用する予定の場合、管理者はまずカタログ エクスプローラーで接続を作成する必要があります。 これらのインターフェイスでは、ユーザーがパイプラインを作成するときに既存の接続を指定する必要があります。「管理された取り込みソースに接続する」を参照してください。 |
ストリーミング コネクタ | Databricksは、多くのストリーミングデータシステム用に最適化されたコネクタを提供します。 すべてのストリーミングデータソースについて、アクセスを提供する資格情報を生成し、これらの資格情報をDatabricksに読み込む必要があります。Databricksでは、すべての構成オプションとすべてのアクセスモードでシークレットを使用できるため、シークレットを使用して資格情報を格納することをお勧めします。 ストリーミング ソースのすべてのデータ コネクタでは、ストリーミング クエリを定義するときに、オプションを使用した資格情報の受け渡しがサポートされています。LakeFlow Connectの標準コネクタを参照してください。 |
サードパーティの統合 | サードパーティのツールを使用して外部データソースに接続し、レイクハウスへのデータの取り込みを自動化します。一部のソリューションには、リバースETLや外部システムからのレイクハウスデータへの直接アクセスも含まれています。「Databricks Partner Connect とは」を参照してください。 |
ドライバー | Databricks には、各 Databricks Runtime に外部データ システム用のドライバーが含まれています。 オプションで、サードパーティのドライバーをインストールして、他のシステムのデータにアクセスできます。 テーブルごとに接続を設定する必要があります。 一部のドライバーには書き込みアクセスが含まれています。 外部システムへの接続を参照してください。 読み取り専用クエリ フェデレーションの場合、これらのドライバーよりも常にレイクハウスフェデレーションが優先されます。 |
JDBC | 外部システム用のいくつかの付属ドライバは、ネイティブ JDBC サポートに基づいて構築されており、JDBC オプションは、他のシステムへの接続を設定するための拡張可能なオプションを提供します。 テーブルごとに接続を設定する必要があります。 JDBC を使用したデータベースのクエリを参照してください。 読み取り専用クエリ フェデレーションの場合、これらのドライバーよりも常にレイクハウスフェデレーションが優先されます。 |
外部サービスへの接続を構成する
Unity Catalog は、 サービス資格情報 と呼ばれるセキュリティ保護可能なオブジェクトを使用した非ストレージ サービスへのアクセスを管理します。 サービス資格情報は、ユーザーが Databricks から接続する必要がある外部サービスへのアクセスを提供する長期的なクラウド資格情報をカプセル化します。Unity Catalog を使用して外部クラウド サービスに接続するを参照してください
データソースと外部サービスへのアクセスを管理およびリクエストする
ほとんどの接続方法では、外部データソースまたはサービスと Databricks ワークスペースの両方に対する昇格された権限が必要です。 一般的な組織では、Databricks または外部のデータおよびストレージプロバイダーでデータ接続を自分で構成するための十分な権限を持つユーザーはほとんどいません。
組織では、このページからリンクされている記事で説明されているパターンのいずれかを使用して、データソースまたはサービスへのアクセスを既に構成している場合があります。 データやサードパーティサービスへのアクセスをリクエストするための明確なプロセスが組織にある場合、Databricks ではそのプロセスに従うことをお勧めします。データソースへのアクセス方法がわからない場合は、次の手順が役立つ場合があります。
- カタログエクスプローラ を使用して、アクセスできるテーブルとボリュームを表示します。 カタログエクスプローラとはを参照してください。
- チームメイトやマネージャーに、アクセスできるデータソースについて問い合わせてください。
- ほとんどの組織では、ID プロバイダーから同期されたグループ (Okta や Microsoft Entra ID など) を使用して、ワークスペース ユーザーのアクセス許可を管理しています。アクセスが必要なデータソースにチームの他のメンバーがアクセスできる場合は、ワークスペース管理者に適切なグループに追加してもらい、アクセス権を付与してもらいます。
- 特定のテーブル、ボリューム、またはデータソースがコワーカーによって設定された場合、その個人がデータへのアクセスを許可できる必要があります。
一部の組織では、特定のコンピュート クラスターと SQLウェアハウスにデータ アクセス許可をアタッチしています。 これは従来のガバナンスモデルですが、組織で使用されており、特定のコンピュートリソースで利用可能なデータソースを知りたい場合は、 コンピュート タブにリストされているコンピュートクリエーターに連絡してください。