Databricks Git フォルダー内のファイル アセットを管理する

Databricks Git フォルダーは、Git ベースのソース リポジトリの Databricks 管理クローンの Git クライアントとして機能し、ワークスペースからコンテンツに対して Git 操作のサブセットを実行できるようにします。 この Git 統合の一環として、リモート リポジトリに保存されているファイルは、その種類に応じていくつかの制限が設けられているものの、その種類に基づいて「資産」として表示されます。 特に、ノートブック ファイルには、その種類に基づいて異なるプロパティがあります。 この記事を読んで、Git フォルダー内のアセット、特に IPYNB ノートブックを操作する方法を理解してください。

サポートされているアセットの種類

Git フォルダーでは、特定の Databricks アセット タイプのみがサポートされます。 この場合、「サポートされている」とは、「シリアル化、バージョン管理が可能で、基になる Git リポジトリにプッシュできる」ことを意味します。

現在、サポートされているアセットタイプは次のとおりです。

資産の種類

詳細

ファイル

ファイルはシリアル化されたデータであり、ライブラリからバイナリ、コード、画像まで、あらゆるものを含めることができます。 詳細については、「 ワークスペース ファイルとは」を参照してください。

ノートブック

ノートブックとは、具体的には Databricks でサポートされているノートブック ファイル形式です。 ノートブックはシリアル化されていないため、ファイルとは別の Databricks アセット タイプとみなされます。 Git フォルダーは、ファイル拡張子 (例: .ipynb )、またはファイル コンテンツ内の特別なマーカーと組み合わせたファイル拡張子 (たとえば、 .pyソース ファイルの先頭にある# Databricks notebook sourceコメント) によってノートブックを決定します。

フォルダ

フォルダーは、Git 内のファイルの論理グループに関するシリアル化された情報を表す Databricks 固有の構造です。 予想どおり、ユーザーは Databricks Git フォルダーを表示するとき、または Databricks CLI を使用してアクセスするときに、これを「フォルダー」として認識します。

現在 Git フォルダーでサポートされていない Databricks アセット タイプには次のものがあります。

  • DBSQLクエリ

  • アラート

  • ダッシュボード (レガシー ダッシュボードを含む)

注:

サポートされていない既存のアセットを Git フォルダーに移動することはできますが、これらのアセットへの変更をリポジトリにコミットすることはできません。 Git フォルダーに新しいサポートされていないアセットを作成することはできません。

ノートブックの形式

Databricks では、"ソース" と "ipynb" の 2 種類の高レベルの Databricks 固有のノートブック形式が考慮されます。 ユーザーが "ソース" 形式でノートブックをコミットすると、Databricks プラットフォームによって、 .py.sql.scala.rなどの言語サフィックスが付いたフラット ファイルがコミットされます。 "ソース" 形式のノートブックにはソース コードのみが含まれ、ノートブックの実行結果であるテーブル表示や視覚化などの出力は含まれていません。

ただし、「ipynb」形式には関連する出力があり、それらのアーティファクトは、それらを生成した.ipynbノートブックをプッシュするときに、Git フォルダーをバックアップする Git リポジトリに自動的にプッシュされます。 コードとともに出力をコミットする場合は、「ipynb」ノートブック形式を使用し、生成された出力をユーザーがコミットできるように構成をセットアップします。 その結果、「ipynb」は、Git フォルダーを通じてリモート Git リポジトリにプッシュされたノートブックの Databricks での表示エクスペリエンスの向上もサポートします。

ノートブックのソース形式

詳細

ソース

コード言語を示す標準ファイル サフィックスを持つ任意のコード ファイル ( .py.scala.r.sqlなど) を指定できます。 "ソース" ノートブックはテキスト ファイルとして扱われ、Git リポジトリにコミットされたときに関連する出力は含まれません。

ipynb

"ipynb" ファイルは .ipynb で終わり、構成されている場合は、Databricks Git フォルダーからバッキング Git リポジトリに出力 (視覚化など) をプッシュできます。 .ipnynb ノートブックには、Databricks ノートブックでサポートされている任意の言語のコードを含めることができます (.ipynbpy部分に関係なく)。

ノートブックの実行後に出力をリポジトリにプッシュバックする場合は、 .ipynb (Jupyter) ノートブックを使用します。 ノートブックを実行して Git で管理するだけの場合は、 .pyのような "ソース" 形式を使用します。

サポートされているノートブック形式の詳細については、「 Databricks ノートブックのエクスポートとインポート」を参照してください。

注:

「アウトプット」とは?

出力は、Databricks プラットフォームでノートブックを実行した結果であり、テーブル表示や視覚化が含まれます。

ファイル拡張子以外にノートブックが使用している形式を確認するにはどうすればよいですか?

Databricks によって管理されるノートブックの上部には、通常、形式を示す 1 行のコメントがあります。 たとえば、 .py "ソース" ノートブックの場合、次のような行が表示されます。

# Databricks notebook source

.ipynbファイルの場合、ファイル接尾辞は、それが "ipynb" ノートブック形式であることを示すために使用されます。

Databricks Git フォルダー内の IPYNB ノートブック

Jupyter ノートブック ( .ipynbファイル) のサポートは、Git フォルダーで利用できます。 .ipynbノートブックを使用してリポジトリのクローンを作成し、Databricks 製品で操作してから、それらを.ipynbノートブックとしてコミットしてプッシュできます。 ノートブックのダッシュボードなどのメタデータは保持されます。 管理者は、出力をコミットできるかどうかを制御できます。

ノートブック出力.ipynbコミットを許可する

デフォルトでは、Git フォルダーの管理設定では、 .ipynbノートブックの出力をコミットできません。 ワークスペース管理者はこの設定を変更できます。

  1. [管理者設定] > [ワークスペース設定] に移動します。

  2. [Git フォルダー] > [Git フォルダーに IPYNB 出力のエクスポートを許可する]で、 [許可: IPYNB 出力をオンに切り替えることができます]を選択します。

    管理コンソール: Git フォルダーに IPYNB 出力のエクスポートを許可します。

重要

出力が含まれる場合、視覚化とダッシュボードの構成は .ipynb ファイル形式。

IPYNB ノートブック出力アーティファクトのコミットを制御する

.ipynb ファイルをコミットすると、Databricks によって、出力のコミット方法を制御できる構成ファイル (.databricks/commit_outputs.

  1. リポジトリに .ipynb ノートブック ファイルがあるが、構成ファイルがない場合は、Git ステータス モーダルを開きます。

  2. 通知ダイアログで、[ Create commit file] をクリックします。

    ノートブック コミット UI: [ファイルの作成commit_outputs] ボタンをクリックします。

[ ファイル ] メニューから構成ファイルを生成することもできます。 [ ファイル ] メニューには、構成ファイルを自動的に更新して、特定のノートブックの出力を含めるか除外するかを指定できるコントロールがあります。

  1. [ファイル] メニューで、 [ノートブック出力のコミット] を選択します。

    Noteboook エディター: ノートブックをコミットすると、状態と制御が出力されます。
  2. ダイアログ ボックスで、ノートブック出力をコミットする選択を確認します。

    [ノートブックの出力のコミット] ダイアログ ボックス。

ソース ノートブックを IPYNB に変換する

Databricks UI を使用して、Git フォルダー内の既存のソース ノートブックを IPYNB ノートブックに変換できます。

  1. ワークスペースでソース ノートブックを開きます。

  2. ワークスペース メニューから[ファイル]を選択し、 [ノートブック形式の変更 [ソース]]を選択します。 ノートブックがすでに IPYNB 形式である場合、メニュー要素の[ソース][ipynb]になります。

    ワークスペース ファイル メニューが展開され、[ノートブック形式の変更] オプションが表示されます。
  3. モーダル ダイアログで、「Jupyter ノートブック形式 (.ipynb)」を選択し、 [変更]をクリックします。

    IPYNB ノートブック形式を選択できるモーダル ダイアログ ボックス。

また、次のこともできます。

  • 新しい .ipynb ノートブックを作成します。

  • 差分を Code diff (セル内のコード変更) または Raw diff (コード変更は JSON 構文として表示され、ノートブック出力をメタデータとして含む) として表示します。

Databricks でサポートされているノートブックの種類の詳細については、「 Databricks ノートブックのエクスポートとインポート」を参照してください。