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

クリーンルームにおけるノートブックの実行

このページでは、クリーンルームでノートブックを実行する方法について説明します。ノートブックは、共同作業者が共同作業でデータ分析を実行するために使用するインターフェイスです。

ノートブックをクリーンルームに追加する方法については、「 クリーンルームを作成する」を参照してください。

要件​

クリーンルームでノートブックを管理および実行するには、次のことを行う必要があります。

タスク

要件

必要な権限

説明

ノートブックの管理

独自の要件はありません

ノートブックのアップローダーの場合: - 指定ランナーの場合は、 EXECUTE CLEAN ROOM TASK または MODIFY CLEAN ROOM の権限が必要です。 - コラボレーターが指定されたランナーである場合、アップローダーは MODIFY CLEAN ROOM 権限を持っている必要があります。

クリーンルーム内のノートブックの一般的な管理タスク。

ノートブックの実行

アップロード者を除くすべての共同作業者がノートブックを承認する必要があります。指定されたランナーがノートブックを実行します。

EXECUTE CLEAN ROOM TASK

ノートブックのランナーがアップロードしなかった場合、ノートブックを実行する前に承認する必要があります。この明示的な承認は、デフォルトの自動承認ルールを使用して自動化できます。「自動承認ルール」を参照してください。

ノートブックの承認または拒否

なし

MODIFY CLEAN ROOM

ノートブックを実行する前に承認または拒否できます。

自動承認ルールの管理

自動承認は、ランナー以外の共同作業者が作成したノートブックにのみ適用できます。

クリーンルームの所有者または MANAGE 特権。

ノートブックの自動承認を制御します。

コラボレーターの容量

クリーンルームには、最大10人の協力者を含めることができます。

なし

これには、作成者と最大 9 人の他の協力者が含まれます。

タスク

要件

必要な権限

説明

ノートブックの管理

独自の要件はありません

ノートブックのアップローダーの場合: - 指定ランナーの場合は、 EXECUTE CLEAN ROOM TASK または MODIFY CLEAN ROOM の権限が必要です。 - コラボレーターが指定されたランナーである場合、アップローダーは MODIFY CLEAN ROOM 権限を持っている必要があります。

クリーンルーム内のノートブックの一般的な管理タスク。

ノートブックの実行

アップロード者を除くすべての共同作業者がノートブックを承認する必要があります。指定されたランナーがノートブックを実行します。

EXECUTE CLEAN ROOM TASK

ノートブックのランナーがアップロードしなかった場合、ノートブックを実行する前に承認する必要があります。この明示的な承認は、デフォルトの自動承認ルールを使用して自動化できます。「自動承認ルール」を参照してください。

ノートブックの承認または拒否

なし

MODIFY CLEAN ROOM

ノートブックを実行する前に承認または拒否できます。

自動承認ルールの管理

自動承認は、ランナー以外の共同作業者が作成したノートブックにのみ適用できます。

クリーンルームの所有者または MANAGE 特権。

ノートブックの自動承認を制御します。

コラボレーターの容量

クリーンルームには、最大10人の協力者を含めることができます。

なし

これには、作成者と最大 9 人の他の協力者が含まれます。

作成者は、 Databricksアカウントでクリーンルームの所有者として自動的に割り当てられます。 コラボレーター組織のメタストア管理者には、 Databricksアカウント内のクリーンルームの所有権が自動的に割り当てられます。 所有権を譲渡できます。オブジェクトの所有権の管理を参照してください。

ノートブックのアップロードとランナーの指定​

共同作業者がクリーンルームにノートブックを追加すると、次のようになります。

  • 彼らは、クリーンルームでそのノートブックのアップロード者と見なされます。

  • ノートブックを追加する場合、アップローダーは、ノートブックの指定されたランナーであるコラボレーターを指定する必要があります。指定されたランナーは、ノートブックの実行を許可されています。

  • 指定されたランナーは 1 つだけです。

  • ノートブックの指定されたランナーとして自分自身を割り当てることができます。

    自己指定ランナー。

ステップ 3.データ資産とノートブックをクリーンルームに追加

クリーンルームでのノートブックの承認​

すべてのノートブックは、実行する前に、アップローダーを除くすべてのコラボレーターからの承認が必要です。

