注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Object Storage V2 (OSv2) の 改善 のために必要なアーキテクチャ変更は、Object Storage V1 (Phonograph) のオブジェクト型と結合テーブルを持つ多対多リンク型を Object Storage V2 (OSv2) に移行することを必要とします。
現在、移行は必須ではありませんが、2024年後半には必須となる予定です。この時点で、移行を実行するために Upgrade Assistant を使用する必要があります。Foundry の オントロジーマネージャー は、オブジェクト型と多対多リンク型のダウンタイムなしの移行を実現するための統合フレームワークを提供します。
Foundry のオントロジーは、すべてのオブジェクト型と多対多リンク型を一度に移行する必要はありません。一部のオブジェクト型が Object Storage V1 (Phonograph) に、一部が Object Storage V2 (OSv2) にある状態でも、通常の操作を続けることができます。Foundry の オントロジーマネージャー は、オントロジー型をまとめて移行する サポートも提供しています。
start
や abort
などの移行イベントが、オントロジーが保存された数秒後にオントロジーマネージャーに表示される可能性があります。Only allow edits via actions
をオンにすると、そのオブジェクト型の移行が解除されます。Incompatible usage ビューにアクセスできない場合は、この機能を有効にするために Palantir の代表者に連絡してください。
Object Storage V2 の一部の操作は、breaking changes として扱われ、Object Storage V2 と互換性がありません。この互換性のない使用法は、オントロジーマネージャー で追跡され、報告されます。Incompatible usage アラートを選択すると、直近30日間の任意の互換性のない使用法の可視化が提供され、修正を支援します。
一部の互換性のない使用法、例えば Object Storage V1 (Phonograph) エンドポイントへの直接の API コールは、OSv2 への移行を開始するのをブロックせず、オブジェクト型が OSv2 に移行した後に失敗します。
互換性のない使用法を調査し、行動が必要かどうかを判断すべきです。例えば、オブジェクトのクエリ/読み取りのための直接の Object Storage V1 (Phonograph) コールを Object Set Service へ、オブジェクトの編集のための Actions へ、オブジェクト型メタデータ情報のための Ontology Metadata Service へ移行するなどです。これらの互換性のない使用法がもはや関連性がない、または結果に影響を与えずに壊れても問題ない場合は、修正せずに移行を開始することができます。
OSv1 と OSv2 の間の他の変更、例えば actions only による編集を有効にしないなど、はオントロジーマネージャーでの移行を積極的にブロックします。
この状況では、移行を開始する前に互換性のない使用法の発生をすべて取り除く必要があります。
互換性のない使用法や breaking changes がないオブジェクト型は、オブジェクト型が移行可能であることを示すためにバナーに緑のチェックマークアイコンが表示されます。
移行を開始するには、オブジェクト型や結合テーブルを持つ多対多リンク型の Datasources タブに移動し、Indexing Metadata セクションに進みます。オブジェクト型が移行可能であれば、移行パラメーターを選択するウィザードを開く Object Storage V2 ラジオボタンを選択することができます。
オントロジーメタデータサービスは、Object Storage V1 (Phonograph) にバックアップされたオブジェクト型の互換性のない使用法を追跡し、互換性のない使用法があるオブジェクト型を移行しようとするとアラートをトリガーします。また、オブジェクト型のスキーマに breaking changes が含まれていないことを確認する必要があります。
Transition windows オプションでは、安全な移行のための優先する時間帯を設定することができます。例えば、オブジェクト型の使用事例の活動が最小限である週の日と時間を設定したいかもしれません。移行プロセスが開始されると、最初の Funnel パイプラインを起動するまでに最大30分かかる可能性があることを覚えておいてください。もし移行が最初の移行ウィンドウ内で完了できなかった場合は、Object Set Service は OSv2 からデータを読み始めるために次のウィンドウを待ちます。
移行ウィンドウが設定されていない場合、最初の Funnel パイプラインが成功するとすぐに移行が開始されます。
最初の同期が成功した後に移行ウィンドウが計算されます。これは、最初の同期が設定された移行ウィンドウの途中で完了した場合、移行はこれを受け入れ可能な移行ウィンドウとは見なさず、次のウィンドウを取ることを試みることを意味します。
移行プロセス中に Object Storage V1 (Phonograph) に戻る必要がある場合は、浸漬期間 中にダウンタイムなしで可能です。移行フレームワークは、浸漬期間の終了まで Object Storage V1 (Phonograph) のインデックスを最新の状態に保つと共に、Object Storage V2 (OSv2) を更新します。浸漬期間は、最大14日までの日単位で設定することができ、移行が移行ウィンドウを通過した後にのみ開始されます。
浸漬期間中、Foundry のオントロジーのバックエンドは自動的にすべてのクエリを OSv2 にルーティングし、OSv1 へのリクエストは拒否されます。この時間は、移行後にワークフローが期待通りに機能していることを検証するために使用することができます。浸漬期間中に何か問題を経験した場合は、移行を中止する ことで即座に OSv1 のインデックスの使用に切り替えることができます。
浸漬期間を0日に設定すると、OSv2 のインデックスが準備完了し、移行ウィンドウがアクティブ化されるとすぐに、そのオブジェクト型のための OSv1 のインデックスが削除されます。浸漬期間が終了した後に OSv1 に戻ると、データの再インデックスが必要となり、ダウンタイムが発生する可能性があります。
浸漬期間中にオブジェクト型が OSv1 と OSv2 の両方で二重にインデックス化されることに注意してください。これは、追加のコンピューティングとストレージ使用を発生させます。追加のリソース使用を避けたい場合は、移行を設定する際に浸漬期間を0日に設定することができます。
Object Storage V1 (Phonograph) では、オブジェクト型や結合テーブルを持つ多対多リンク型にユーザーの編集を有効にするために、書き戻しデータセット が必要です。Object Storage V2 は、書き戻しデータセットを 実体化データセット に置き換えます。Object Storage V2 は、ユーザーの編集を有効にするために実体化データセットを必要としません。OSv2 での任意の実体化データセットでは、下流の使用法が必要とする場合にのみ実体化を作成する必要があります。
オブジェクト型とリンク型の書き戻しデータセットは、OSv2 の実体化データセットとして移行することができます。実体化データセットは、既存の下流パイプラインとの互換性を保つために、同じ列を保持します。このトグルは、他のアプリケーションで現在の書き戻しデータセットを使用している場合にのみ関連があります。ユーザーの編集は、OSv2 に移行されます。
書き戻しデータセットを移行しないことを選択した場合でも、データセット自体は削除されません。代わりに、データセットは静的になり、最終ビルド時のデータを含むようになります。
書き戻しデータセットが、いずれかのオブジェクト型のプロパティにマッピングされていない列を含んでいる場合、それらの列は移行の一部として削除されます。
Object Storage V2 に切り替えた後にパフォーマンスの低下が観察されたり、バグが発見されたりした場合、浸漬期間中には進行中の移行を安全に中止し、OSv1 に戻すことができます。移行フレームワークは、移行プロセス全体を通じて新たなデータとともに OSv1 のインデックスが最新の状態に保たれることを確認し、ダウンタイムはありません。
移行対象のオブジェクト型に既存のユーザー編集がある場合、新たなユーザー編集は移行が完了するまで無効にされます。
移行プロセス中にオブジェクト型の同期が失敗する可能性があります。その場合、オブジェクト型の Datasources タブの Indexing Metadata セクションで PIPELINE_FAILED
エラーが表示されます。そのような状況が発生した場合は、Funnel パイプラインのデバッグ の手順に従って問題を調査し、対策を講じてください。
左側のナビゲーションバーの Object types セクションに移動し、同時に複数のオブジェクト型を選択することで、同じ移行ウィンドウと浸漬時間の設定を使用して一括で移行を実行することができます。プロセスと設定ウィザードは、単一のオブジェクト型を移行する場合と同じです。予期しない複雑さやエラーを防ぐために、一度に100エンティティ未満を一括移行する段階的な移行を推奨します。