OpenSharing を使用して共有されたデータにアクセスする (受信者向け)
このページでは、OpenSharingを使用して共有されているデータにアクセスする方法について説明しています。OpenSharing は 2 つのモデルをサポートしています。Unity Catalog を使用する Databricks ワークスペース ユーザー向けの Databricks-to-Databricks 共有と、あらゆるツールを使用するあらゆる受信者向けの Databricks-to-Open 共有です。
OpenSharing およびデータ受信者
OpenSharing は、安全なデータ共有のためのオープン標準です。 この文脈では *データプロバイダー* と呼ばれる Databricks ユーザーは、Databricks の OpenSharing を使用して、*データ受信者* と呼ばれる組織外の個人またはグループとデータを共有できます。
Databricks-to-Databricks sharing and Databricks-to-Open sharing
データへのアクセス方法は、ご自身が Databricks ユーザーであるかどうか、およびデータ プロバイダーが共有されるデータを Databricks-to-Databricks 共有または オープン共有 のどちら用に構成したかによって異なります。
Databricks-to-Databricks モデルでは 、 Unity Catalog が有効になっている Databricks ワークスペースのユーザーである必要があります。チームのメンバーがデータ プロバイダーにUnity Catalogメタストアの一意の識別子を提供すると、データ プロバイダーはそれを使用して安全な共有接続を作成します。共有データはワークスペースでアクセスできるようになります。必要に応じて、チームのメンバーがそのデータに対してきめ細かなアクセス制御を構成します。
Databricks からのオープン共有モデル では、共有データにアクセスするために、(Databricks を含む) お好きなツールを使用できます。データプロバイダーから安全なチャンネル経由でアクティベーションURLまたはポータルリンクが送信されます。それに従い、認証情報ファイルまたはURLをダウンロードすると、共有データにアクセスできます。
共有データはDatabricksによって直接提供されるものではなく、Databricks上で実行されているデータプロバイダーによって提供されます。
Databricks は、データ受信者による共有データの使用状況およびアクセス状況に関する情報(かかる情報に関連して認証情報ファイルを使用してデータにアクセスする個人または企業を特定することを含む)を収集し、該当するデータプロバイダーと共有する場合があります。
共有されているデータにアクセスする。
データへのアクセス方法は、データ プロバイダーが Databricks-to-Open 共有プロトコルと Databricks-to-Databricks 共有プロトコルのどちらを使用してデータを共有したかによって異なります。Databricks-to-Databricks sharingおよびDatabricksからオープン共有を参照してください。
Databricks-to-Databricksモデルでアクセスを取得する
Databricks間共有モデルの場合:
-
データプロバイダーから、Databricksワークスペースに関連付けられているUnity Catalogメタストアの一意の識別子を見つけるための指示が送られてきます。そして、その識別子をデータプロバイダーに送信します。
共有識別子は、メタストアのクラウド、リージョン、UUID(メタストアの一意の識別子)で構成される文字列で、形式は
<cloud>:<region>:<uuid>です。たとえば、aws:eu-west-1:b0c978c8-3e68-4cdf-94af-d05c120ed1ef。カタログエクスプローラ を使用して共有識別子を取得するには:
-
Databricks ワークスペースで、
カタログ をクリックします。
-
カタログ ウィンドウの上部にある
歯車アイコンをクリックし、 OpenSharing を選択します。
または、右上隅の Share > OpenSharing をクリックします。
-
「 自分と共有 」タブで、右上の Databricks 共有組織名を選択し、「 共有識別子をコピー 」を選択します。
ノートブックまたはDatabricks SQLクエリを使用して共有識別子を取得するには、デフォルトのSQL関数
CURRENT_METASTOREを使用します。ノートブックを使用する場合、共有データにアクセスするために使用するワークスペースの標準または専用アクセスモードで実行する必要があります。SQLSELECT CURRENT_METASTORE(); -
-
データプロバイダーが作成するもの:
- お客様と、お客様の組織内でデータにアクセスするユーザーを表す、Databricksアカウント内の**受信者**。
- 共有とは、お客様と共有するテーブル、ボリューム、ビューを表すものです。
-
共有されているデータにアクセスします。お客様またはチームのメンバーは、必要に応じて、そのデータに対してきめ細かなデータアクセスを構成できます。「Databricks-to-Databricks OpenSharing を使用して共有されたデータを読み取る (受信者向け)」を参照してください。
Databricksとオープン共有モデルでアクセスする
Databricksとオープン共有モデルの場合:
-
データプロバイダーが作成するもの:
- お客様と、お客様の組織内でデータにアクセスするユーザーを表す、Databricksアカウント内の**受信者**。
- 共有 とは、あなたと共有されるテーブルとパーティションを表すものです。
-
データプロバイダーは、アクティベーションURL(セキュアなチャンネル経由)またはポータルURLのいずれかを送信します。それに従って、資格情報ファイル、または共有データにアクセスできるURLをダウンロードします。
Bearer トークンと OAuth クライアント資格情報の両方がサポートされています。
アクティベーションリンクを誰にも共有しないでください。資格情報ファイルは1度のみダウンロードできます。 資格情報ファイルが既にダウンロードされている状態で、再度アクティベーションリンクにアクセスすると、**[Download Credential File]** ボタンは無効になります。
使用する前にアクティベーションリンクを紛失した場合は、データプロバイダーに連絡してください。 3. 認証情報ファイルを安全な場所に保管してください。
共有データへのアクセス権を持つべきユーザーグループ以外の人には、認証情報ファイルを共有しないでください。組織内の誰かと共有する必要がある場合は、Databricksはパスワードマネージャーの使用をお勧めします。
共有データを読み取ります。
OpenSharing を使用して安全に共有されたデータを読み取る方法は、資格情報ファイルを受け取ったか (Databricksとオープン共有モデル)、Databricks ワークスペースを使用していて、データ プロバイダーに共有識別子を提供したか (Databricks-to-Databricks モデル) によって異なります。
共有の読み取り時にデータ資産が存在しないというエラーが表示された場合は、データ資産「存在しません」エラーを参照してください。
資格情報ファイルを使用して共有データを読み取る(Databricks-to-Open sharing)
ベアラートークンを使用したOpenSharing Databricks-to-Open共有プロトコルでデータが共有されている場合は、ダウンロードした資格情報ファイルを使用してデータプロバイダーのアカウントに認証し、共有データを読み取ります。基になるトークンが有効であり、プロバイダーがデータの共有を継続する限り、アクセスは継続されます。プロバイダーはトークンの有効期限とローテーションを管理します。トークンは作成後、最大1年間有効です。データの更新は、ほぼリアルタイムで利用可能です。共有データを読み込み、そのコピーを作成できますが、ソースデータは変更できません。
Databricks、Apache Spark、pandas、Power BI で資格情報ファイルを使用して共有データにアクセスして読み取る方法を学習するには、OpenSharing Databricks-to-Open Sharing とベアラー トークンを使用して共有されたデータの読み取りを参照してください。
Databricks とオープン共有間の OIDC フェデレーションを使用して共有データを読み取る
OpenSharing Databricks-to-Open共有プロトコルとOIDCフェデレーションを使用してデータが共有されている場合、送信されたURLを使用して、データプロバイダーのアカウントに認証し、共有データを読み取ります。プロバイダーがデータの共有を継続する限り、アクセスは継続されます。データの更新は、ほぼリアルタイムで利用可能です。共有データを読み込み、そのコピーを作成できますが、ソースデータは変更できません。
Tableau および Power BI で OIDC トークンフェデレーションフローを使用して共有データにアクセスして読み取る方法については、「U2M フローで Open ID Connect (OIDC) フェデレーションを使用して共有データを読み取る」を参照してください。Python クライアントアプリで OIDC トークンフェデレーションフローを使用して共有データにアクセスして読み取る方法については、「M2M フローで Open ID Connect (OIDC) フェデレーションを使用して共有データを読み取る」を参照してください。
Databricks-to-Databricks 共有を使用して共有データを読み取る
Databricks-to-Databricks モデルを使用してデータが共有されている場合、共有データにアクセスするために認証情報ファイルは必要ありません。Databricks が安全な接続を処理し、共有データは Databricks ワークスペースで自動的に検出可能になります。
Databricksワークスペースでその共有データを検索、読み取り、管理する方法を学ぶには、「Databricks-to-Databricks OpenSharing を使用して共有されたデータを読み取る (受信者向け)」を参照してください。
共有データの使用状況を監査する
Databricks ワークスペースにアクセスできる場合、Databricks 監査ログを使用して、組織内の誰が OpenSharing を使ってどのデータにアクセスしているかを把握できます。「データ共有の監査と監視」を参照してください。