ノートブックのレビューステータスを確認するには:

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

  2. 「クリーンルーム >」 ボタンをクリックします。

  3. リストからクリーンルームを選択します。

  4. 実行するノートブックを選択します。

  5. 右側の [ユーザー ] アイコンをクリックして、ノートブックの詳細ページのコラボレーター セクションを展開します。

  6. [レビュー ] セクションには、ノートブックを承認した共同作業者、拒否した共同作業者、またはまだレビューしていない共同作業者の概要が表示されます。

    レビューセクション。

差分表示は、ノートブックが以前のバージョンから変更されている場合に使用できます。

ノートブックバージョンを実行する場合、次のことが当てはまります。

  • ノートブックの最新バージョンのみを実行できます。
  • 承認または拒否できるのは、ノートブックの最新バージョンのみです。
  • 新しいコンテンツを追加したり、ランナーの指定を変更したりしてノートブックを変更すると、新しいバージョンが作成され、すべてのコラボレーターのレビュー状態がリセットされます。
  • ノートブックの最大バージョンは 10 です。リソース制限を参照してください。

ノートブックの差分ビューにアクセスするには:

  1. 右側の [時計] アイコンをクリックして 、ノートブックの詳細ページのバージョン履歴を展開します。

    差分ビュー。

ノートブックを承認または拒否するには:

  1. 右上の 「レビュー 」ボタンをクリックします。

  2. ノートブックを [承認] または [拒否] を選択します。

    ノートブックを承認または拒否します。

レビューは最大 9 回まで更新でき、ノートブック バージョンごとにコラボレーターごとに最大 10 件のレビューを更新できます。ただし、レビュー制限に達した場合でも、ノートブックをいつでも拒否できます。

自動承認ルール​

コラボレーターは、自分のクリーンルームに自動承認ルールを設定できます。自動承認では、次のことが当てはまります。

  • 自動承認ルールは、他のユーザーがアップロードしたノートブックに対してのみ作成でき、自分のノートブックに対しては作成できません。自作ノートブックは、指定されたランナーである場合、あなた自身の承認は必要ありません。
  • 2人用のクリーンルームでは、他の共同作業者が作成したノートブックを自動承認できます。
  • 2人以上の共同作業者がいるクリーンルームでは、 誰でも または特定の共同作業者が作成したノートブックを自動承認できます。
  • 各自動承認ルールは、承認されたノートブックの 1 つのランナーを指定します。
  • 自動承認は、指定されたランナーである場合に別の共同作業者によってアップロードされたノートブックのデフォルトです。
  • 自動承認は、指定されたランナーが別の協力者であるクリーンルームではオプションです。
  • 自動承認はいつでも追加、更新、削除できます。
注記

パッケージクリーンルームでは自動承認ルールは利用できません。パッケージ クリーンルームをご覧ください。

自動承認を管理するには:

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

  2. 「クリーンルーム >」 ボタンをクリックします。

  3. クリーンルーム ページで、 Gearアイコンをクリックします

  4. [自動承認の構成] を選択します。

    自動承認。

  5. 一致するアクセス許可ルールに基づいてノートブックの自動承認を構成します。

    自動承認を構成します。

クリーンルームにおけるノートブックの実行​

ノートブックを実行するには、必要なすべての承認が実施されていること、および指定されたランナーであることを確認してください。そうしたら:

  1. ノートブック で、ノートブックをクリックしてプレビュー モードで開きます。

  2. 実行 ボタンをクリックします。

    • 実行できるのは、自分が指定されたランナーであり、承認されているノートブックのみです。
    • 自分で作成したノートブックを実行するために、手動で承認する必要はありません。
    • 自分が作成したノートブックを却下できます。実行する前に、再承認する必要があります。
    • ノートブックごとに自動承認を管理できます。「自動承認ルール」を参照してください。
  3. (オプション) パラメーターを指定してノートブックを実行 ダイアログで、 + 追加 をクリックして、パラメーター値をノートブック ジョブ・タスクに渡します。

  4. ノートブックを確認します。

  5. 実行 をクリックします。

  6. [ 詳細を表示 ] をクリックして、実行の進行状況を表示します。または、このページで 「実行 」に移動するか、ワークスペースサイドバーの 「ジョブとパイプライン 」をクリックして ジョブ 実行 タブに移動して、実行の進行状況を表示することもできます。

  7. ノートブックの実行結果を表示します。ノートブックの結果は、実行の完了後に表示されます。過去の実行を表示するには、[ 実行 ] に移動し、[ 開始時刻 ] 列のリンクをクリックします。

