ノートブックの管理Manage Notebooks

ワークスペース API を呼び出すことによって、UI、CLI、およびを使用してノートブックを管理できます。You can manage notebooks using the UI, the CLI, and by invoking the Workspace API. このトピックでは、UI を使用して notebook タスクを実行する方法について説明します。This topic focuses on performing notebook tasks using the UI. その他の方法については、「 DATABRICKS CLIワークスペース API」を参照してください。For the other methods, see Databricks CLI and Workspace API.

ノートブックを作成するCreate a notebook

  1. サイドバーにある [ワークスペース] ボタン Workspace アイコン または [ホーム] ボタン Home アイコンをクリックします。Click the Workspace button Workspace Icon or the Home button Home Icon in the sidebar. 次のいずれかを実行します。Do one of the following:
  2. [Notebook の作成] ダイアログボックスで、名前を入力し、ノートブックの第一言語を選択します。In the Create Notebook dialog, enter a name and select the notebook’s primary language.
  3. クラスターが実行されている場合は、 [クラスター] ボックスの一覧が表示されます。If there are running clusters, the Cluster drop-down displays. ノートブックをアタッチするクラスターを選択します。Select the cluster to attach the notebook to.
  4. 作成 をクリックします。Click Create.

ノートブックを削除するDelete a notebook

ノートブックはワークスペース (およびワークスペースのフォルダー) に含まれているため、フォルダーと同じ規則に従います。Since notebooks are contained inside the Workspace (and in folders in the Workspace), they follow the same rules as folders. ワークスペースメニューにアクセスしたり、ワークスペースのノートブックやその他のアイテムを削除したりする方法については、「フォルダーワークスペースオブジェクトの操作」を参照してください。See Folders and Workspace object operations for information about how to access the Workspace menu and delete notebooks or other items in the Workspace.

ノートブックパスのコピーCopy notebook path

Notebook を開いたままノートブックのファイルパスをコピーするには、notebook 名を右クリックするか、notebook 名の右側にある ![Menu] ドロップダウン クリックして、 [ファイルパスのコピー] を選択します。To copy a notebook file path without opening notebook, right-click the notebook name or click the Menu Dropdown to the right of the notebook name and select Copy File Path.

no-代替テキスト no-alternative-text

ノートブックへのアクセスを制御するControl access to a notebook

Azure Databricks アカウントにAzure Databricks Premium プランがある場合は、ワークスペースアクセス制御を使用して、notebook にアクセスできるユーザーを制御できます。If your Azure Databricks account has the Azure Databricks Premium Plan, you can use Workspace access control to control who has access to a notebook.

Notebook の外部形式 Notebook external formats

Azure Databricks は、いくつかの notebook 外部形式をサポートしています。Azure Databricks supports several notebook external formats:

ソースファイルSource File

拡張子が .scala.py.sql、または .r のソースファイル。A source file with the extension .scala, .py, .sql, or .r.

HTMLHTML

@No__t_0 拡張機能を持つ Azure Databricks notebook。An Azure Databricks notebook with an .html extension.

DBC アーカイブDBC Archive

Databricks アーカイブA Databricks archive.

IPython NotebookIPython Notebook

拡張機能が .ipynb されたJupyter notebookA Jupyter notebook with the extension .ipynb.

RMarkdownRMarkdown

拡張子が .RmdR Markdown ドキュメントAn R Markdown document with the extension .Rmd.

ノートブックをインポートする Import a notebook

外部ノートブックは、URL またはファイルからインポートできます。You can import an external notebook from a URL or a file.

  1. サイドバーにある [ワークスペース] ボタン Workspace アイコン または [ホーム] ボタン Home アイコンをクリックします。Click the Workspace button Workspace Icon or the Home button Home Icon in the sidebar. 次のいずれかを実行します。Do one of the following:

    • 任意のフォルダーの横にある ![Menu] ドロップ ダウンをクリックし、テキストの右側にある [インポート] を選択します。Next to any folder, click the Menu Dropdown on the right side of the text and select Import.

    • ワークスペースまたはユーザーフォルダーで、Down キャレット をクリックし、 [インポート] を選択します。In the Workspace or a user folder, click Down Caret and select Import.

      no-代替テキスト no-alternative-text

  2. URL を指定するか、サポートされている外部形式を含むファイルを参照してください。Specify the URL or browse to a file containing a supported external format.

  3. [インポート] をクリックします。Click Import.

