Microsoft Fabric Notebookの使用方法

Microsoft Fabric Notebookは、Apache Spark ジョブと機械学習実験を開発するための主要なコード項目です。 これは、データ サイエンティストやデータ エンジニアが、豊富な視覚化と Markdown テキストの恩恵を受けながらコードを記述するために使用する、Web ベースの対話型サーフェスです。 データ エンジニアは、データ インジェスト、データ準備、データ変換のためのコードを作成します。 データ サイエンティストは、実験やモデルの作成、モデルの追跡、展開などの機械学習ソリューションを構築するためにNotebookも使用します。

Fabric Notebookを使用すると、次のことが可能になります。

  • 設定作業をせずに使用を開始する。
  • 直感的なローコード エクスペリエンスにより、データを簡単に探索して処理できます。
  • 組み込みのエンタープライズ セキュリティ機能を使用してデータを安全に保つ。
  • 強力な Spark 機能を使用して、未加工の形式 (CSV、txt、JSON など)、処理されたファイル形式 (parquet、Delta Lake など) にわたるデータを分析する。
  • 高度な作成機能と組み込みのデータの視覚化で生産性を高める。

この記事では、データ サイエンスおよびデータ エンジニアリングのエクスペリエンスでNotebookを使用する方法について説明します。

Notebookの実行のセキュリティ コンテキスト

Notebookの実行は、異なるシナリオを満たす完全な柔軟性を備えた、Fabric の 3 つの異なる方法によってトリガーできます。

  • 対話型実行: ユーザーは、さまざまな UX エントリを使用するか、REST API を呼び出して、手動で実行をトリガーします。 実行は、現在のユーザーのセキュリティ コンテキストで実行されます。
  • パイプライン アクティビティとして実行: 実行は Fabric Data Factory パイプラインからトリガーされます。 詳細な手順は、 Notebook アクティビティにあります。 実行は、パイプライン所有者のセキュリティ コンテキストで実行されます。
  • スケジューラ: スケジューラ プランから実行がトリガーされます。 実行は、スケジューラ プランを設定または更新するユーザーのセキュリティ コンテキストで実行されます。

セキュリティ コンテキストが異なるこれらの実行オプションの柔軟性により、さまざまなシナリオや要件を満たすことができますが、Notebookを設計および開発するときにセキュリティ コンテキストを認識する必要もあります。そうしないと、予期しない動作やセキュリティの問題が発生する可能性があります。

Notebookが初めて作成されると、コードを確認せずに実行するリスクを通知する警告メッセージが表示されます。

実行中のNotebookの警告を示すスクリーンショット。

セキュリティの問題を回避するために役立つベスト プラクティスを次に示します。

  • Notebookを手動で実行する前に、Notebookの設定を開き、[バージョン情報] パネルの下にある [詳細] セクションで変更の更新プログラムを確認し、最新の変更で問題がないことを確認します。
  • パイプラインにNotebook アクティビティを追加する前に、Notebookの設定を開き、[バージョン情報] パネルの [詳細] セクションで変更の更新を確認し、最新の変更で問題がないことを確認します。 最新の変更が不明な場合は、パイプラインに追加する前に、Notebookを開いて変更を確認することをお勧めします。
  • スケジューラ プランを更新する前に、Notebookの設定を開き、[バージョン情報] パネルの下にある [詳細] セクションで変更の更新プログラムを確認し、最新の変更で問題がないことを確認します。 最新の変更がわからない場合は、スケジューラ プランを更新する前に、Notebookを開いて変更を確認することをお勧めします。
  • ワークスペースを異なるステージ (開発、テスト、運用) に分離し、セキュリティの問題を回避するために、異なるステージのアクセスを制御します。 信頼できるユーザーのみを prod ステージに追加します。

Notebookを作成する

新しいNotebookを作成することも、既存のNotebookをインポートすることもできます。

新しいNotebookを作成する

他の標準的な Fabric 項目の作成プロセスと同様に、Fabric Data Engineering ホームページ、ワークスペースの [新規] オプション、または [ハブの作成] から新しいNotebookを簡単に作成できます。

既存のNotebookをインポートする

Data Engineering または Data Science のホームページから、ローカル コンピューターから Fabric ワークスペースに 1 つ以上の既存のNotebookをインポートできます。 Fabric Notebookは、標準の Jupyter Notebook .ipynb ファイル、および .py、.scala、.sql などのソース ファイルを認識し、それに応じて新しいNotebook項目を作成します。

[新規] メニューのNotebook オプションの場所を示すスクリーンショット。

Notebookをエクスポートする

