Delta SharingによるDatabricks間でのファイルやノートブックの共有

前見た時には、Delta Sharingで共有できるのはDeltaテーブルだけだったのですが、今日になってファイルやノートブックも共有できることに気づきました(遅い)。

https://docs.databricks.com/ja/data-sharing/index.html

いずれもDatabricks間での共有ですが、クラウドやアカウントを越えて共有できるのでユースケースは結構あると思います。

# 共有の設定

共有側(プロバイダー)をワークスペースA、利用側(受信者)をワークスペースBとします。

## 共有の作成：ワークスペースAでの作業

カタログエクスプローラで共有を作成します。Delta Sharingの**自分が共有**にアクセスし、**データを共有**をクリックして新規共有を作成します。
![Screenshot 2023-12-27 at 18.32.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/1c51d2d9-5dca-0912-5b86-c3aecb8473b7.png)

**アセットを追加**をクリックします。左のペインからテーブルやボリュームを選択して保存します。
![Screenshot 2023-12-27 at 18.34.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/c21a416d-adcf-cd65-ceb7-e21791254abb.png)

これでテーブルとボリュームが共有に追加されました。
![Screenshot 2023-12-27 at 18.35.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/bcef94d3-6280-4381-6ed3-4c4a318679dc.png)

さらに右上の**アセットを管理**をクリックし、**ノートブックファイルを追加します**を選択します。
![Screenshot 2023-12-27 at 18.35.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/9b032c48-4776-f84e-b18c-0caabd3dfdd5.png)

ノートブックを選択して保存します。
![Screenshot 2023-12-27 at 18.36.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/2641f003-1174-d6f8-450f-b8520e0e2022.png)
![Screenshot 2023-12-27 at 18.36.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/227ee433-a4ec-9b2a-07a5-1f36c3ee772a.png)

## 受信者の作成：ワークスペースBでの作業

別のクラウドやアカウントにあるDatabricksと共有する際には、受信側の[共有識別子](https://docs.databricks.com/ja/data-sharing/recipient.html#get-access-in-the-databricks-to-databricks-model)が必要となります。共有識別子は`<cloud>:<region>:<uuid>`の形式となっており、以前は特定するのが面倒でしたが今では受信側のカタログエクスプローラで容易にコピーできます。

ワークスペースBのカタログエクスプローラにアクセスし、**Delta Sharing > 自分と共有**にアクセスします。画面上部に**共有識別子**のコピーボタンがあるのでこれをクリックしてコピーします。
![Screenshot 2023-12-27 at 18.40.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/e2419d62-f2ca-d95e-89d9-8bb9c291e389.png)

## 受信者の作成：ワークスペースAでの作業

提供側の**Delta Sharing > 自分が共有**にアクセスし、上で作成した共有オブジェクトにアクセスし、**受信者**タブをクリックします。**受信者を追加**をクリックします。
![Screenshot 2023-12-27 at 18.43.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/60c98e76-af9e-74ae-3eb2-d1d36910931c.png)

**+ 新規受信者を作成** をクリックします。
![Screenshot 2023-12-27 at 18.43.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/e9bd93e8-98a7-8d25-1f75-4c4f9b004b3d.png)

受信者名を入力し、上でコピーした共有識別子を貼り付けて、**受信者を作成および追加**をクリックします。
![Screenshot 2023-12-27 at 18.44.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/a2ea7e0c-d943-b9b9-aefc-6d2752b2bd4c.png)

**追加**をクリックします。
![Screenshot 2023-12-27 at 18.46.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/0caa8dee-4800-bc1b-7d1b-6a45ddbee653.png)

これで提供者側の作業は完了です。
![Screenshot 2023-12-27 at 18.46.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/e1859d29-6ea4-7767-4298-027dbe673843.png)

# 受信者側の作業

以降はワークスペースBでの作業となります。

## ファイル(ボリューム)へのアクセス

ワークスペースBのカタログエクスプローラにアクセスし、**Delta Sharing > 自分と共有**にアクセスします。プロバイダーに提供者一覧が表示されます。提供者名は提供側に確認してください。
![Screenshot 2023-12-27 at 18.50.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/7a90f612-e3ba-0579-3f13-69e98733717d.png)

提供側の共有が表示されます。カタログを作成をクリックします。
![Screenshot 2023-12-27 at 18.51.56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/c01f3663-54f1-9d74-d2a0-3efeee6dcd30.png)

受信者側におけるカタログ名を入力し、作成をクリックします。
![Screenshot 2023-12-27 at 18.52.19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/27f68922-e6d1-c9d1-3306-3c2bb2b538f4.png)

これで共有されたテーブルやボリュームにアクセスできるようになります。
![Screenshot 2023-12-27 at 18.53.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/41f68da6-769c-85dd-b89e-b344605007d2.png)
![Screenshot 2023-12-27 at 18.53.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/3ec94dfb-35d7-f002-d8bd-3742a33a9b36.png)

## ノートブックへのアクセス

上で作成したカタログにアクセスし、**その他のアセット**をクリックすると共有されているノートブックが表示されます。
![Screenshot 2023-12-27 at 18.55.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/c4d0d6a2-9b41-deb3-4144-eacb60322531.png)

クリックすることで内容を確認することができ、右上の**クローン作成**で任意の場所にコピーすることができます。
![Screenshot 2023-12-27 at 18.56.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1168882/aef7adfb-02ec-d097-9ca4-87910cb8bc44.png)

テーブルやファイルを共有する際には、サンプルとなるノートブックがあった方がコラボレーションが円滑になるかと思います。是非ご活用ください！

### Databricksクイックスタートガイド

[Databricksクイックスタートガイド](https://www.amazon.co.jp/dp/B09V1YXFVQ/)


### Databricks無料トライアル

[Databricks無料トライアル](https://databricks.com/jp/try-databricks)