ノートブックをエクスポートする Export a notebook

Notebook ツールバーで、 [ファイル > エクスポート] と [形式] を選択します。In the notebook toolbar, select File > Export and a format.

注意

ノートブックを Azure Databricks notebook (HTML)、IPython notebook、または archive (DBC) としてエクスポートしたときに、その結果がまだクリアされていない場合は、notebook を実行した結果が含まれます。When you export a notebook as an Azure Databricks notebook (HTML), IPython notebook, or archive (DBC), and you have not previously cleared the results, the results of running the notebook are included.

Notebook とクラスターNotebooks and clusters

Notebook で作業を行う前に、まずノートブックをクラスターに接続する必要があります。Before you can do any work in a notebook, you must first attach the notebook to a cluster. このセクションでは、クラスターとの間でノートブックをアタッチおよびデタッチする方法、およびこれらの操作を実行するときにバックグラウンドで発生する処理について説明します。This section describes how to attach and detach notebooks to and from clusters and what happens behind the scenes when you perform these actions.

実行コンテキスト Execution contexts

クラスターに notebook をアタッチすると、Azure Databricks によって実行コンテキストが作成されます。When you attach a notebook to a cluster, Azure Databricks creates an execution context. _実行コンテキスト_には、サポートされている各プログラミング言語のREPL環境の状態が含まれています: Python、R、スケール a、および SQL。An execution context contains the state for a REPL environment for each supported programming language: Python, R, Scala, and SQL. ノートブックでセルを実行すると、適切な言語 REPL 環境にコマンドがディスパッチされ、が実行されます。When you run a cell in a notebook, the command is dispatched to the appropriate language REPL environment and run.

また、 REST 1.2 APIを使用して実行コンテキストを作成し、実行コンテキストで実行するコマンドを送信することもできます。You can also use the REST 1.2 API to create an execution context and send a command to run in the execution context. 同様に、コマンドは言語 REPL 環境にディスパッチされ、を実行します。Similarly, the command is dispatched to the language REPL environment and run.

クラスターには、実行コンテキストの最大数 (145) があります。A cluster has a maximum number of execution contexts (145). 実行コンテキストの数がこのしきい値に達すると、そのクラスターにノートブックをアタッチしたり、新しい実行コンテキストを作成したりすることはできません。Once the number of execution contexts has reached this threshold, you cannot attach a notebook to the cluster or create a new execution context.

アイドル状態の実行コンテキストIdle execution contexts

実行コンテキストは、最後に完了した実行がアイドル状態のしきい値を超えたときに_アイドル状態_と見なされます。An execution context is considered idle when the last completed execution occurred past a set idle threshold. 最後に完了した実行は、notebook がコマンドの実行を最後に完了した時刻です。Last completed execution is the last time the notebook completed execution of commands. アイドルしきい値は、最後に完了した実行から、ノートブックを自動的にデタッチしようとするまでに経過する必要がある時間です。The idle threshold is the amount of time that must pass between the last completed execution and any attempt to automatically detach the notebook. 既定のアイドルしきい値は24時間です。The default idle threshold is 24 hours.

クラスターがコンテキストの最大制限に達した場合、Azure Databricks (見つけ) のアイドル状態の実行コンテキスト (最も古いものから順に) が必要に応じて削除されます。When a cluster has reached the maximum context limit, Azure Databricks removes (evicts) idle execution contexts (starting with the least recently used) as needed. コンテキストが削除されても、そのコンテキストを使用するノートブックは_引き続きクラスターにアタッチされ、クラスターの notebook 一覧に表示され_ます。Even when a context is removed, the notebook using the context is still attached to the cluster and appears in the cluster’s notebook list. ストリーミングノートブックはアクティブに実行されていると見なされ、そのコンテキストは実行が停止されるまで削除されません。Streaming notebooks are considered actively running, and their context is never evicted until their execution has been stopped. アイドル状態のコンテキストが削除された場合、UI には、コンテキストを使用しているノートブックがアイドル状態のためにデタッチされたことを示すメッセージが表示されます。If an idle context is evicted, the UI displays a message indicating that the notebook using the context was detached due to being idle.