Notebookを他の標準形式にエクスポートできます。 Synapse Notebookは以下にエクスポートできます。

  • Jupyter Notebookで使用される標準Notebook ファイル (.ipynb)。
  • ブラウザーから直接開くことができる HTML ファイル (.html)。
  • Python ファイル (.py)。
  • Latex ファイル (.tex)。

Notebookをエクスポートする場所を示すスクリーンショット。

Notebookを保存する

Fabric では、Notebookを開いて編集すると、デフォルトでNotebookが自動的に保存されます。コードの変更が失われることを心配する必要はありません。 [コピーの保存] を使用して、現在のワークスペースまたは別のワークスペースに別のコピーのクローンを作成することもできます。

コピーの保存場所を示すスクリーンショット。

Notebookを手動で保存したい場合は、手動保存オプションに切り替えてNotebook項目のローカル ブランチを作成してから、[保存] または [CTRL+s] を使用して変更を保存することができます。

手動保存を切り替える場所を示すスクリーンショット。

[編集]->[保存オプション]->[手動] を選択して手動保存モードに切り替えることもできます。 Notebookのローカル ブランチをオンにしてから手動で保存するには、[保存] を選択するか、Ctrl + s キーボード ショートカットを使用します。

LakehouseとNotebookを接続する

Fabric Notebookは、Lakehouseとの緊密な対話をサポートするようになりました。Lakehouse エクスプローラーから新規または既存のLakehouseを簡単に追加できます。

Lakehouse エクスプローラーでさまざまなLakehouseに移動し、1 つのLakehouseを固定してデフォルトとして設定できます。 その後、デフォルトではランタイム作業ディレクトリにマウントされ、ローカル パスを使用してデフォルトのLakehouseの読み取りまたは書き込みができるようになります。

デフォルトのLakehouseを固定する場所を示すスクリーンショット。

Note

新しいLakehouseを固定するか、デフォルトのLakehouseの名前を変更した後、セッションを再起動する必要があります。

Lakehouseを追加または削除する

Lakehouse名の横にある [X] アイコンを選択すると、LakehouseがNotebook タブから削除されますが、Lakehouse項目はワークスペースに残ります。

[Lakehouseの追加] を選択して、既存のLakehouseを追加するか、新しいLakehouseを作成して、さらにLakehouseをNotebookに追加します。

Lakehouse ファイルを調べる

Lake ビューの TablesFiles セクションにあるサブフォルダーとファイルは、Lakehouse リストとNotebook コンテンツの間のコンテンツ領域に表示されます。 TablesFiles セクションで別のフォルダーを選択して、コンテンツ領域を更新します。

フォルダーとファイルの操作

マウスの右クリックでファイル (.csv、.parquet、.txt、.jpg、.png など) を選択すると、データの読み込みには Spark API または Pandas API を使用できます。 新しいコード セルが生成され、フォーカス セルの下に挿入されます。

選択したファイルまたはフォルダーとは異なる形式のパスを簡単にコピーし、コード内で対応するパスを使用できます。

Lakehouse内のファイルのコンテキスト メニューを示すスクリーンショット。

Notebook のリソース

Notebook リソース エクスプローラーは、フォルダーとファイルの管理に役立つ Unix のようなファイル システムを提供します。 コード モジュール、セマンティック モデル、イメージなどの小さなサイズのファイルを保存できる書き込み可能なファイル システム スペースを提供します。 ローカル ファイル システムを操作しているかのように、Notebook内のコードを使用して簡単にアクセスできます。

Notebook リソースのアニメーション GIF。

この組み込みフォルダーは、Notebook インスタンスごとのシステム定義済みフォルダーです。 現在のNotebookの依存関係を格納するために、最大 500 MB のストレージが保持されます。 Notebook リソースの主な機能は次のとおりです。

  • UI を通じて、作成/削除、アップロード/ダウンロード、ドラッグ/ドロップ、名前変更、複製、検索などの一般的な操作を使用できます。
  • builtin/YourData.txt のような相対パスを使用すると、すばやく探索できます。 mssparkutils.nbResPath メソッドは完全なパスの作成に役立ちます。
  • [Lakehouse への書き込み] オプションを使用して、検証済みのデータをLakehouseに簡単に移動できます。 Fabric には、すぐに使い始められるように、一般的なファイル タイプ用の豊富なコード スニペットが埋め込まれています。
  • これらのリソースは、mssparkutils.notebook.run() を介してリファレンス Notebookの実行ケースでも使用できます。

