注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Foundry オントロジーを基盤としたワークフローやアプリケーションは、組織のニーズの変化に応じて進化する必要があります。場合によっては、この進化が他の部分にも追加の変更を必要とするスキーマの更新を含むことがあります(「重大な変更」)。スキーマの重大な変更の例としては、既存のプロパティのデータ型の変更、オブジェクトタイプのバックエンドデータソースの変更、またはオブジェクトタイプの主キーの変更が含まれます。重大なスキーマ変更の完全なリストは以下をご覧ください。
Object Storage V1 (Phonograph) では、オブジェクトタイプがユーザーによる編集を受けた場合、ユーザーインターフェースはそのようなスキーマ変更を控えるように勧めています。これは、OSv1 ではそのようなユーザー編集を移行できないためです。代わりに、複雑で時間のかかる手動の介入を行わない限り、重大な変更は既存のユーザー編集の損失をもたらすことになります。
Object Storage V2 では、この制約を取り除き、柔軟で反復的なワークフローの構築を促進します。そのために、OSv2 はスキーマ移行フレームワークを提供し、重大なスキーマ変更後に既存のユーザー編集に適用できる一連の事前定義された移行をリストアップしています。Ontology Manager は重大なスキーマ変更を自動的に検出し、ユーザーに事前定義されたリストから移行オプションを選択するように案内します。サポートされている移行の完全なリストは以下をご覧ください。
このワークフローの例では、ユーザーが既存のユーザー編集を含むオブジェクトタイプから Year
プロパティを削除します。Ontology Manager はこれを重大なスキーマ変更として自動的に識別し、移行が必要であることを警告します。
警告を表示するだけでなく、ユーザーがオントロジーへの変更を保存しようとすると、Ontology Manager は Review edits インターフェース内に Migrations タブを表示します。Ontology Manager は、ユーザーが重大な変更のための移行を定義するまで、変更の保存をブロックします。これにより、他のワークフローが破損するのを防ぎます。
ユーザーが Migrations タブに移動すると、Ontology Manager は以下のように、重大な変更の種類に基づいた利用可能な移行オプションを表示します。
ユーザーが Ontology Manager 内でスキーマ変更を指定して保存すると、バックエンドでオブジェクトタイプの新しいスキーマバージョンが作成され、対応する置換 Funnel バッチパイプラインがオーケストレーションされ、オブジェクトタイプのインデックスが更新されます。置換パイプラインが完了し、新しいバージョンが完全にオブジェクトデータベースによってハイドレートされたと宣言されると、Object Set Service (OSS) および他のオントロジー API の消費者によってクエリ可能になります。
オントロジーで次の変更は重大なスキーマ変更と見なされます:
オントロジーで次の変更は重大なスキーマ変更とは見なされません:
以下は、現在 Object Storage V2 でサポートされているスキーマ移行の完全なリストです。
一度に最大 500 個のスキーマ移行しか適用できません。スキーマ変更の数がこの制限を超える場合、移行はバッチで実行する必要があります。
現在のスキーマ移行フレームワークでは、オブジェクトタイプの主キー プロパティに移行指示を適用することはサポートされていません。主キー移行のサポートは将来的に追加される予定です。