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

ノートブック コンピュート リソース

この記事では、ノートブック コンピュート リソースのオプションについて説明します。 ノートブックは、汎用コンピュート リソース、サーバレス コンピュートで実行できます。また、SQLコマンドの場合は、SQL アナリティクス用に最適化されたコンピュートの一種である SQLウェアハウスを使用することもできます。コンピュートの種類の詳細については、 コンピュートを参照してください。

自動アタッチコンピュート

開発者設定では、エディターと対話するときに自動的にコンピュート リソースにアタッチし、セッションを開始するようにノートブックを構成できます。

  1. 左上にあるユーザーアイコンをクリックします。

  2. 設定 をクリックします。

  3. 「開発者」 をクリックして開発者設定に移動します。

  4. [エディター操作でセッションを自動的に作成] をオンに切り替えて、エディター操作でコンピュート セッションを自動的に開始します。 Databricks 、ユーザーの設定 (サーバーレスまたはSQLウェアハウス) と最後に使用されたコンピュート リソースに基づいてコンピュート リソースを作成します。

    または

    ノートブックが自動的にコンピュート リソースに接続して開始しないようにするには、この設定をオフに切り替えます。

オートコンプリート、コードの書式設定、デバッガーなどのコード支援機能を使用するには、ノートブックがアクティブなコンピュート セッションに接続されている必要があります。 ノートブックがコンピュート セッションを開始していない場合、コード支援機能は非アクティブになります。

ノートブック向けサーバレス コンピュート

サーバレス コンピュートを使用すると、ノートブックをオンデマンド コンピューティング リソースにすばやく接続できます。

サーバーレスコンピュートに接続するには、ノートブックの 接続 ドロップダウンメニューをクリックし、 サーバレス を選択します。

詳細については、 ノートブック向けサーバレス コンピュート を参照してください。

サーバレス ノートブックの自動セッション復元

サーバレス コンピュートをアイドル状態で終了すると、ノートブック内の進行中の作業 (変数値 Python など) が失われる可能性があります。 これを回避するには、 サーバレス ノートブックの自動セッション復元 を有効にします。

  1. ワークスペースの右上にあるユーザー名をクリックし、ドロップダウンリストの 設定 をクリックします。
  2. 設定 サイドバーで、 開発者 を選択します。
  3. [試験的な機能 ] で、[ サーバレス ノートブックの自動セッション復元 ] 設定をオンに切り替えます。

この設定を有効にすると、 Databricksアイドル終了前にサーバレス ノートブックのメモリ状態をスナップショットできるようになります。 アイドル状態の切断後にノートブックに戻ると、ページの上部にバナーが表示されます。作業状態を復元するには、 「再接続」を クリックします。

再接続すると、Databricks は次の作業環境全体を復元します。

  • Python 変数、関数、クラス定義: ノートブックの Python 側は保持されるため、再インポートまたは再宣言する必要はありません。
  • Spark データフレーム、キャッシュされたビュー、および一時ビュー: 読み込み、変換、またはキャッシュされたデータ (一時ビューを含む) は保持されるため、コストのかかる再読み込みや再計算を回避できます。
  • Spark セッション状態: Spark レベルの構成設定、一時ビュー、カタログの変更、ユーザー定義関数 (UDF) はすべて保存されるため、リセットする必要はありません。

この機能には制限があり、次の復元はサポートされていません。

  • 4日以上経過したSpark状態
  • 50 MBを超えるSpark状態
  • SQLスクリプトに関連するデータ
  • ファイルハンドル
  • ロックとその他の同時実行プリミティブ
  • ネットワーク接続

ノートブックを汎用コンピュート リソースにアタッチする

ノートブックを汎用コンピュート リソースにアタッチするには、コンピュート リソースに対する Can Attach To 権限 が必要です。

重要

ノートブックがコンピュート リソースにアタッチされている限り、ノートブックに対するCAN RUN アクセス許可を持つすべてのユーザーは、コンピュート リソースにアクセスするための暗黙的なアクセス許可を持っています。

ノートブックをコンピュート リソースにアタッチするには、 ノートブック ツールバーのコンピュート セレクター をクリックし、ドロップダウン メニューからリソースを選択します。

メニューには、最近使用した、または現在稼働している汎用コンピュートと SQLウェアハウスのセレクションが表示されます。

ノートブックをアタッチ

利用可能なすべてのコンピュートから選択するには、[ その他... ] をクリックします。 利用可能な一般的なコンピュートまたは SQLウェアハウスから選択します。

「その他のクラスター」ダイアログ

また、ドロップダウンメニューから 新しいリソースの作成 新しい汎用コンピュート リソースを作成することもできます 。

重要

アタッチされたノートブックには、以下のApache Spark変数が定義されています。

クラス

変数名

SparkContext

sc

SQLContext/HiveContext

sqlContext

SparkSession (Spark 2.x)

spark

SparkSessionSparkContext、またはSQLContextの作成は行わないでください。これを行うと、一貫性のない動作が発生します。

SQLウェアハウスでノートブックを使用する

ノートブックが SQLウェアハウスにアタッチされている場合、 SQL セルと Markdown セルを実行できます。 他の言語 (Python や R など) でセルを実行すると、エラーが発生します。SQLウェアハウスで実行されたセルSQL、SQLウェアハウスのクエリ履歴に表示されます。クエリを実行したユーザーは、出力の下部にある経過時間をクリックすることで、ノートブックから クエリ プロファイルを表示できます

SQLウェアハウスに接続されているノートブックは、 SQLウェアハウス セッションをサポートしています。これにより、変数の定義、一時ビューの作成、および複数のクエリ実行にわたる状態の永続化が可能になります。 これにより、すべてのステートメントを一度に実行する必要なく、SQL ロジックを反復的に構築できるようになります。SQL SQLwarehouse セッションとは何ですか?」を参照してください。 。

ノートブックを実行するには、Pro または サーバレス SQLウェアハウスが必要です。 ワークスペースと SQLウェアハウスにアクセスできる必要があります。

ノートブックを SQLウェアハウス にアタッチするには、次の手順を実行します。

  1. ノートブックツールバーのコンピュートセレクターをクリックします。ドロップダウン メニューには、現在実行中のリソースまたは最近使用したコンピュート リソースが表示されます。 SQLウェアハウスには SQLウェアハウスラベルマークが付いています。

  2. メニューからSQLウェアハウスを選択します。

    利用可能なすべてのSQLウェアハウスを表示するには、ドロップダウンメニューから「 さらに表示… 」を選択します。ダイアログが表示され、ノートブックで利用可能なコンピュートリソースが表示されます。「 SQLウェアハウス 」を選択し、使用するウェアハウスを選択して、「 アタッチ 」をクリックします。

    SQLウェアハウスが選択された状態の「その他のクラスター」ダイアログ

また、ワークフローまたはスケジュールされたジョブを作成するときに、SQL ノートブックのコンピュート リソースとして SQLウェアハウスを選択することもできます。

SQLウェアハウスの制限

詳細については、Databricksノートブックの既知の制限事項 を参照してください。