Note

  • 現在、Fabric では、.py.whl.jar.txt.json.yml.xml.csv.html.png.jpg.xlsx ファイルなど、特定のファイル タイプを UI を通じてアップロードすることがサポートされています。 コードを使用して、リストにないファイル タイプの組み込みフォルダーに書き込むことができます。ただし、Fabric Notebookは、サポートされていないファイル タイプでのコード スニペットの生成をサポートしません。
  • 各ファイルのサイズは 50MB 未満である必要があり、組み込みフォルダーでは合計で最大 100 個のファイル/フォルダー インスタンスが許可されます。
  • mssparkutils.notebook.run() を使用する場合は、mssparkutils.nbResPath コマンドを使用して対象のNotebook リソースにアクセスします。 相対パス “builtin/” は常にルート Notebookの組み込みフォルダーを指します。

Notebookで共同作業を行う

Fabric Notebookは、複数のユーザーによる同じNotebookの編集をサポートする共同作業項目です。

Notebookを開くと、デフォルトで共同編集モードになり、Notebookの編集内容はすべて自動的に保存されます。 同僚が同時に同じNotebookを開いた場合は、同僚のプロファイル、実行出力、カーソル インジケーター、選択インジケーター、編集トレースが表示されます。 共同作業機能を使用することで、ペア プログラミング、リモート デバッグ、個別指導のシナリオを簡単に実行できます。

別のユーザーが編集しているコード セルを示すスクリーンショット。

Notebookを共有する

Notebookの共有は、チーム メンバーと共同作業を行うための便利な方法です。 承認されたワークスペース ロールは、デフォルトでNotebookを表示または編集/実行できます。 指定したアクセス許可が付与されたNotebookを共有できます。

  1. Notebook ツールバーの [共有] を選択します。

    [共有] を選択する場所を示すスクリーンショット。

  2. このNotebookを表示できるユーザーに対応するカテゴリを選択します。 受信者の [共有][編集]、または [実行] アクセス許可を選択できます。

    [アクセス許可] を選択する場所を示すスクリーンショット。

  3. [適用] を選択した後、Notebookを直接送信するか、リンクを他のユーザーにコピーできます。 その後、受信者は、アクセス許可レベルによって付与された対応するビューを使用してNotebookを開くことができます。

    リンクを作成して送信する場所を示すスクリーンショット。

  4. Notebookのアクセス許可をさらに管理するには、[Workspace アイテム list] (ワークスペース項目の一覧)>[その他のオプション] を選択してから、[アクセス許可の管理] を選択します。 その画面から、既存のNotebookのアクセスとアクセス許可を更新できます。

    ワークスペースでアクセス許可を管理する場所を示すスクリーンショット。

コード セルにコメントを付ける

コメントは、共同作業のシナリオで役立つもう 1 つの機能です。 現在、Fabric ではセルレベルのコメントの追加がサポートされています。

  1. Notebookのツールバーまたはセルのコメント インジケーターの [コメント] ボタンを選択して、[コメント] ウィンドウを開きます。

    コメントを選択する場所を示すスクリーンショット。

  2. コード セルでコードを選択し、[コメント] ペインで [新規] を選択してコメントを追加し、[コメントの投稿] を選択して保存します。

    [+ 新規] を選ぶ場所を示すスクリーンショット。

  3. 必要な場合は、コメントの横にある [その他] オプションを選択して、コメントの編集スレッドの解決スレッドの削除オプションを見つけます。

コメント内の他のユーザーをタグ付けする

"タグ付け" とは、コメント スレッドでユーザーにメンションして通知し、詳細に対する共同作業を効率的に強化することを指します。

  1. セル内のコードセクションと新しいコメント スレッドを選択します。

  2. ユーザー名を入力し、特定のセクションについて話し合うために他のユーザーをメンションする場合は、候補リストで正しいものを選択します。

  3. 分析情報を共有し、投稿します。

  4. 電子メールによる通知がトリガーされ、ユーザーは [コメントを開く] リンクをクリックして、このセルをすばやく見つけます。

  5. さらに、アクセス権を持たないユーザーにタグを付けるときに、ユーザーのアクセス許可を承認して構成し、コード資産が適切に管理されるようにします。

コメントで他のユーザーをタグ付けするアニメーション GIF。

Note

コメント項目の場合、1 時間以内にコメントを更新した場合、タグ付けされたユーザーは電子メールによる通知を受信しなくなります。 ただし、新しくタグ付けされたユーザーに電子メールによる通知が送信されます。

Notebook モードの切り替え

Fabric Notebookは 2 つのモードをサポートしており、編集モードと表示モードを簡単に切り替えることができます。

モードの切り替え先を示すスクリーンショット。

  • 編集モード: セルを編集して実行し、Notebook上で他のユーザーと共同作業することができます。
  • 表示モード: Notebookのセルの内容、出力、コメントのみを表示できます。 Notebookに変更を加える操作はすべて無効になります。