分析Code WorkbookWorkbooks本番環境への移行

注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

本番環境への移行

コードベースの分析やパイプラインのプロトタイプには Code Workbook を使用することをお勧めします。堅牢な本番環境のパイプラインや、ガバナンスと厳密なチェック、大量のデータ、または最適化されたパフォーマンスが必要なワークフローをサポートするためには、Pipeline Builder と Code リポジトリを使用することをお勧めします。

パイプラインを記述する場所についての詳細は、Code Workbook と Code リポジトリの比較をご覧ください。

ワークブックで導き出した出力に満足したら、ロジックと出力データセットをハード化して信頼性を高めるべきです。これは Code Workbook で簡単に行うことができます。以下に、作業を堅牢で本番環境に対応するための簡単なステップをいくつか紹介します。

ブランチの保護

ワークブック内のブランチを保護するには、そのワークブックに所有者権限が必要です。

ブランチの保護は、ワークブック内のブランチをロックダウンし、そのブランチのロジックを直接編集することを防ぐ機能です。代わりに、ロジックの変更は別のブランチで作成し、それを保護されたブランチにマージする必要があります。通常、ユーザーはワークブックの master ブランチを保護しますが、他のブランチも保護することができます。

ブランチを保護するには、下図のように、ブランチメニューの右上にある設定アイコン (Gear icon) をクリックします。

pipeline-branch-menu

下図のように Protect this branch をオンにすると、ブランチの保護が有効になります。デフォルトでは、保護されたブランチでは、ユーザーがそのブランチの Run ボタンを使用して出力データセットを計算することは許可されていません。これにより、ワークブックの実行がスケジュールされたビルドと衝突することが防止されます。これらは次のセクションで説明します。

pipeline-branch-protection

保存すると、ブランチは保護され、読み取り専用になります。

pipeline-readonly

バッチビルドの使用

Code Workbook で作成した出力データセットを定期的に更新したい場合があります。これは、入力データセットが更新された場合、または時間ベースの間隔で行うことができます。これを実現するためには、これらの出力データセットに対して定期的なビルドをスケジュールすることができます。

  • 1つの出力データセットに定期的なビルドをスケジュールするには、データセットのアクションを開き、Manage Schedules をクリックします。
  • 複数の出力データセットに定期的なビルドをスケジュールするには、ワークブックの上部にある歯車アイコンをクリックし、Explore Data Lineage を選択します。これでワークブックからすべての入力データセットと保存された出力データセットを見ることができます。

両方のアクションで Data Lineage アプリに移動します。右側のペインにあるカレンダーアイコンをクリックして Manage Schedules インターフェースを開きます。表示されるプロンプトに従って定期的なスケジュールを設定します。以下の画像では、dataset_1dataset_2 を毎日ビルドするスケジュールが表示されています。

Build schedules panel

Data Lineage でのスケジュール作成について詳しくはこちらをご覧ください。

バッチビルドは、データセットとして保存されていない変換(例:非永続的な変換)を更新しません。具体的には、非永続的な変換Aが永続的な変換Bの親である場合を考えてみましょう。バッチビルドを使用して変換Bをビルドすると、変換Bは変換Aの最新のロジックと、上流の入力データセットの最新のデータを使用します。しかし、ワークブックで表示される変換Aのプレビューや、変換Aで作成された任意の可視化は、このバッチビルドによって更新されません。

データの健康チェック

出力データセットのもう1つのベストプラクティスは、Data Health checks の追加です。出力データセットを開き、Health タブをクリックして Data Health ページにアクセスします。ヘルスチェックの設定により、データセットのビルドが失敗した場合、データが古くなった場合、または指定した他の要件を満たさない場合に通知を受け取ることができます。

Foundry の Data Health について詳しくはこちらをご覧ください。

pipeline-data-health

出力の整理

ワークブックをプロジェクトの一部として使用する場合、プロジェクト内に以下のフォルダー構造を作成することをお勧めします。

  • /data
  • /workbooks
  • /templates

このフォルダー構造が設定されていれば、ホームフォルダーから新しいワークブックを簡単に共有できます。

  1. ワークブックを /workbooks ディレクトリに移動します。
  2. ワークブックでテンプレートを作成した場合、それらを /templatesディレクトリに移動します。
  3. データセットを移動するには、ワークブックの左上にある Output ドロップダウンをクリックし、新しい出力データセットが追加されるフォルダーを選択するために "Change folder…" をクリックします。プロジェクトの /data フォルダーを選択します。デフォルトでは、ワークブックで派生したすべてのデータセットが、選択した新しいフォルダーに移動します。
pipeline-folder-management pipeline-move-datasets

グラフの整理

他のユーザーが変換の流れを容易に理解できるように、グラフを整理したいと思うかもしれません。Code Workbook で利用できる組織化機能には、ノードの色分けと自動レイアウトがあります。

ノードの色分けを使用して、グラフ上のノードを視覚的にグループ化することができます。右上の Colors ボタンをクリックして新しい色グループを作成し、ノードを選択して色グループの + ボタンを使用してノードを色グループに追加します。ワークブックの内容ヘルパーでは、データセットのリストを色グループで並べ替えることもできます。

node-coloring

右上のレイアウトボタンをクリックすると、グラフの一部を自動レイアウトすることもできます。デフォルトでは、自動レイアウトは全体のグラフを整理しますが、特定のノードを選択して自動レイアウトをクリックすると、そのノードのみを整理することもできます。

graph-autolayout

Code Repository へのエクスポート

Code Workbook でパイプラインのプロトタイプを完成させ、コードを Code Repositories に移動したい場合は、Export to Code Repository ヘルパーを使用できます。Code Repositories へのエクスポートについて詳しくはこちらをご覧ください。

コードを Code Repositories に移動したい理由はいくつかあります。

  • Code Repositories は完全な Git のサポートを提供し、ユーザーが以前のコミットを表示し、それに戻ることができます。
  • Code Repositories は増分変換と複数出力変換をサポートします。
  • Code Repositories は unmarking workflows をサポートし、branch settings を使用して PR がマージ可能なタイミングを制御します。