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を開いて変更を確認することをお勧めします。
- ワークスペースを異なるステージ (開発、テスト、運用) に分離し、セキュリティの問題を回避するために、異なるステージのアクセスを制御します。 信頼できるユーザーのみを prod ステージに追加します。
Notebookを作成する
新しいNotebookを作成することも、既存のNotebookをインポートすることもできます。
新しいNotebookを作成する
他の標準的な Fabric 項目の作成プロセスと同様に、Fabric Data Engineering ホームページ、ワークスペースの [新規] オプション、または [ハブの作成] から新しいNotebookを簡単に作成できます。
既存のNotebookをインポートする
ワークスペース ツール バーのエントリを使用して、ローカル コンピューターから 1 つ以上の既存のノートブックをインポートできます。 Fabric Notebookは、標準の Jupyter Notebook .ipynb ファイル、および .py、.scala、.sql などのソース ファイルを認識し、それに応じて新しいNotebook項目を作成します。
Notebookをエクスポートする
Notebookを他の標準形式にエクスポートできます。 ノートブックは次の形式でエクスポートできます:
- Jupyter Notebookで使用される標準Notebook ファイル (.ipynb)。
- ブラウザーから直接開くことができる HTML ファイル (.html)。
- Python ファイル (.py)。
- Latex ファイル (.tex)。
Notebookを保存する
Fabric では、Notebookを開いて編集すると、デフォルトでNotebookが自動的に保存されます。コードの変更が失われることを心配する必要はありません。 [コピーの保存] を使用して、現在のワークスペースまたは別のワークスペースに別のコピーのクローンを作成することもできます。
Notebookを手動で保存したい場合は、手動保存オプションに切り替えてNotebook項目のローカル ブランチを作成してから、[保存] または [CTRL+s] を使用して変更を保存することができます。
[編集]->[保存オプション]->[手動] を選択して手動保存モードに切り替えることもできます。 Notebookのローカル ブランチをオンにしてから手動で保存するには、[保存] を選択するか、Ctrl + s キーボード ショートカットを使用します。
LakehouseとNotebookを接続する
Fabric Notebookは、Lakehouseとの緊密な対話をサポートするようになりました。Lakehouse エクスプローラーから新規または既存のLakehouseを簡単に追加できます。
Lakehouse エクスプローラーでさまざまなLakehouseに移動し、1 つのLakehouseを固定してデフォルトとして設定できます。 その後、デフォルトではランタイム作業ディレクトリにマウントされ、ローカル パスを使用してデフォルトのLakehouseの読み取りまたは書き込みができるようになります。
Note
新しいLakehouseを固定するか、デフォルトのLakehouseの名前を変更した後、セッションを再起動する必要があります。
Lakehouseを追加または削除する
Lakehouse名の横にある [X] アイコンを選択すると、LakehouseがNotebook タブから削除されますが、Lakehouse項目はワークスペースに残ります。
[Lakehouseの追加] を選択して、既存のLakehouseを追加するか、新しいLakehouseを作成して、さらにLakehouseをNotebookに追加します。
Lakehouse ファイルを調べる
Lake ビューの Tables と Files セクションにあるサブフォルダーとファイルは、Lakehouse リストとNotebook コンテンツの間のコンテンツ領域に表示されます。 Tables と Files セクションで別のフォルダーを選択して、コンテンツ領域を更新します。
フォルダーとファイルの操作
マウスの右クリックでファイル (.csv、.parquet、.txt、.jpg、.png など) を選択すると、データの読み込みには Spark API または Pandas API を使用できます。 新しいコード セルが生成され、フォーカス セルの下に挿入されます。
選択したファイルまたはフォルダーとは異なる形式のパスを簡単にコピーし、コード内で対応するパスを使用できます。
Notebook のリソース
Notebook リソース エクスプローラーは、フォルダーとファイルの管理に役立つ Unix のようなファイル システムを提供します。 コード モジュール、セマンティック モデル、イメージなどの小さなサイズのファイルを保存できる書き込み可能なファイル システム スペースを提供します。 ローカル ファイル システムを操作しているかのように、Notebook内のコードを使用して簡単にアクセスできます。
Note
- 組み込みフォルダーと環境フォルダーはいずれも最大リソース ストレージは 500 MB であり、1 つのファイル サイズは最大 100 MB です。 どちらも合計で最大 100 個のファイルおよびフォルダー インスタンスを使用できます。
notebookutils.notebook.run()
を使用する場合は、notebookutils.nbResPath
コマンドを使用して対象のNotebook リソースにアクセスします。 相対パス builtin/ は常にルート ノートブックの組み込みフォルダーを指します。
組み込みのリソース フォルダー
この組み込みリソース フォルダーは、ノートブック項目インスタンスごとのシステム定義済みフォルダーです。 ノートブック リソースの主な機能は次のとおりです。
- UI を通じて、作成/削除、アップロード/ダウンロード、ドラッグ/ドロップ、名前変更、複製、検索などの一般的な操作を使用できます。
builtin/YourData.txt
のような相対パスを使用すると、すばやく探索できます。notebookutils.nbResPath
メソッドは完全なパスの作成に役立ちます。- [Lakehouse への書き込み] オプションを使用して、検証済みのデータをLakehouseに簡単に移動できます。 Fabric には、すぐに使い始められるように、一般的なファイル タイプ用の豊富なコード スニペットが埋め込まれています。
- これらのリソースは、
notebookutils.notebook.run()
を介してリファレンス Notebookの実行ケースでも使用できます。
環境リソース フォルダー
環境リソース フォルダーは、複数のノートブック間のコラボレーションを効率化するように設計された共有リポジトリです。
環境内には [リソース] タブがあり、ここでリソース ファイルを管理する操作をすべて行うことができます。 ノートブックを現在の環境にアタッチすると、これらのファイルを複数のノートブック間で共有できます。
[ノートブック] ページでは、アタッチされた環境から継承された [リソース] の下に、2 つ目のルート フォルダーを簡単に確認できます。
組み込みリソース フォルダーと同様に、ファイルやフォルダーを操作することもできます。
環境リソース パスはノートブック クラスターに自動的にマウントされます。相対パス /env を使用して環境リソースにアクセスできます。
ファイル エディター
ファイル エディターを使用すると、ユーザーが、ノートブックのリソース フォルダーおよびノートブックの環境リソース フォルダー内で、ファイルを直接表示および編集することができます。 サポートされているファイルの種類には、CSV、TXT、HTML、YML、PY、SQL などがあります。 ファイル エディターを使用すると、ノートブック内のファイルに簡単にアクセスして変更できます。また、キーワードの強調表示をサポートしており、.py や .sql などのコード ファイルを開いて編集するときに必要な言語サービスを提供します。
この機能には、ファイル メニューの [表示と編集] からアクセスできます。 ファイルをダブルクリックする方がより早い方法です。
ファイル エディターでのコンテンツの変更は、[保存] ボタンをクリックするか、Ctrl+S というキーボード ショートカットで、手動で保存する必要があります。ファイル エディターは自動保存をサポートしていません。
ファイル エディターも、ノートブック モードの影響を受けます。 編集アクセス許可のないノートブック モードでは、ファイルの表示のみが可能ですが、編集することはできません。
Note
ファイル エディターにはいくつかの制限があります。
- ファイル サイズの制限は 1 MB です。
- 次のファイルの種類は表示と編集がサポートされていません: .xlsx と .parquet。
Notebookで共同作業を行う
Fabric Notebookは、複数のユーザーによる同じNotebookの編集をサポートする共同作業項目です。
Notebookを開くと、デフォルトで共同編集モードになり、Notebookの編集内容はすべて自動的に保存されます。 同僚が同時に同じNotebookを開いた場合は、同僚のプロファイル、実行出力、カーソル インジケーター、選択インジケーター、編集トレースが表示されます。 共同作業機能を使用することで、ペア プログラミング、リモート デバッグ、個別指導のシナリオを簡単に実行できます。
Notebookを共有する
Notebookの共有は、チーム メンバーと共同作業を行うための便利な方法です。 承認されたワークスペース ロールは、デフォルトでNotebookを表示または編集/実行できます。 指定したアクセス許可が付与されたNotebookを共有できます。
Notebook ツールバーの [共有] を選択します。
このNotebookを表示できるユーザーに対応するカテゴリを選択します。 受信者の [共有]、[編集]、または [実行] アクセス許可を選択できます。
[適用] を選択した後、Notebookを直接送信するか、リンクを他のユーザーにコピーできます。 その後、受信者は、アクセス許可レベルによって付与された対応するビューを使用してNotebookを開くことができます。
Notebookのアクセス許可をさらに管理するには、[Workspace アイテム list] (ワークスペース項目の一覧)>[その他のオプション] を選択してから、[アクセス許可の管理] を選択します。 その画面から、既存のNotebookのアクセスとアクセス許可を更新できます。
コード セルにコメントを付ける
コメントは、共同作業のシナリオで役立つもう 1 つの機能です。 現在、Fabric ではセルレベルのコメントの追加がサポートされています。
Notebookのツールバーまたはセルのコメント インジケーターの [コメント] ボタンを選択して、[コメント] ウィンドウを開きます。
コード セルでコードを選択し、[コメント] ペインで [新規] を選択してコメントを追加し、[コメントの投稿] を選択して保存します。
必要な場合は、コメントの横にある [その他] オプションを選択して、コメントの編集、スレッドの解決、スレッドの削除オプションを見つけます。
コメント内の他のユーザーをタグ付けする
"タグ付け" とは、コメント スレッドでユーザーにメンションして通知し、詳細に対する共同作業を効率的に強化することを指します。
セル内のコードセクションと新しいコメント スレッドを選択します。
ユーザー名を入力し、特定のセクションについて話し合うために他のユーザーをメンションする場合は、候補リストで正しいものを選択します。
分析情報を共有し、投稿します。
電子メールによる通知がトリガーされ、ユーザーは [コメントを開く] リンクをクリックして、このセルをすばやく見つけます。
さらに、アクセス権を持たないユーザーにタグを付けるときに、ユーザーのアクセス許可を承認して構成し、コード資産が適切に管理されるようにします。
Note
コメント項目の場合、1 時間以内にコメントを更新した場合、タグ付けされたユーザーは電子メールによる通知を受信しなくなります。 ただし、新しくタグ付けされたユーザーに電子メールによる通知が送信されます。
ノートブック モードの切り替え
Fabric ノートブックは [開発] モード、[実行のみ] モード、[編集] モード、[表示] モードという 4 つのモードをサポートしており、簡単に切り替えることができます。 各モードは、特定のアクセス許可の組み合わせにマップされます。 ノートブックを他のチーム メンバーと共有する場合、受信者に適切なアクセス許可を付与することができます。付与されたアクセス許可に応じて、使用できる最適なノートブック モードが表示されます。また、アクセス許可のあるモード間で切り替えることができます。
- 開発モード: 読み取り、実行、書き込みのアクセス許可が必要です。
- 実行のみモード: 読み取り、実行のアクセス許可が必要です。
- 編集モード: 読み取り、書き込みのアクセス許可が必要です。
- 表示モード: 読み取りアクセス許可が必要です。