Microsoft Fabric ノートブックは、Apache Spark ジョブと機械学習の実験を開発するための主要なコード項目です。 これは、データ サイエンティストやデータ エンジニアが豊富な視覚化と Markdown テキストを利用してコードを記述するために使用する、Web ベースの対話型surfaceです。 データ エンジニアは、データ インジェスト、データ準備、データ変換のためのコードを作成します。 データ サイエンティストは、ノートブックを使用して、実験とモデルの作成、モデルの追跡、デプロイなど、machine learningソリューションを構築します。
Fabric ノートブックを使用すると、次のことができます。
- セットアップ作業なしで始めましょう。
- 直感的なローコード エクスペリエンスにより、データを簡単に探索して処理できます。
- 組み込みのエンタープライズ セキュリティ機能を使用してデータを安全に保つ。
- 強力な Spark 機能を使用して、未加工の形式 (CSV、txt、JSON など)、処理されたファイル形式 (parquet、Delta Lake など) にわたるデータを分析する。
- 高度な作成機能と組み込みのデータの視覚化で生産性を高める。
- コンテキスト対応のコード生成、リファクタリング、およびノートブック全体の検証にCopilotを活用します。
- 承認ベースのコード変更を含む、Copilotを使用した修正プログラムを使用して、失敗したセルまたは Spark ジョブをすばやく診断して修復します。
この記事では、データ サイエンスおよびデータ エンジニアリングのエクスペリエンスでNotebookを使用する方法について説明します。
ノートブックの実行におけるセキュリティコンテキスト
ノートブックの実行は、それぞれ異なるセキュリティ コンテキストを持つ 3 つの方法でトリガーできます。
- 対話型実行: UI または REST API を使用して手動で実行をトリガーします。 ノートブックは、セキュリティ コンテキスト (現在のユーザー) で実行されます。
- パイプライン アクティビティとして実行: 実行は Fabric Data Factory のパイプラインから開始されます。 詳細については、 Notebook アクティビティ を参照してください。 ノートブックは、パイプライン所有者またはノートブック所有者ではなく、 パイプラインの最後に変更されたユーザーの ID で実行されます。 つまり、パイプラインを最後に編集したユーザーが、データ access、API 呼び出し、アクセス許可のセキュリティ コンテキストを決定します。
- スケジューラ: スケジュールされた実行から実行がトリガーされます。 ノートブックは、スケジュールを作成または最後に更新したユーザーの ID で実行されます。
API を使用して実行を自動化する
ジョブ スケジューラ API を使用して、必要に応じてノートブックを実行することもできます。 API によってトリガーされる実行では、パラメーター化された実行、セッション構成 (コンピューティング仮想コアや Spark 設定など)、環境とランタイムの選択、ターゲットの Fabric Lakehouse の選択がサポートされます。 同じ API を使用して、実行状態を監視し、ジョブ インスタンスを取り消すことができます。 実行は、外部スケジューラと Fabric パイプラインが読み取ることができる終了値を返して、条件付きオーケストレーションとダウンストリーム シグナリングを有効にします。
Items REST API とジョブ スケジューラ API はどちらも、セキュリティで保護された無人オートメーションと CI/CD のサービス プリンシパル認証をサポートします。 一部のダウンストリーム サービス (T-SQL エンドポイントなど) はサービス プリンシパルをサポートせず、ユーザー プリンシパルを必要とします。
これらの実行オプションを使用すると、さまざまなシナリオに柔軟に対応できますが、ノートブックを実行する ID を理解する必要があります。 セキュリティ コンテキストは、データaccessアクセス許可、API 呼び出し承認、およびリソースの可用性に影響します。
ノートブックが初めて作成されたときに、コードを確認せずに実行するリスクを通知する警告メッセージが表示されます。
セキュリティの問題を回避するには、次のベスト プラクティスに従います。
- ノートブックを手動で実行する前に:ノートブックを最後に変更したユーザーを確認し、 バージョン履歴 パネルを使用して実際のコンテンツの変更を確認してから、記述しなかったコードを実行します。
- ノートブックをパイプラインに追加する前に:ノートブックがそのユーザーの ID で実行されるため、パイプラインを最後に変更したユーザーを確認します。 パイプラインからノートブックを開き、最新のコンテンツを確認します。 ID に必要なアクセス許可がない場合 (または、特定の API のサービス プリンシパルではなくユーザー プリンシパルが必要な場合) は、適切なユーザーにパイプラインを編集して、最後に変更された ID を更新させます。
- スケジュールを作成または更新する前: ノートブックは、スケジュールを作成または更新するユーザーの ID で実行されます。 ユーザーがノートブック内のすべての操作に必要なアクセス許可を持っていることを確認します。
- ワークスペース ステージを使用する: ワークスペースを開発、テスト、および prod ステージに分割します。 運用ワークスペースへのaccessを信頼されたユーザーのみに制限します。
ノートを作成する
新しいNotebookを作成することも、既存のNotebookをインポートすることもできます。
新しいNotebookを作成する
他の標準Fabricアイテム作成プロセスと同様に、Fabric Data Engineering ホームページ、ワークスペース New オプション、または Create Hub から新しいノートブックを簡単に作成できます。
特定のワークフローの詳細なノートブック作成ガイダンスについては、次を参照してください。
- Fabric ポータルでレイクハウス コンテキストからノートブックを作成するためのノートブックを使用して、lakehouse 内のデータを展開します。
- VS Code からノートブックを作成するための Visual Studio Code を使用してMicrosoft Fabricのノートブックを認証します。
- Items REST API (CRUD 操作) を使用してノートブックを作成および管理するためのノートブック用のパブリック API。
- ジョブ スケジューラ API を利用してノートブックをオンデマンドで実行し、パラメーター化、セッション構成、環境とLakehouseの選択、実行の監視、およびキャンセルを行います。
既存のNotebookをインポートする
ワークスペース ツール バーのエントリを使用して、ローカル コンピューターから 1 つ以上の既存のノートブックをインポートできます。 ノートブックFabric、標準の Jupyter Notebook .ipynb ファイルを認識します。 .py、.scala、.sql などのソース ファイルを作成し、それに応じて新しいノートブック項目を作成します。
Notebookをエクスポートする
Notebookを他の標準形式にエクスポートできます。 Fabric ノートブックは次の形式にエクスポートできます。
Notebookを保存する
Fabricでは、ノートブックを開いて編集した後、ノートブックは既定で自動的に保存されます。コードの変更が失われる心配はありません。 [コピーの保存] を使用して、現在のワークスペースまたは別のワークスペースに別のコピーのクローンを作成することもできます。
Notebookを手動で保存したい場合は、手動保存オプションに切り替えてNotebook項目のローカル ブランチを作成してから、[保存] または [CTRL+s] を使用して変更を保存することができます。
[編集]->[保存オプション]->[手動] を選択して手動保存モードに切り替えることもできます。 Notebookのローカル ブランチをオンにしてから手動で保存するには、[保存] を選択するか、Ctrl + s キーボード ショートカットを使用します。
LakehouseとNotebookを接続する
Fabricノートブックでは、レイクハウスとの密接な対話がサポートされるようになりました。Lakehouse エクスプローラーから新規または既存のレイクハウスを簡単に追加できます。
Lakehouse エクスプローラーでさまざまなLakehouseに移動し、1 つのLakehouseを固定してデフォルトとして設定できます。 その後、デフォルトの設定がランタイム作業ディレクトリにマウントされ、ローカルパスを使用してデフォルトのレイクハウスに対して読み取りや書き込みを行うことができます。
注
新しいLakehouseを固定するか、デフォルトのLakehouseの名前を変更した後、セッションを再起動する必要があります。
Lakehouseを追加または削除する
Lakehouse名の横にある [X] アイコンを選択すると、LakehouseがNotebook タブから削除されますが、Lakehouse項目はワークスペースに残ります。
[Lakehouseの追加] を選択して、既存のLakehouseを追加するか、新しいLakehouseを作成して、さらにLakehouseをNotebookに追加します。
レイクハウス ファイルを調べる
Lake ビューの Tables と Files セクションにあるサブフォルダーとファイルは、Lakehouse リストとNotebook コンテンツの間のコンテンツ領域に表示されます。 Tables と Files セクションで別のフォルダーを選択して、コンテンツ領域を更新します。
フォルダーとファイルの操作
右クリックでファイル (.csv,.parquet、.txt、.jpg、.pngなど) を選択した場合は、Spark または Pandas API を使用してデータを読み込むことができます。 新しいコード セルが生成され、フォーカス セルの下に挿入されます。
選択したファイルまたはフォルダーとは異なる形式のパスを簡単にコピーし、コード内で対応するパスを使用できます。
Notebook のリソース
Notebook リソース エクスプローラーは、フォルダーとファイルの管理に役立つ Unix のようなファイル システムを提供します。 コード モジュール、セマンティック モデル、イメージなどの小さなサイズのファイルを保存できる書き込み可能なファイル システム スペースを提供します。 ローカル ファイル システムを使用しているかのように、ノートブック内のコードを使用して簡単にaccessできます。
注
- 組み込みフォルダーと環境フォルダーはいずれも最大リソース ストレージは 500 MB であり、1 つのファイル サイズは最大 100 MB です。 どちらも合計で最大 100 個のファイルおよびフォルダー インスタンスを使用できます。
-
notebookutils.notebook.run()を使用する場合は、notebookutils.nbResPathコマンドを使用してターゲット ノートブック リソースをaccessします。 相対パス builtin/ は常にルート ノートブックの組み込みフォルダーを指します。
注
Resources フォルダー (組み込みと環境の両方) 内のファイルと、インライン コマンド ( %pip install や install.packages()など) を使用してインストールされたライブラリは、現在のノートブック セッションにスコープが設定されます。 それらは、クイック モードまたはフル モードで環境を発行しても影響を受けません。
組み込みのリソース フォルダー
組み込みのリソース フォルダーは、各ノートブックに固有のシステム定義フォルダーです。 組み込みのリソース フォルダーを使用して、現在のノートブックで使用されているデータをstorageすることをお勧めします。 ノートブック リソースの主な機能は次のとおりです。
- UI を通じて、作成/削除、アップロード/ダウンロード、ドラッグ/ドロップ、名前変更、複製、検索などの一般的な操作を使用できます。
-
builtin/YourData.txtのような相対パスを使用すると、すばやく探索できます。notebookutils.nbResPathメソッドは完全なパスの作成に役立ちます。 - [Lakehouse への書き込み] オプションを使用して、検証済みのデータをLakehouseに簡単に移動できます。 Fabricには、一般的な種類のファイル用の豊富なコード スニペットが埋め込まれており、すぐに使い始めることができます。
- これらのリソースは、「リファレンスノートブック実行」ケースでもを介して使用できます。
環境リソース フォルダー
環境リソース フォルダーは、複数のノートブック間のコラボレーションを効率化するように設計された共有リポジトリです。
環境内には [リソース] タブがあり、ここでリソース ファイルを管理する操作をすべて行うことができます。 ノートブックを現在の環境にアタッチすると、これらのファイルを複数のノートブック間で共有できます。
[ノートブック] ページでは、アタッチされた環境から継承された [リソース] の下に、2 つ目のルート フォルダーを簡単に確認できます。
組み込みのリソース フォルダーと同じファイル/フォルダーを操作することもできます。
環境リソース パスは、ノートブック クラスターに自動的にマウントされます。 相対パス /env を使用して、環境リソースをaccessできます。
Fabric環境では、ライブラリをノートブック セッションに配信する方法に影響する 2 つのライブラリ発行モードがサポートされています。
- クイック モード では、約 5 秒で発行され、ノートブック セッションの開始時にライブラリがインストールされます。 クイック モードでは、フル モードで発行されたライブラリ バージョンをオーバーライドできますが、現在のセッションに対してのみ有効です。
- フル モード では、安定した再現可能なライブラリ スナップショットが作成されます。 通常、発行には 3 ~ 6 分かかり、セッションの起動では依存関係のデプロイに 1 ~ 3 分かかります。 カスタム ライブ プールでフル モードを使用すると、安定したスナップショットを維持しながら、セッションの開始時刻を約 5 秒に戻すことができます。
各モードの詳細については、Fabric環境の Manage ライブラリを参照してください。
ノートブックで環境ライブラリを使用する
ワークフローに基づいてライブラリ発行モードを選択します。
- 反復開発のクイック モード: ノートブックでアクティブに実験していて、高速なライブラリの反復が必要な場合は、クイック モードを使用します。 ライブラリは、最小限の発行時間でセッション開始時にインストールされます。
- 再現性のためのフル モード: コラボレーター、スケジュールされた実行、またはパイプライン ジョブ間で一貫したライブラリ バージョンが必要な場合は、フル モードを使用します。 スナップショットにより、すべてのセッションが同じ依存関係で開始されます。
- 高速かつ安定したセッション用のカスタム ライブ プールを備えたフル モード: 高速セッションの起動と再現性の両方が重要な場合は、 カスタム ライブ プールでフル モードを構成します。 この組み合わせにより、安定したライブラリ スナップショットを保持しながら、約 5 秒のセッションが開始されます。
注
高 コンカレンシー セッションでは、相対パスを使用した読み取り/書き込みが機能していません。
ファイル エディター
ファイル エディターを使用すると、ユーザーが、ノートブックのリソース フォルダーおよびノートブックの環境リソース フォルダー内で、ファイルを直接表示および編集することができます。 サポートされているファイルの種類には、CSV、TXT、HTML、YML、PY、SQL などがあります。 ファイル エディターを使用すると、ノートブック内のファイルを簡単にaccessおよび変更できます。キーワードの強調表示をサポートし、.py や .sql などのコード ファイルを開いて編集するときに必要な言語サービスを提供します。
この機能は、ファイル メニューの 'View and edit' を使用してaccessできます。 ファイルをダブルクリックする方がより早い方法です。
ファイル エディターのコンテンツ変更は、
[保存] ボタンまたはキーボード ショートカットをクリックして手動で 保存する必要があります。Ctrl + S、ファイル エディターでは自動保存はサポートされません。 ノートブック モード は、ファイル エディターにも影響します。 編集アクセス許可のないノートブック モードでは、ファイルの表示のみが可能ですが、編集することはできません。
注
ファイル エディターにはいくつかの制限があります。
- ファイル サイズの制限は 1 MB です。
- 次のファイルの種類は表示と編集がサポートされていません: .xlsx と .parquet。
Notebookで共同作業を行う
Fabric ノートブックは、同じノートブックの編集を複数のユーザーがサポートする共同作業項目です。
ノートブックを開くと、既定で共同編集モードに入り、ノートブックのすべての編集が自動的に保存されます。 同僚が同時に同じNotebookを開いた場合は、同僚のプロファイル、実行出力、カーソル インジケーター、選択インジケーター、編集トレースが表示されます。 共同作業機能を使用することで、ペア プログラミング、リモート デバッグ、個別指導のシナリオを簡単に実行できます。
ノートブックでCopilotを使用する
Copilotは、ワークスペース、アタッチされた Lakehouse スキーマ、テーブル、ファイル、ノートブックの構造、および現在のランタイム状態をすぐにコンテキスト認識します。 Copilotがサポートを開始するためにセッションを開始する必要はありません。 Copilotでは、複数ステップ、ノートブック全体のコード生成、リファクタリング、要約、検証がワークフロー全体でサポートされているため、コンテキストを失うことなくセル間で作業できます。
Copilotからのパフォーマンスの分析情報
Copilot、データ サイズ、結合パターン、ランタイム動作に基づくパフォーマンス ガイダンスが表示されます。 たとえば、効率的な結合戦略を推奨したり、コストのかかるシャッフルを回避したり、再利用可能な関数へのリファクタリングを提案したり、実行中に観察された潜在的なデータ品質の問題を強調したりできます。 これらの分析情報は、Copilot会話の一部として表示され、/optimize コマンドと一致します。
Copilotを使用したトラブルシューティング
セルまたは Spark ジョブが失敗すると、失敗したセルの下に fix with Copilot オプションが表示されます。 エラーの概要、根本原因の分析、および推奨される修正プログラムが提供されます。 Copilotは、コミットする前に確認できるように、承認の差分を使用してコード変更を自動適用できます。
/fix コマンドを使用して、Copilot チャットで特定のセルまたはノートブック全体に対してターゲット診断を実行することもできます。 詳細については、「Copilot を使用してノートブックの障害を診断する」を参照してください。
Notebookを共有する
Notebookの共有は、チーム メンバーと共同作業を行うための便利な方法です。 承認されたワークスペース ロールは、デフォルトでNotebookを表示または編集/実行できます。 指定したアクセス許可が付与されたNotebookを共有できます。
Notebook ツールバーの [共有] を選択します。
このノートを閲覧できるユーザーに対応するカテゴリを選択してください。 受信者の [共有]、[編集]、または [実行] アクセス許可を選択できます。
[適用] を選択した後、Notebookを直接送信するか、リンクを他のユーザーにコピーできます。 その後、受信者は、アクセス許可レベルによって付与された対応するビューを使用してNotebookを開くことができます。
ノートブックのアクセス許可をさらに管理するには、[ワークスペース項目の一覧]>[その他のオプション] を選択してから、[アクセス許可の管理] を選択します。 その画面から、既存のノートブックのアクセスとアクセス許可を更新できます。
コード セルにコメントを付ける
コメントは、共同作業のシナリオで役立つもう 1 つの機能です。 現在、Fabricではセル レベルのコメントの追加がサポートされています。
Notebookのツールバーまたはセルのコメント インジケーターの [コメント] ボタンを選択して、[コメント] ウィンドウを開きます。
コード セルでコードを選択し、[コメント] ペインで [新規] を選択してコメントを追加し、[コメントの投稿] を選択して保存します。
必要な場合は、コメントの横にある [その他] オプションを選択して、コメントの編集、スレッドの解決、スレッドの削除オプションを見つけます。
コメント内の他のユーザーをタグ付けする
"タグ付け" とは、コメント スレッドでユーザーにメンションして通知し、詳細に対する共同作業を効率的に強化することを指します。
セル内のコードセクションと新しいコメント スレッドを選択します。
特定のセクションに関するディスカッションで他のユーザーにメンションを付ける場合は、ユーザー名を入力し、候補リストから正しいものを選択します。
分析情報を共有し、投稿します。
電子メール通知がトリガーされ、ユーザーは [コメントを開く] リンク
クリックして、このセルをすばやく見つけます。 さらに、accessを持たないユーザーにタグを付けるときに、ユーザーのアクセス許可を承認して構成し、コード資産が適切に管理されていることを確認します。
注
コメント アイテムの場合、1 時間以内にコメントを更新した場合、タグ付けされたユーザーは電子メール通知を受信しなくなります。 ただし、新しいタグ付けされたユーザーに電子メール通知が送信されます。
バージョン履歴
重要
この機能はプレビュー段階にあります。
バージョン履歴を使用すると、ライブ ノートブックの変更を簡単にバージョン管理できます。 これは、堅牢な組み込みのバージョン管理機能を備えた履歴追跡とノートブック管理をサポートします。これは、同じノートブック上の複数の共同作成者との共同作業に特に役立ちます。
ノートブックのグローバル ツール バーからバージョン history をAccessします。
Notebook では、チェックポイントを作成する 2 つの方法がサポートされています。
ノートブックのマルチソース チェックポイント処理
Fabricノートブックは、Git、デプロイ パイプライン、Visual Studio Codeとシームレスに統合されます。 保存された各バージョンは、ノートブックのバージョン履歴に自動的にキャプチャされます。 バージョンは、ノートブック内の直接編集、Git 同期、デプロイ パイプライン アクティビティ、または VS Code を使用した発行から発生する可能性があります。 各バージョンのソースには、完全な追跡可能性を提供するために、バージョン履歴に明確なラベルが付けられます。
チェックポイントをクリックすると、の差分ビューを開くことができます。選択したチェックポイントと現在のライブ バージョンのコンテンツの違い (セルの内容、セルの出力、メタデータの違いなど) が強調表示されます。 このチェックポイントのバージョンは、[その他のオプション] メニュー
個別に管理できます。 以前のバージョンを保持する場合は、チェックポイントドロップダウン メニューからバージョンを管理できます。チェックポイントから 復元 をクリックして現在のノートブックを上書きするか、 コピーとして保存 を使用して新しいノートブックに複製します。
注
ノートブック モードの切り替え
Fabricノートブックでは、Develop、Run only、Edit、View の 4 つのモードを切り替えることができます。 各モードは、一連のアクセス許可に合わせて調整されます。
ノートブックを共有するときは、ユーザーにアクセス許可を割り当てます。 これらのアクセス許可に基づいて、ユーザーはアクセスして使用可能なモードを切り替えることができます。
- 開発モード: 読み取り、実行、書き込みのアクセス許可が必要です。
- 実行専用モード: 読み取りと実行のアクセス許可が必要です。
- 編集モード: 読み取りと書き込みのアクセス許可が必要です (実行できません)。
- 表示モード: 読み取りアクセス許可が必要です。
アクセス許可とアクセス権
アクセス許可は、Microsoft Fabricのワークスペースまたはノートブック レベルで設定できます。 ユーザーがアクセスできるモードを決定します。
- アクセス許可により、使用可能なモードのセットが制限されます。
- ユーザーのモードは自動的には選択されません。
- モードでは、許可されているアクセス許可を超える機能を付与することはできません。
関連するコンテンツ
- ノートブックの作成と実行
- データ エンジニアリングとデータ サイエンスのCopilotの概要
- Fabric 環境でのライブラリの管理
Copilot でノートブックの故障を診断する - ジョブ スケジューラ REST API リファレンス
