注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Foundry には、データパイプラインの作成と管理に利用できる2つの製品、Pipeline Builder と Code Repositories があります。これらのツールは相互に補完し合い、連携してパイプラインに関するすべてのニーズに対応できるよう設計されています。以下のガイドでは、ユースケースに最適なツールを判断する方法と、両方のツールを組み合わせて使う方法を説明します。
Pipeline Builder は、堅牢性とセキュリティを確保しながら、データパイプラインを迅速かつ柔軟に、スケーラブルな形で提供するための Foundry の主要なアプリケーションです。Pipeline Builder では、エンドユーザーとデータエンジニアがグラフとフォームをベースにした環境で共同作業し、データの統合、ビジネスロジックに基づくデータ加工の作成、本番パイプライン向けの厳密なリリースプロセスの定義を行えます。ユーザーは、コードを使わずに、リアルタイムでフィードバックが得られるパイプラインを作成できます。さらに、Pipeline Builder はヘルスチェックを使用し、要件に完全に準拠したデータのみが本番環境にデプロイされることを保証します。Pipeline Builder について詳しくはこちら。
Code Repositories は、Foundry で本番運用に対応したコードを作成し、共同作業するための Web ベースの統合開発環境(IDE)を提供します。このアプリケーションでは、基盤となる Git リポジトリを使いやすい方法で操作できます。Code Repositories について詳しくはこちら。
パイプラインは Pipeline Builder で設計することを推奨します。これにより、次のことが可能になります。
Pipeline Builder では利用できない、コードベースの特殊なロジックが必要な場合は、Code Repositories でその処理段階を作成し、メインのパイプラインに追加してください。このような特殊なケースには、次のような例があります。
Pipeline Builder と Code Repositories はどちらも Foundry データセットを入力と出力に使用するため、Code Repositories でビルドしたパイプラインの入力は、Pipeline Builder のパイプラインの前後や途中に追加できます。パイプラインの作成に使用したアプリケーションに関係なく、Data Lineage でパイプライン全体のスケジュールとヘルスチェックを設定できます。Data Lineage について詳しくはこちら。
次のテーブルは、Pipeline Builder と Code Repositories で利用できる機能とサポートを示しています。前述のとおり、両方のツールを組み合わせることで、コードベースの特殊なロジックを備えた、堅牢で型安全かつ再利用可能なパイプラインを作成できます。
| Pipeline Builder | Code Repositories | |
|---|---|---|
| 推奨用途 | 組織向けの本番パイプライン、および組織間のコラボレーション向けの特殊なパイプラインの構築と保守。 | パイプラインに追加する、コードベースの特殊なデータ加工の作成。 |
| 構築用インターフェース | ||
| パイプラインのインターフェース | グラフとフォームベース | Web ベースの統合開発環境(IDE) |
| サポートされる言語 | コード不要 | Python、SQL、Java、Mesa |
| 再利用性 | パイプライン全体またはパイプラインの処理段階をコピーして貼り付けられます。 | ユーティリティ関数とライブラリを再利用し、ファイル間でコードをコピーできます。 |
| 型安全な関数 | 強い型付けを採用しており、エラーはビルド時ではなく即座に通知されます。 | コードベースで、エラーはビルド時に表示されます。 |
| パラメーター | ユーザーが定義した永続的なパラメーターを、パイプライン全体で使用できます。 | コードで定義した定数を、リポジトリ内で使用できます。 |
| サポートされるパイプライン | ||
| バッチパイプライン | 対応 | 対応 |
| ストリーミングパイプライン | 対応 | 対応(上級ユーザー向け) |
| ファイルベースのデータ加工 | 対応 | 対応 |
| インクリメンタル(差分処理)計算 | 対応 | 対応 |
| ファイルシステムと API へのアクセス | 非対応 | 対応 |
| パイプラインのテスト | ||
| データプレビューの対象範囲 | データセット全体に基づくプレビュー。 | データのサンプルをプレビュー。 |
| データプレビューのタイミング | プレビューはリアルタイムで更新されます。 | 要求に応じてプレビューします。 |
| データプレビューの確認ポイント | データ加工の各ステップをプレビューします。 | デバッグモードで、選択した確認ポイントにおける中間データフレームと変数をプレビューします。 |
| デバッグ | 型安全で、パイプラインの作成中にエラーが表示されるため、デバッグのためのチェックやビルドは不要です。 | デバッガーと Read-Eval-Print Loop(REPL)をサポートします。 |
| ユニットテスト | 対応 | 対応(上級ユーザー向け) |
| パイプライン管理 | ||
| データが満たすべき条件 | 対応 | 対応 |
| スケジュール | 対応 | 対応 |
| カスタムライブラリの公開 | 開発中 | 対応 |
| バージョン管理 | ノーコードとハイコードのユーザーが共同作業できる、ガイドに沿った完全なバージョン管理ワークフロー。 | 完全な Git ワークフロー。 |
| ビルドのメモリー管理 | ユーザーは、承認済みまたはカスタムのコンピュートプロファイルを設定できます。 | コードベースの設定を利用できます。 |
| セキュリティマーキングの管理 | 対応 | 対応 |