Delta Sharingを使用して共有されたデータにアクセスする (受信者用)

この記事では、 Delta Sharingを使用して共有されているデータにアクセスする方法について説明します。

Delta Sharing およびデータ受信者

Delta Sharing は、安全なデータ共有のためのオープン標準です。 データ プロバイダーと呼ばれる Databricks ユーザーは、 Delta Sharing を使用して、 データ受信者と呼ばれる組織外のユーザーまたはグループとデータを共有できます。

Databricks間共有とオープン共有

データへのアクセス方法は、ご自身が Databricks ユーザーであるかどうか、およびデータ プロバイダーが共有するデータを Databricks 間 共有または オープン共有用に構成したかどうかによって異なります。

Databricks間共有モデルではUnity Catalogが有効になっている Databricks ワークスペースのユーザーである必要があります。 チームのメンバーがデータ プロバイダーにUnity Catalogメタストアの一意の識別子を提供すると、データ プロバイダーはそれを使用して安全な共有接続を作成します。 共有データはワークスペースでアクセスできるようになります。 必要に応じて、チームのメンバーがそのデータに対してきめ細かなアクセス制御を構成します。

オープン共有モデルでは、任意のツール (Databricks を含む) を使用して共有データにアクセスできます。 データ プロバイダーは、セキュリティで保護されたチャネルを介してアクティブ化 URL を送信します。 それに従って、共有されているデータにアクセスできる資格情報ファイルをダウンロードします。

ご利用条件

共有データは、Databricks によって直接提供されるのではなく、Databricks で実行されているデータ プロバイダーによって提供されます。

データ受信者としてデータ プロバイダーの共有データにアクセスすることにより、データ受信者は、データ プロバイダーから提供されたデータ共有へのアクセスが許可されていることを表明し、(1) Databricks は、そのようなデータまたはデータ受信者によるそのような共有データの使用について責任を負わないこと、および (2) Databricks は、データ受信者による共有データの使用およびアクセスに関する情報 (アクセスする個人または企業の特定を含む) を収集する場合があることを認めます。そのような情報に関連して資格情報ファイルを使用するデータ)であり、該当するデータプロバイダーと共有する場合があります。

共有されているデータにアクセスする

データへのアクセス方法は、データ プロバイダーがオープン共有プロトコルと Databricks 間共有プロトコルのどちらを使用してデータを共有したかによって異なります。 Databricks間共有およびオープン共有を参照してください。

Databricks間共有モデルでアクセスする

Databricks間共有モデルの場合:

  1. データ プロバイダーから、Databricks ワークスペースに関連付けられている Unity Catalog メタストアの一意の識別子を検索するための手順が送信され、そのメタストアに送信されます。

    共有識別子は、メタストアのクラウド、リージョン、および UUID (メタストアの一意の識別子) で構成される文字列で、 <cloud>:<region>:<uuid>の形式です。 たとえば、 aws:eu-west-1:b0c978c8-3e68-4cdf-94af-d05c120ed1ef.

    カタログ エクスプローラーを使用して共有識別子を取得するには:

    1. Databricks ワークスペースで、[カタログ アイコン カタログ] をクリックします 。

    2. 左側のウィンドウで、[ Delta Sharing ] メニューを展開し、[ 自分と共有] を選択します。

    3. [プロバイダー] タブの上にある [ 共有識別子 のコピー] アイコンをクリックします。

    ノートブックまたは Databricks SQL クエリーを使用して共有識別子を取得するには、デフォルト SQL 関数 CURRENT_METASTOREを使用します。 ノートブックを使用する場合は、共有データへのアクセスに使用するワークスペース内の 共有クラスターまたはシングルユーザー クラスター で実行する必要があります。

    SELECT CURRENT_METASTORE();
    
  2. データ プロバイダーは、次のものを作成します。

    • Databricks アカウントの 受信者 は、自分と、データにアクセスする組織内のユーザーを表します。

    • 共有は、共有されるテーブル、ボリューム、およびビューを表します。

  3. あなたはあなたと共有されたデータにアクセスします。 必要に応じて、自分またはチームの誰かが、ユーザーのデータに対する詳細なデータ アクセスを構成できます。 「 Databricks 間 Delta Sharing を使用して共有されたデータの読み取り (受信者用)」を参照してください。

オープン共有モデルでアクセスする

オープン共有モデルの場合:

  1. データ プロバイダーは、次のものを作成します。

    • Databricks アカウントの 受信者 は、自分と、データにアクセスする組織内のユーザーを表します。 トークンと資格情報ファイルは、この構成の一部として生成されます。

    • 共有は、共有するテーブルとパーティションの表現です。

  2. データ プロバイダーは、セキュリティで保護されたチャネルを介してアクティブ化 URL を送信します。 それに従って、共有されているデータにアクセスできる資格情報ファイルをダウンロードします。

    重要

    アクティベーションリンクを誰とも共有しないでください。 資格情報ファイルは一度だけダウンロードできます。 資格情報ファイルが既にダウンロードされた後にアクティベーション リンクに再度アクセスすると、[ 資格情報ファイルのダウンロード] ボタンが無効になります。

    使用する前にアクティベーションリンクを紛失した場合は、データプロバイダーに連絡してください。

  3. 資格情報ファイルを安全な場所に保存します。

    共有データにアクセスする必要があるユーザーのグループ外のユーザーと資格情報ファイルを共有しないでください。 組織内の誰かと共有する必要がある場合、Databricks ではパスワード マネージャーを使用することをお勧めします。

共有データの読み取り

Delta Sharing を使用して安全に共有されたデータを読み取る方法は、資格情報ファイルを受け取ったか (オープン共有モデル)、Databricks ワークスペースを使用していて、データ プロバイダーに共有識別子を提供したか (Databricks間共有モデル) によって異なります。

資格情報ファイルを使用した共有データの読み取り (オープン共有)

Delta Sharing オープン共有プロトコルを使用してデータが共有されている場合は、ダウンロードした資格情報ファイルを使用して、データ プロバイダーの Databricks アカウントに対する認証を行い、共有データを読み取ります。 基になるトークンが有効であり、プロバイダーがデータを共有し続ける限り、アクセスは保持されます。 プロバイダーは、トークンの有効期限とローテーションを管理します。 データの更新は、ほぼリアルタイムで利用できます。 共有データの読み取りとコピーの作成はできますが、ソース データを変更することはできません。

Databricks、Apache Spark、pandas、Power BI の資格情報ファイルを使用して共有データにアクセスして読み取る方法については、「Delta Sharingオープン共有を使用して共有されたデータの読み取り (受信者用)」を参照してください。

Databricks間共有を使用した共有データの読み取り

Databricks 間モデルを使用してデータが共有されている場合、共有データにアクセスするために資格情報ファイルは必要ありません。 Databricks はセキュリティで保護された接続を処理し、共有データは Databricks ワークスペースで自動的に検出可能になります。

Databricks ワークスペースでその共有データを検索、読み取り、管理する方法については、「 Databricks 間 Delta Sharing (受信者用) を使用して共有されたデータの読み取り」を参照してください。

共有データの使用状況を監査する

Databricks ワークスペースにアクセスできる場合は、Databricks 監査ログを使用して、組織内の誰がDelta Sharing使用してどのデータにアクセスしているかを把握できます。 データ共有の監査と監視を参照してください。