すべてのプロダクト
Search
ドキュメントセンター

Data Management:ノートブックを使用した開発

最終更新日:Aug 28, 2026

このトピックでは、DMS Jupyter Notebook を使用してデータをクエリおよび分析する方法について説明します。ノートブックは、コード、テキスト、グラフを 1 つのページに統合したインタラクティブなドキュメントです。他のユーザーと作業を簡単に共有できます。

ノートブックのインターフェース

ツールバーには、次の機能があります:

  • image: ノートブックでの編集内容を保存します。

  • image: 現在のセルの上にセルを挿入します。

  • image: 選択したセルを削除します。

  • image: 選択したセルを切り取ります。

  • image: 選択したセルをコピーします。

  • image: コピーした内容を選択したセルに貼り付けます。

  • image: 選択したセルを実行します。

  • image: カーネルを停止します。

  • image: カーネルを再起動します。

  • image: カーネルを再起動し、ノートブック全体を再実行します。

  • image: セルのタイプを Code、SQL、Markdown、または Raw の間で切り替えます。

  • image: Copilot チャットインターフェースを開きます。

DMS Jupyter Notebook の機能

DMS Jupyter Notebook は、オープンソースの Jupyter Notebook と互換性があります。また、強化された SQL クエリと可視化機能も提供します。

IPython カーネル

オープンソースの Jupyter Notebook とほぼ同じように機能します。pip を使用して拡張パッケージをインストールし、インターネットにアクセスできます。

  • Spark 構文を使用して、ノートブック内のテーブルデータをクエリします。構文の例を次に示します。

    • 構文 1:

      df = spark.sql("select * from customer limit 10").show();
    • 構文 2:

      %%spark_sql 
      select * from customer limit 10;
    • 構文 3:

      セルで、[SQL] > [Spark SQL] を選択し、SQL ステートメントを入力します。

      CREATE TABLE IF NOT EXISTS `default`.`select_2` AS SELECT 2;
      説明

      デフォルトでは、Spark SQL セルは最大 3,000 行を表示します。この制限を変更するには、セルに次のコードを入力して DMS_SPARK_SQL_DEFAULT_LIMIT 環境変数を変更します:

      os.environ['DMS_SPARK_SQL_DEFAULT_LIMIT'] = '3000';
  • ノートブックのツールバーで、セルのタイプを [Code] から [SQL] に切り替えます。

    SQL セルで使用される構文は、論理データウェアハウスの構文とほぼ同じです。クロスデータベースクエリとリアルタイム分析をサポートしています。権限要件は、DMS のきめ細かい権限と一致しています。

  • SQL セルと Python セルで、${variable_name} 形式を使用して変数を参照し、変数名をカスタマイズし、変数の型を表示できます。次のセクションでは、ノートブックで変数を定義、出力、参照する方法について説明します。

    • 変数の定義と参照

      IPython の変数は、${var} という形式で SQL 内から参照できます。var は IPython の変数名です。

      target_table = 'archieve_partitions'
      SELECT
          *
      FROM
          `datafactory`.`${target_table}`;
    • 変数の出力

      IPython セルでは、変数名を直接使用できます。変数名は結果セットの左下隅に表示されます。変数のタイプは pandas.core.frame.DataFrame です。変数の名前を変更するには、変数名をクリックして新しい名前を入力します。

  • SQL の結果セットは、ワンクリックで可視化できます。テーブル表示とグラフ表示の両方がサポートされています。

    グラフ表示では、左側のペインが設定パネルです。 [Chart type] (折れ線グラフなど)、[X-axis][Y-axis] のフィールド、[grouping][filter] 条件を設定できます。パネルの上部には [Try another] ボタンと [Download image] ボタンがあります。

PySpark カーネル

デフォルトで AnalyticDB Spark がサポートされています。オープンソースの Spark もサポートされています。

Spark Magic の %%help マジックコマンドを使用すると、サポートされているコマンドをすばやく一覧表示できます。

説明

Spark Magic は Jupyter Notebook の拡張機能です。

AnalyticDB Spark

AnalyticDB クラスター (Data Lakehouse Edition) を購入し、リソースグループを有効化して購入し、データベースアカウントを作成すると、次のコマンドを使用できます:

コマンド

説明

%%info

AnalyticDB Spark の設定を検証またはトラブルシューティングします。

%%sql

SQL ステートメントを AnalyticDB Spark に送信します。

C-Store の読み書き構文を使用して DDL 操作を実行します。詳細については、「内部テーブルの読み書き」をご参照ください。

%%spark

Python コードを AnalyticDB Spark に送信します。

説明

AnalyticDB Spark のセッションは 20 分間アクティブなままです。この期間が経過すると、セッションはタイムアウトして削除されます。カーネルを再起動して、新しいセッションを作成できます。

ファイルのアップロードとダウンロード

ossutil を使用して、必要なデータセットをアップロードおよびダウンロードします。ossutil の設定方法については、「ossutil の設定」をご参照ください。

操作手順

  1. ノートブックを作成します。

    [Files] image タブで、image をクリックし、[Notebook] を選択します。

  2. セルエディターで、SQL、Code、Markdown、または Raw 形式でコンテンツを記述します。

  3. Copilot を使用して SQL を生成します

  4. 生成された SQL が正しいことを確認した後、ステートメントを実行して結果セットを表示します。

    1. Copilot によって生成された SQL 領域で、[Execute Query] をクリックします。

      SQL ステートメントが左側のドキュメントに自動的に挿入されます。クエリ結果も SQL ステートメントの下に表示されます。

      • テーブル表示

        クエリにより、ORDERS テーブルから 7 行が返されます。これには、O_ORDERKEY (注文 ID)、O_CUSTKEY (顧客 ID)、および O_ORDERSTATUS (注文ステータス) が含まれます。すべてのレコードの注文ステータスは O です。

      • グラフ表示

        データ可視化設定パネルで、グラフの種類を折れ線グラフに設定し、X 軸フィールドに O_ORDERDATE を、Y 軸フィールドに [Total] O_ORDERKEY を選択します。これにより、注文日で集計された O_ORDERKEY の傾向線グラフが生成されます。

  5. SQL ステートメントが正常に実行された後、その結果セットを他の SQL セルで変数として参照できます。変数の名前を変更することもできます。

    たとえば、SQL クエリの結果として、SQL_949364 という名前の変数が自動的に作成されます。Python コードセルで SQL_RES=SQL_949364 を実行して、結果を SQL_RES という名前のカスタム変数に割り当てます。戻り値は pandas DataFrame です。

  6. データ傾向の予測

    1. セルで次のコードを実行して、Python の機械学習パッケージをインストールします。

      pip install pandas numpy matplotlib scikit-learn
    2. パッケージがインストールされた後、Python コードを入力してデータを予測し、結果を可視化します。

次のステップ

AI エージェントの公開

よくある質問

Q:誰がノートブックドキュメントを閲覧できますか?

A:同じワークスペースとテナントのメンバーのみが閲覧できます。対象ユーザーが現在のテナントにいない場合は、そのユーザーをワークスペースの作成者と同じテナントに追加してから、そのユーザーをワークスペースのメンバーとして追加します。