no-代替テキスト no-alternative-text

実行コンテキストの最大数を持つクラスターにノートブックをアタッチしようとしたときに、アイドル状態のコンテキストがない (または自動削除が無効になっている) 場合、UI には、現在の最大実行コンテキストのしきい値に達したことを示すメッセージが表示されます。ノートブックはデタッチされた状態のままになります。If you attempt to attach a notebook to cluster that has maximum number of execution contexts and there are no idle contexts (or if auto-eviction is disabled), the UI displays a message saying that the current maximum execution contexts threshold has been reached and the notebook will remain in the detached state.

no-代替テキスト no-alternative-text

プロセスを分岐した場合でも、プロセスから返された要求の実行が完了するとアイドル状態と見なされます。If you fork a process, an idle execution context is still considered idle once execution of the request that forked the process returns. Spark では、個別のプロセスのフォークは_推奨されません_。Forking separate processes is not recommended with Spark.

コンテキストの自動削除の構成 Configure context auto-eviction

Spark プロパティspark.databricks.chauffeur.enableIdleContextTracking を設定することによって、コンテキストの自動削除を構成できます。You can configure context auto-eviction by setting the Spark property spark.databricks.chauffeur.enableIdleContextTracking.

  • Databricks 5.0 以降では、自動削除は既定で有効になっています。In Databricks 5.0 and above, auto-eviction is enabled by default. クラスターの自動削除を無効にするには、spark.databricks.chauffeur.enableIdleContextTracking false を設定します。You disable auto-eviction for a cluster by setting spark.databricks.chauffeur.enableIdleContextTracking false.
  • Databricks 4.3 では、自動削除は既定で無効になっています。In Databricks 4.3, auto-eviction is disabled by default. クラスターの自動削除を有効にするには、spark.databricks.chauffeur.enableIdleContextTracking true を設定します。You enable auto-eviction for a cluster by setting spark.databricks.chauffeur.enableIdleContextTracking true.

クラスターに notebook をアタッチする Attach a notebook to a cluster

クラスターにノートブックを接続するには:To attach a notebook to a cluster:

  1. ノートブックのツールバーで、Clusters アイコンをクリックして Cluster ドロップダウン 切断します。In the notebook toolbar, click Clusters Icon Detached Cluster Dropdown.
  2. ドロップダウンリストからクラスターを選択します。From the drop-down, select a cluster.

重要

アタッチされたノートブックには、次の Apache Spark 変数が定義されています。An attached notebook has the following Apache Spark variables defined.

クラスClass 変数名Variable Name
SparkContext sc
SQLContext/HiveContext sqlContext
SparkSession (Spark 2.x)SparkSession (Spark 2.x) spark

@No__t_0、`SparkContext`、または SQLContext を作成しないでください。Do not create a SparkSession, SparkContext, or SQLContext. そうすると、動作が不安定になります。Doing so will lead to inconsistent behavior.

Spark と Databricks Runtime のバージョンを確認する Determine Spark and Databricks Runtime version

Notebook がアタッチされているクラスターの Spark バージョンを確認するには、次のように実行します。To determine the Spark version of the cluster your notebook is attached to, run:

spark.version

Notebook が接続されているクラスターの Databricks Runtime バージョンを確認するには、次のように実行します。To determine the Databricks Runtime version of the cluster your notebook is attached to, run:

  • ScalaScala

    dbutils.notebook.getContext.tags("sparkVersion")
    
  • PythonPython

    spark.conf.get("spark.databricks.clusterUsageTags.sparkVersion")
    

注意

この sparkVersion タグと、クラスター apiおよびジョブ apiのエンドポイントで必要とされる spark_version プロパティの両方が、Spark バージョンではなくDatabricks Runtime バージョンを参照します。Both this sparkVersion tag and the spark_version property required by the endpoints in the Clusters API and Jobs API refer to the Databricks Runtime version, not the Spark version.

