Notebooks を管理するManage notebooks

ワークスペース API を呼び出すことによって、UI、CLI、およびを使用してノートブックを管理できます。You can manage notebooks using the UI, the CLI, and by invoking the Workspace API. この記事では、UI を使用して notebook のタスクを実行する方法について説明します。This article 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. サイドバーの ワークスペース ボタン  ワークスペースアイコン または ホーム ボタンホームアイコンをクリックし  ます。Click the Workspace button Workspace Icon or the Home button Home Icon in the sidebar. 次のいずれかの操作を行います。Do one of the following:
    • 任意のフォルダーの横にある ![ メニューのドロップダウンをクリックし、 Create > Notebook] を選択します。Next to any folder, click the Menu Dropdown on the right side of the text and select Create > Notebook.

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

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

  2. [Notebook の作成] ダイアログボックスで、名前を入力し、ノートブックの既定の言語を選択します。In the Create Notebook dialog, enter a name and select the notebook’s default language.
  3. クラスターが実行されている場合は、[ クラスター ] ボックスの一覧が表示されます。If there are running clusters, the Cluster drop-down displays. ノートブックを アタッチ するクラスターを選択します。Select the cluster you want to attach the notebook to.
  4. Create をクリックしてください。Click Create.

ノートブックを開くOpen a notebook

ワークスペースで、In your workspace, click a Notebook アイコン.. Notebook のタイトルにマウスポインターを合わせると、ノートブックのパスが表示されます。The notebook path displays when you hover over the notebook title.

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

ワークスペースメニューにアクセスしたり、ワークスペースのノートブックやその他のアイテムを削除したりする方法については、「 フォルダーワークスペースオブジェクトの操作 」を参照してください。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 名の右側にあるメニューのドロップダウンをクリックし て、[ ファイルパスのコピー] を選択します。To copy a notebook file path without opening the notebook, right-click the notebook name or click the Menu Dropdown to the right of the notebook name and select Copy File Path.

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

ノートブックの名前を変更するRename a notebook

開いているノートブックのタイトルを変更するには、タイトルをクリックしてインラインで編集するか、[ ファイル > 名前の変更] をクリックします。To change the title of an open notebook, click the title and edit inline or click File > Rename.

ノートブックへのアクセスを制御する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:

  • ソースファイル: 拡張子が、、 .scala .py .sql 、またはのソースコードステートメントのみを含む .r ファイル。Source file: A file containing only source code statements with the extension .scala, .py, .sql, or .r.
  • HTML: 拡張子がの Azure Databricks notebook .htmlHTML: An Azure Databricks notebook with the extension .html.
  • DBC archive: A Databricks archiveDBC archive: A Databricks archive.
  • IPython notebook: 拡張機能を備えた Jupyter notebook .ipynbIPython notebook: A Jupyter notebook with the extension .ipynb.
  • RMarkdown: 拡張子がのR Markdown ドキュメント.RmdRMarkdown: An R Markdown document with the extension .Rmd.

このセクションの内容:In this section:

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

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

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

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

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

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

  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.

注意

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

ノートブックとクラスター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.

このセクションの内容:In this section:

実行コンテキスト 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.

削除したノートブックコンテキストNotebook context evicted

実行コンテキストの最大数を持つクラスターにノートブックをアタッチしようとしたときに、アイドル状態のコンテキストがない (または自動削除が無効になっている) 場合、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.

切断されたノートブックNotebook detached

プロセスを分岐した場合でも、プロセスから返された要求の実行が完了するとアイドル状態と見なされます。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. ノートブックのツールバーで、[ ![ クラスター] アイコン デタッチ されたクラスター] ドロップダウンをクリックし  ます。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

SparkSessionSparkContext 、またはを作成しないでください SQLContextDo 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 タグと、 spark_version クラスター API および ジョブ api のエンドポイントで必要とされるプロパティは、どちらも 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] ツールバーで、[cluster] \ (クラスター  **名 ) <クラスター名>** ![ クラスター] ドロップダウンをクリックし ます。In the notebook toolbar, click Clusters Icon Attached Cluster Dropdown.

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

    ノートブックのデタッチDetach notebook

また、[クラスターの詳細] ページの [ ノートブック ] タブを使用して、クラスターからノートブックをデタッチすることもできます。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.

クラスターの詳細-アタッチされたノートブックCluster details attached notebooks

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.   フォルダーまたはノートブックの右側にある [下へ] キャレットまたはメニュードロップダウンをクリックし、[インポート] を選択します。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

 ![ フォルダーまたはノートブックの右側にある [下へ] キャレットまたはメニュードロップダウンをクリックし、 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.