すべての共同作業者がノートブックを承認した場合でも、アップロードしたユーザーがランナーとして指定した共同作業者のみがノートブックを実行できます。

ノートブックのパラメーター​

次のパラメーターは、ランタイム時にクリーンルーム ノートブックに自動的に渡されます。

  • cr_central_id: 中央のクリーンルーム ID。
  • cr_runner_global_metastore_id: 指定されたランナーのグローバル メタストア ID。
  • cr_runner_alias: 指定されたランナーのコラボレーターエイリアス。
  • cr_<alias>_input_catalog: 特定の共同作業者によって共有されるデータを保存するカタログで、 alias はそのユーザーのクリーンルーム エイリアスを表します。 UI で作成された 2 者間クリーンルームの場合、これはデフォルトで作成者またはコラボレーターになりますが、API を使用してカスタマイズできます。cr_<alias>_input_catalog パラメーターは、サンプル テーブルを使用したローカル テストに使用できます。
  • cr_output_catalog: 新しい出力テーブルを作成するカタログを定義します。cr_output_schemaと組み合わせて使用 します。出力テーブルの作成を参照してください。
  • cr_output_schema: 出力テーブルを作成するスキーマを定義します。cr_output_catalogと組み合わせて使用 します。出力テーブルの作成を参照してください。
  • cr_shared_output_schema: ランナーだけでなく、すべてのコラボレーターが読み取ることができる出力テーブルを作成するスキーマを定義します。cr_output_catalogと組み合わせて使用します。クリーンルームで共有出力が有効である場合にのみ利用可能です。「すべての共同作業者と出力結果を共有する」を参照してください。

上記のノートブック パラメーターは、実行中にウィジェット値として自動的に使用できます。

  • Python セル : dbutils.widgets.getを使用して参照します。たとえば、 dbutils.widgets.get("cr_central_id")のようになります。

  • SQL セル : select :nameを使用してアクセスします。たとえば、 select :cr_central_idのようになります。

ノートからJARのUDFを呼び出す​

共有JARからカスタムJavaまたはScala関数を登録し、CREATE TEMPORARY FUNCTIONを使用してクリーンルーム ノートブックから呼び出すことができます。「Databricks クリーンルームでJARワークロードを実行する」を参照してください。

ベース環境の選択​

備考

ベータ版

機械学習およびAIベース環境はベータ版です。標準環境は一般的に利用可能です。

クリーンルームにノートブックを追加する場合、ノートブックの ベース環境 を選択します。ベース環境は、Serverless環境のバージョンと、ノートブックの実行時にプリインストールされるPythonライブラリを設定します。すべての共同編集者は、各ノートブックが使用するベース環境を表示できます。

  • 標準 : Databricksが提供するライブラリを含むServerless環境。
  • 機械学習 : Databricks Runtime for Machine Learning のライブラリを追加します。CPU で実行されるノートブックで利用できます。
  • AI : PyTorch や Hugging Face Transformers などのディープラーニングライブラリを追加します。GPU で実行されるノートブックで使用できます。

クリーンルームでは、カスタム ベース環境はサポートされていません。ベース環境の詳細については、 「Serverless環境の構成」を参照してください。

ノートブックを更新するときに、基本環境を変更できます。更新によって新しいノートブックバージョンが作成され、すべてのコラボレーターが再度承認する必要があります。クリーンルームのノートブックの承認を参照してください。

Serverless GPUでノートブックを実行する​

defaultでは、クリーンルーム ノートブックはServerless CPU コンピュートで実行されます。共有データでモデルの推論やトレーニングを実行するには、代わりにServerless GPU コンピュートでクリーンルーム ノートブックを実行します。GPU ノートブックは AI ランタイムで実行されます。

GPUノートブックは、他のノートブックと同じ中央クリーンルームで実行され、同じ承認フロー、データアクセス、出力テーブルを使用します。すべてのコラボレーターは、各ノートブックで使用されているアクセラレーターを確認できます。