クラスターから notebook を切断する Detach a notebook from a cluster

  1. Notebook ツールバーで、[Clusters アイコン 接続 < クラスター名 > Cluster ドロップダウン ] をクリックします。In the notebook toolbar, click Clusters Icon Attached Cluster Dropdown.

  2. [デタッチ] を選択します。Select Detach.

    no-代替テキスト no-alternative-text

また、クラスターの詳細 ページの ノートブック タブを使用して、クラスターからノートブックをデタッチすることもできます。You can also detach notebooks from a cluster using the Notebooks tab on the cluster details page.

クラスターからノートブックをデタッチすると、実行コンテキストが削除され、計算されたすべての変数の値がノートブックからクリアされます。When you detach a notebook from a cluster, the execution context is removed and all computed variable values are cleared from the notebook.

ヒント

Azure Databricks は、未使用のノートブックをクラスターからデタッチすることをお勧めします。Azure Databricks recommends that you detach unused notebooks from a cluster. これにより、ドライバーのメモリ領域が解放されます。This frees up memory space on the driver.

クラスターにアタッチされているすべてのノートブックを表示するView all notebooks attached to a cluster

クラスターの詳細 ページの ノートブック タブには、クラスターに接続されているすべてのノートブックが表示されます。The Notebooks tab on the cluster details page displays all of the notebooks that are attached to a cluster. また、このタブには、添付されている各ノートブックの状態と、ノートブックから最後にコマンドが実行された時刻が表示されます。The tab also displays the status of each attached notebook, along with the last time a command was run from the notebook.

no-代替テキスト no-alternative-text

Notebook をスケジュールする Schedule a notebook

Notebook ジョブが定期的に実行されるようにスケジュールするには、次のようにします。To schedule a notebook job to run periodically:

  1. [Notebook] ツールバーで、In the notebook toolbar, click the スケジュール ボタンをクリックします。button at the top right.
  2. [+ 新規] をクリックします。Click + New.
  3. スケジュールを選択します。Choose the schedule.
  4. OK をクリックします。Click OK.

ノートブックの配布 Distribute notebooks

Azure Databricks notebookを簡単に配布できるように、Azure Databricks は_Databricks archive_をサポートしています。これは、ノートブックのフォルダーまたは単一のノートブックを含むパッケージです。To allow you to easily distribute Azure Databricks notebooks, Azure Databricks supports the Databricks archive, which is a package that can contain a folder of notebooks or a single notebook. Databricks archive は、追加のメタデータを含む JAR ファイルであり、.dbc 拡張機能を備えています。A Databricks archive is a JAR file with extra metadata and has the extension .dbc. アーカイブに含まれているノートブックは、Azure Databricks 内部形式です。The notebooks contained in the archive are in an Azure Databricks internal format.

アーカイブをインポートするImport an archive

  1. フォルダーまたはノートブックの右にある ![Down キャレット] または Menu ドロップ ダウンをクリックし、 [インポート] を選択します。Click Down Caret or Menu Dropdown to the right of a folder or notebook and select Import.
  2. ファイルまたはURLを選択します。Choose File or URL.
  3. Dropzone の Databricks アーカイブに移動するか、削除します。Go to or drop a Databricks archive in the dropzone.
  4. [インポート] をクリックします。Click Import. アーカイブは Azure Databricks にインポートされます。The archive is imported into Azure Databricks. アーカイブにフォルダーが含まれている場合は、Azure Databricks そのフォルダーを再作成します。If the archive contains a folder, Azure Databricks recreates that folder.

アーカイブをエクスポートするExport an archive

フォルダーまたはノートブックの右にある ![Down キャレット] または Menu ドロップ ダウンをクリックし、 [Export > DBC Archive] を選択します。Click Down Caret or Menu Dropdown to the right of a folder or notebook and select Export > DBC Archive. Azure Databricks <[folder|notebook]-name>.dbc という名前のファイルをダウンロードします。Azure Databricks downloads a file named <[folder|notebook]-name>.dbc.