ワークスペースでのノートブックの編集と実行

実行コンテキストを設定する

ワークスペース内のノートブックは、データベースやスキーマを自動的に設定しません。データをクエリするには、次の SQL コマンドを使用してセルで実行コンテキストを定義する必要があります。

USE DATABASE <database>;
USE SCHEMA <schema>;
Copy

環境やクライアント間でノートブックが一貫して実行されるようにするには、テーブルやその他のオブジェクトに完全修飾名を使用します。例:

-- Query data objects using a fully qualified name
SELECT * FROM TABLE <database_name.schema_name.table_name>;

-- Create a table using a fully qualified name
WITH filtered_events AS (
    SELECT
        user_id,
        event_type,
        event_timestamp
    FROM raw_events
    WHERE event_timestamp >= '2025-01-01'
)
CREATE OR REPLACE TABLE <database_name.schema_name.table_name> AS
SELECT *
FROM filtered_events;
Copy

ロールとウェアハウスピッカーを使用する

ノートブックエディターの左上にあるピッカーを使用するか、以下の SQL コマンドを実行すると、アクティブなロールとウェアハウスを設定できます。

USE ROLE <role>;
USE WAREHOUSE <warehouse>;
Copy

クエリウェアハウスは、ノートブックによって呼び出される SQL クエリとSnowparkプッシュダウンコンピュートの実行に使用されます。インタラクティブなデータグリッドのレンダリングにも使用されますが、この操作にはクレジットチャージはありません。

クレジット使用状況の詳細については、 コンピュートを設定する をご参照ください。

セルを実行する

サポートされている実行オプションは4つあります。

  • すべてのセルを実行

  • 1つのセルを実行

  • 現在のセルとそれより上のセルすべてを実行(セルの省略記号メニュー経由)

  • 現在のセルとそれより下のセルすべてを実行(セルの省略記号メニュー経由)

セルの実行をキャンセルする

ノートブックの上部にある Stop またはセル内の Cancel execution を使用します。

どちらのアクションも、現在実行中のセルと、 Run all によってトリガーされたキュー中のセルを停止します。

注釈

Run all ボタンは、ノートブックがサービスに接続または再接続しているときは一時的に Stop に変更される場合があります。

セル名

セルに名前を割り当てて、ナビゲーションを容易にし、状況に応じたラベルを提供することができます。

インポートされた .ipynb ファイルに既に名前またはタイトルのメタデータが含まれている場合、それらの値は自動的に使用されます。

セル参照

双方向の SQL からPythonへのセル参照は、どちらの言語のセル間でも結果と変数を再利用することができ、 SQL とPythonワークフロー間のシームレスな移行を可能にします。

結果ツールチップにカーソルを合わせると、PythonおよびSQLで結果を参照するために使用できるDataFrame名を確認できます。

セル参照

SQL セルの結果を参照する

各 SQL セルは、その結果を dataframe_x という名前のpandas DataFrame ポインターとして公開します。

  • SQL では、二重中括弧を使用して参照します: {{dataframe_1}}

  • Pythonでは、pandas DataFrame として直接参照します: dataframe_1 。

Python変数を参照する

SQL クエリでPython変数を参照するには、変数を二重中括弧で囲みます。例:

SELECT * FROM {{uploaded_df}} WHERE "price" > 326;
Copy

DataFrame 変数は、 SQL でPython変数を参照する場合にもサポートされます。

ワークフロー例

Pythonセル

import pandas as pd

uploaded_df = pd.read_csv("../data/diamonds.csv")
uploaded_df
Copy

Python変数を参照する SQL セル

SELECT * FROM {{uploaded_df}} WHERE "price" > 326;
Copy

** SQL セルの結果を参照する SQL セル**

SQL セルの結果は、 dataframe_1 という DataFrame ポインターを提供します。別の SQL クエリで参照できます。

SELECT * FROM {{dataframe_1}} WHERE "carat" < 1.0
UNION ALL
SELECT * FROM {{dataframe_2}} WHERE "carat" >= 1.0;
Copy

インタラクティブなデータグリッド

データグリッドは以下をサポートします。

  • スクロール

  • 検索

  • フィルタリング

  • 並び替え

  • コードなしのチャート作成

組み込みチャートビルダー

ワークスペースの編集サーフェス全体で、データ操作と視覚化のための一貫したユーザーエクスペリエンスを提供します。

ミニマップとセルステータス

ミニマップはMarkdownヘッダーから目次を生成し、各セルの包括的なセッション中のステータス(実行中、成功、失敗、変更済み)を表示します。

ノートブックカーネル

ノートブックカーネルは、ノートブックサービスが RUNNING 状態にある限りアクティブであり続けるため、 ML トレーニングやデータエンジニアリングジョブなどの重要で長時間実行されるプロセスを中断することなく実行できます。

カーネルの実行に影響を与えないアクション:

  • 他のページへ移動する

  • Snowsight の他の場所で作業する

  • ブラウザーを閉じる

  • コンピューターをシャットダウンする

Connected ドロップダウンを使用して、カーネルをシャットダウンまたは再起動できます。

注釈

Shut down kernel または Restart kernel を使用すると、メモリ内の変数をクリアしますが、ユーザーがインストールしたパッケージは保持します。プリインストールパッケージのみで完全にクリーンな環境を希望する場合は、サービスを再起動するか、新しいサービスを作成して接続する必要があります。

ノートブックサービスが一時停止すると、ノートブックカーネルもシャットダウンされます。詳細については、 コンピュートを設定する をご参照ください。

Jupyterマジック

ワークスペースのノートブックは IPython (インタラクティブPython)カーネルを実行し、標準的なJupyterセルマジックとラインマジックを提供します。%lsmagic を実行して、利用可能なマジックを表示します。

ターミナルを使用する

ターミナルは次の目的で使用できます。

  • 依存関係のインストール

  • ファイルの管理

  • 並列ジョブの実行

  • コンピューティングリソースの使用状況の監視

ターミナルを使用するには、ノートブックサービスに接続する必要があります。別のサービスに切り替えると、ターミナルセッションが再開されます。

コンピューティングリソースの使用状況をリアルタイムで監視するために htop をインストールして実行する例:

# If installation fails, run `apt update` first
# Install `htop`
apt install htop

# Run `htop`
htop
Copy