Warning

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

リンクされた製品

Marketplaceストアのリンクされた製品のセットに完全なワークフローをモジュール化することができます。これにより、小さな製品を独立して反復処理し、アップグレードすることが可能になります。

リンクされた製品を使用すると、以下のことが保証されます:

  • 一つの製品のコンテンツと別の製品の入力との間の自動マッピング
  • 製品間のセマンティックバージョン付けされた依存関係
  • インストール時の重複コンテンツの減少、複数の製品で重なるコンテンツは一つの上流製品に分割して下流で消費することができます

たとえば、ワークフローがデータクリーニングパイプラインとクリーンデータに基づいたオブジェクトタイプを含む場合、パイプラインとオブジェクトタイプは別々の製品にパッケージ化することができます。パイプラインとオントロジー製品との間の接続により、パイプライン製品からのクリーンデータセットコンテンツをオントロジー製品の必要な入力に自動的にマッピングし、同時にインストールすることが可能になります。

リンクされた製品のパッケージ化

DevOpsは、同じストア内の製品間のリンクを決定するためにパッケージ化されるソースエンティティを調査します。以下の仮想例では、データセットを出力し、データセットに基づいたオブジェクトタイプがあるデータパイプラインがあります。

接続されたリソースのダイアグラム

パイプラインとオブジェクトタイプは個々の製品としてパッケージ化することができ、DevOpsはPipeline製品の出力データセットがオントロジー製品のデータセット入力要件を満たすことを保証します。このリンクはソースエンティティから導き出されます。

たとえば、ユーザーの製品が"Airplane"オブジェクトタイプに依存するWorkshopアプリケーションを含む場合、DevOpsはコンテンツとして全く同じ"Airplane"オブジェクトタイプを含む製品のみをリンクします。

二つのリンクされた製品

DevOpsは、下流製品がパッケージ化されたときに製品リンクを作成します。これは上記の画像でオントロジー製品で示されています。言い換えれば、DevOpsは、公開されている製品ドラフトの入力を満たすコンテンツを持つ製品を探します。また、同じストア内の製品のみが考慮されます。つまり、上流製品が再パッケージ化されて新たな出力を生成し、これらの出力が下流製品によって消費されることができる場合、下流製品も再パッケージ化されてリンクを再生成し、最新のワークフローを保証する必要があります。

製品をパッケージ化する際には、どの他の製品がパッケージ化ドラフトへの入力を提供できるかを確認することができます。

DevOps内のリンクされた製品

各リンクされた製品は開くことができ、二つの製品間のマッピングを確認することができます。

DevOps内のリンクされた製品の詳細ビュー

ブレーキングチェンジ

製品に対するブレーキングチェンジとは、製品のコンテンツに依存するワークフローが正しく機能しなくなるような変更です。例えば、ブレーキングチェンジには、コンテンツの削除やデータセットの列のタイプ変更があります。

上流製品でブレーキングチェンジが行われた場合、下流製品へのリンクが切れる可能性があります。製品リンクはsemver互換性範囲のため、ブレーキングチェンジはメジャーバージョンの増加で示されるべきです。メジャーの増加は、製品のコンテンツに後方互換性のない変更があることをユーザーに知らせます。

製品が誤ってマイナーバージョンの増加で公開された場合、下流製品を再パッケージ化してリンクされた製品の生成をトリガーし、非互換性を解決することができます。これにより、下流製品が上流製品の最新バージョンへのリンクを持つことを保証します。

最も安全な手順は、最近公開された製品の下流製品をすべて再パッケージ化し、すべてのリンクされた製品マッピングを再生成することです。

リンクされた製品のインストール

ユーザーが製品をインストールするとき、入力はリンクされた製品の別のインストールやドラフトを選択することで満たすことができます。利用可能なリンクされた製品を確認するには、インストールドラフトの Inputs ページを訪れます。

インストールウィザードセレクターでリンクされたインストールを表示

リンクされたインストールとドラフトを確認するには、View graph を選択します。

アプリ内のリンクされたインストールのグラフ

リンクされたドラフトは、ドラフトホームページ上のインストールグループとして表示されます。

Marketplaceのドラフトホームページ

リンクされたインストールドラフトは、単一のジョブ中に一緒にインストールされ、既存のインストールが入力として機能する一方で影響を受けません。インストールを開始すると、Job ページにリダイレクトされ、ジョブのステータスを追跡することができます。

二つのインストールを含むジョブ

製品の分割

しばしば、大規模な製品にはワークフローの異なるステージ(例えば、データクリーニングやアプリケーション)が含まれています。このような製品は、各部分のより迅速な反復とリリースを可能にするために、小さな製品に分割することができます。

大規模な製品の一部のコンテンツを別の製品に分けることで、自動マッピングを使用して両方の製品を一緒にインストールすることができます。ただし、これにより既存のインストールに重複したリソースが生じる可能性があります。

新たに作成された製品をインストールすると、新たなリソースが作成され、元の大規模な製品のインストール済みリソースは再利用されません。

製品リンクのベストプラクティス

製品をリンクする際に考慮すべきいくつかのヒントを以下に示します。これにより、ユーザーの製品がサービス可能な状態を保つことができます:

  • 上流から下流への製品をパッケージ化します。これにより、生成される製品リンクが最新の状態に保たれます。
  • ブレーキング製品の変更をメジャーバージョンの増加で示します。
    • 下流の製品消費者を再パッケージ化して製品リンクを再生成します。