メインコンテンツまでスキップ

データソースと外部サービスへの接続

このページでは、 Databricks と外部データソースおよびサービス間の接続を構成する管理者およびパワー ユーザー向けの推奨事項を示します。

Databricks アカウントは、クラウドオブジェクトストレージ、リレーショナルデータベース管理システム、ストリーミングデータサービス、CRM などのエンタープライズプラットフォームなどのデータソースに接続できます。Databricks アカウントを AWS Glue や AWS Secrets Manager などの外部サービスに接続することもできます。

オブジェクトストレージへの接続の設定

Databricks ワークロードで使用されるほとんどのデータは、AWS S3 や Cloudflare R2 などのクラウドオブジェクトストレージに保存されます。クラウド・オブジェクト・ストレージへのアクセスは、以下のいずれかを使用して管理できます。

Unity Catalogとの連携

Unity Catalog接続は、外部システムにアクセスするために必要なエンドポイントと認証情報を格納する、セキュリティ保護可能なオブジェクトです。 接続機能により、フェデレーション、マネージドインジェスト、JDBC、HTTPなどの外部データシステムの認証と構成を管理するための統制された方法が提供されます。すべての接続タイプとその選択方法の概要については、 Unity Catalog接続」を参照してください。

外部データシステムへの接続の設定

Databricks には、外部データ システムへの接続を構成するためのオプションがいくつか用意されています。次の表に、これらのオプションの概要を示します。

オプション

説明

フェデレーション コネクタのクエリ

レイクハウスフェデレーションは、エンタープライズ・データ・システム内のデータへの読み取り専用アクセスを提供します。 クエリフェデレーションは 、セキュアなJDBC接続を使用して、PostgreSQLやMySQLなどの外部データシステムにフェデレーションします。カタログ フェデレーションは 、 Hive metastore、 AWS Glue、 Snowflake Horizon Catalog などの外部カタログを接続して、ファイル ストレージ内のデータを直接クエリします。

マネージド インジェスト コネクタ

Lakeflowコネクト を使用すると、管理者ユーザーはデータ取り込み UI で接続と管理取り込みパイプラインを同時に作成できます。 Lakeflowコネクトの管理対象コネクタを参照してください。

パイプラインを作成するユーザーが管理者以外のユーザーである場合、またはDatabricks APIs 、 Databricks SDK、 Databricks CLI 、または Declarative Automation Bundle を使用する予定の場合、管理者はまずカタログ エクスプローラーで接続を作成する必要があります。 これらのインターフェースでは、パイプラインを作成する際に、ユーザーが既存の接続を指定する必要があります。管理対象のデータ取り込みソースへの接続を参照してください。

ストリーミング コネクタ

Databricksは、多くのストリーミングデータシステム用に最適化されたコネクタを提供します。

すべてのストリーミングデータソースについて、アクセスを提供する資格情報を生成し、これらの資格情報をDatabricksに読み込む必要があります。Databricksでは、すべての構成オプションとすべてのアクセスモードでシークレットを使用できるため、シークレットを使用して資格情報を格納することをお勧めします。

ストリーミング ソースのすべてのデータ コネクタでは、ストリーミング クエリを定義するときに、オプションを使用した資格情報の受け渡しがサポートされています。Lakeflowコネクトの標準コネクタを参照してください。

サードパーティの統合

サードパーティのツールを使用して外部データソースに接続し、レイクハウスへのデータの取り込みを自動化します。一部のソリューションには、リバースETLや外部システムからのレイクハウスデータへの直接アクセスも含まれています。「Databricks Partner Connect とは」を参照してください。

ドライバー

Databricks には、各 Databricks Runtime に外部データ システム用のドライバーが含まれています。 オプションで、サードパーティのドライバーをインストールして、他のシステムのデータにアクセスできます。 テーブルごとに接続を設定する必要があります。 一部のドライバーには書き込みアクセスが含まれています。 外部システムへの接続を参照してください。

読み取り専用クエリ フェデレーションの場合、これらのドライバーよりも常にレイクハウスフェデレーションが優先されます。

JDBC

Unity Catalog接続を使用してJDBC経由で外部データベースに接続することで、アクセス制御、認証情報の分離、および相互運用性のサポートを実現します。 JDBC接続を参照してください。

Unity Catalog ガバナンスのない従来の JDBC 構成については、 「JDBC を使用したデータベースのクエリ」を参照してください。

読み取り専用のクエリ フェデレーションの場合は、レイクハウスフェデレーションが常に優先されます。

外部サービスへの接続を構成する

Unity Catalog は、 サービス資格情報 と呼ばれるセキュリティ保護可能なオブジェクトを使用した非ストレージ サービスへのアクセスを管理します。 サービス資格情報は、ユーザーが Databricks から接続する必要がある外部サービスへのアクセスを提供する長期的なクラウド資格情報をカプセル化します。Unity Catalog を使用して外部クラウド サービスに接続するを参照してください

データソースと外部サービスへのアクセスを管理およびリクエストする

ほとんどの接続方法では、外部データソースまたはサービスと Databricks ワークスペースの両方に対する昇格された権限が必要です。 一般的な組織では、Databricks または外部のデータおよびストレージプロバイダーでデータ接続を自分で構成するための十分な権限を持つユーザーはほとんどいません。

組織では、このページからリンクされている記事で説明されているパターンのいずれかを使用して、データソースまたはサービスへのアクセスを既に構成している場合があります。 データやサードパーティサービスへのアクセスをリクエストするための明確なプロセスが組織にある場合、Databricks ではそのプロセスに従うことをお勧めします。データソースへのアクセス方法がわからない場合は、次の手順が役立つ場合があります。

  1. カタログエクスプローラ を使用して、アクセスできるテーブルとボリュームを表示します。 カタログエクスプローラとはを参照してください。
  2. チームメイトやマネージャーに、アクセスできるデータソースについて問い合わせてください。
    • ほとんどの組織では、ID プロバイダーから同期されたグループ (Okta や Microsoft Entra ID など) を使用して、ワークスペース ユーザーのアクセス許可を管理しています。アクセスが必要なデータソースにチームの他のメンバーがアクセスできる場合は、ワークスペース管理者に適切なグループに追加してもらい、アクセス権を付与してもらいます。
    • 特定のテーブル、ボリューム、またはデータソースがコワーカーによって設定された場合、その個人がデータへのアクセスを許可できる必要があります。

一部の組織では、特定のコンピュート クラスターと SQLウェアハウスにデータ アクセス許可をアタッチしています。 これは従来のガバナンスモデルですが、組織で使用されており、特定のコンピュートリソースで利用可能なデータソースを知りたい場合は、 コンピュート タブにリストされているコンピュートクリエーターに連絡してください。