要件​

  • エンタープライズ価格プランのアカウントでは、クリーンルームのServerless GPUは、Databricksが自動的にオンにするまで、defaultでオフになっています。予定日については、クリーンルームのServerless GPUが、オフになっているアカウントで近日中にdefaultでオンになるを参照してください。

  • クリーンルームでServerless GPUをオンにするには、アカウント管理者はアカウントコンソールの クリーンルームAIランタイム を プレビュー ページで有効にする必要があります。アカウントレベルのプレビューを管理するを参照してください。この設定は、ノートブックを追加した共同編集者のアカウントに適用されます。

  • 中央クリーンルームは、以下のリージョンのいずれかでホストされている必要があります:

    • AWS :ca-central-1、eu-west-1、sa-east-1、us-east-1、us-east-2、またはus-west-2。
    • Azure :eastusまたはwestus。
  • ノートブックは、Standardベース環境バージョン4以降、またはAIベース環境を使用する必要があります。アクセラレータを選択すると、 ベース環境 リストには、これらの環境のみが表示されます。ベース環境の選択を参照してください。

AI ランタイム の GPU コンピュートは、中央クリーンルーム リージョンとは異なる Geo でランできます。これは、一部の GPU タイプで Geo 間処理が必要になるためです。Geo 間処理では、送信コストが発生し、データの場所(データレジデンシー)に影響が出る場合があります。Geo間の処理を有効にするを参照してください。

GPUでランするノートブックを追加する​

ノートブックの追加を起動​

クリーンルームへのノートブックの追加を起動します。「ステップ 3。データ アセットとノートブックをクリーンルームに追加します」を参照してください。

アクセラレータを選択します​

アクセラレータ で、GPUタイプ 1xA10、1xH100、または 8xH100 を選択します。ノートブックをServerless CPUでランするには、代わりに None を選択します。

基本環境を選択します​

ベース環境 には、 標準 または AI 環境を選択します。

ノートブックを追加​

ノートブックの追加 をクリックします。

ノートブックを更新するときに、アクセラレータを変更できます。他のノートブックの更新と同様に、この変更によって新しいノートブックバージョンが作成され、すべての共同作業者が再度承認する必要があります。See クリーンルームでノートブックを承認するを参照してください。

出力テーブルを使用したノートブック出力の共有​

出力テーブルは、ノートブックの実行によって生成され、ノートブック ランナーのメタストアに共有される一時的な読み取り専用テーブルです。ノートブックが出力テーブルを作成すると、ノートブック ランナーは 出力カタログ でそのテーブルにアクセスし、ワークスペース内の他のユーザーと共有できます。「Databricks クリーンルームでの出力テーブルの作成と操作」を参照してください。

クリーンルームで共有出力が有効になっている場合、ノートブックはすべての共同作業者が読み取ることができる共有出力スキーマにも書き込むことができます。すべての共同作業者と出力を共有するを参照してください。

Use Lakeflow Jobs to Run クリーンルーム ノートブック​

Databricks のワークフローを使用して、クリーンルームのアセットを中心に複雑で定期的なワークフローを構築できます。たとえば、クリーンルームノートブックタスクを実行し、クリーンルームの出力に基づいてレポートをすぐに更新するタスクを実行する定期的なワークフローを作成できます。

以下の機能により、複雑なクリーンルームのワークフローが容易になります。

  • クリーンルーム ノートブック タスク タイプ : 専用のワークフロー タスクとして、クリーンルーム ノートブックを直接選択して実行します。 クリーンルームの「実行 ノートブック」を参照してください。

  • Databricks 提供される出力値 : すべてのクリーンルーム ノートブック タスクは、{{tasks.<your_task_name>.output.catalog_name}} と {{tasks.<your_task_name>.output.schema_name}} の動的値参照をすべてのダウンストリーム タスクで使用できるようにします。これらの値は、タスクがアップストリームのクリーンルーム ノートブック タスクの出力スキーマへのパスを自動的に渡されるワークフローを設定するために使用できます。 サポートされている値参照を参照してください

    • output.catalog_name には、クリーンルームの出力カタログ名が自動的に入力されます。
    • output.schema_name には、クリーンルーム ノートブック タスクの動的に生成された出力スキーマ名が自動的に入力されます。
  • Lakeflow ジョブ : ジョブ パラメーター値をクリーンルーム ノートブックに渡す タスク値 を使用するか、またはクリーンルーム ノートブック 出力をキャプチャして、その出力を他のワークフロー タスクに渡します。タスク間で情報を渡すには、 タスクの値 を参照してください。

  • タスクの値: 通常のノートブック タスクと同様に、クリーンルーム ノートブック タスクは、ダウンストリーム ワークフロー タスクに渡される タスク値 を設定できます。 構文 dbutils.jobs.taskValues.set(key="key", value="value")を使用します。タスクの値の詳細を参照してください。