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

Object Storage v1 と Object Storage v2 間の破壊的変更

Object Storage v1 (Phonograph) から Object Storage v2 (OSv2) への移行は、いくつもの破壊的変更を伴う大規模なアーキテクチャの転換です。レガシーの Object Storage v1 (Phonograph) は API の範囲が広く、低レベルのデータベース機能の多くを直接公開しています。一方、新しい Object Storage v2 のアーキテクチャでは、Object Data Funnel サービスを通じてオブジェクトを専用のオブジェクトデータベースに同期することで、スケール、パフォーマンス、柔軟性、セキュリティを向上させます。このアーキテクチャの転換により、主に2種類の破壊的変更が生じます。

  • 専用のオブジェクトデータベースは特定のユースケース向けに設計されているため、Object Storage v1 と同じ機能を提供できない場合があります。そのため、OSv2 では OSv1 と異なる方法でワークフローをモデル化する必要がある場合があります。
  • Object Storage v1 で統合されていた関心事の各側面を分離するため、OSv1 API と直接やり取りする既存のクエリの一部をリファクタリングする必要があります。

これらの破壊的変更により、OSv1 を基盤とする一部のオブジェクトタイプは、リファクタリングや修正を行わないと OSv2 に移行できない場合があります。OSv2 への移行に関するドキュメントでは、これらの問題がユーザーにどのように提示されるか、および OSv1 から OSv2 への移行方法について詳しく説明しています。

恒久的な破壊的変更

このセクションでは、Object Storage v1 (Phonograph) と Object Storage v2 (OSv2) 間の破壊的変更を一覧で示します。オブジェクトタイプの OSv2 への移行を試みる前に、これらの破壊的変更に対処してください。OSv1 と OSv2 間のこれらの変更はすべて、オントロジーに取り込まれるデータの品質を向上させ、より決定論的な動作を確保し、プラットフォーム全体でのわかりやすさを高めることを目的としています。

アクションと編集

  • OSv2 は、アクションを通じたユーザー編集にのみ対応しています。OSv2 に移行する前に、OSv1 の編集 API に対する既存の直接クエリをすべてリファクタリングし、アクションを使用するようにする必要があります。
  • OSv2 では、「ライトバックデータセット」の名称が「実体化」に変更されます。OSv1 ではライトバックデータセットが必須ですが、OSv2 では実体化は任意です。実体化されたデータセットの詳細については、実体化を参照してください。

編集履歴

  • OSv1 から OSv2 への移行では、オブジェクトの編集履歴を保持するオプションを選択できます。
    • このオプションを有効にすると、移行処理に編集履歴が含まれるため、処理とストレージに追加のコンピューティングコストが発生します。
    • このオプションを有効にしない場合でも、OSv1 での過去の編集内容は保持されます。ただし、OSv1 の完全な編集履歴は OSv2 では利用できません。移行が完了すると、OSv1 の完全な編集履歴を復元することはできません。Object Storage v2 への移行時には、アクションログを除き、ユーザー編集(アクション)の履歴が保持されないことをユーザーが了承する必要があります。
  • OSv2 のオブジェクトタイプでは、Ontology Manager 内でユーザーの編集履歴を追跡を有効にする必要があります。また、ユーザーの編集履歴を表示するには、Object View を更新して編集履歴ウィジェットを追加する必要があります。
  • ユーザーは、アクションがオブジェクトにどのような影響を与えるかを記録する別の方法として、アクションログのオブジェクトタイプを設定することもできます。対象オブジェクト全体のアクション履歴を表示する方法については、アクションログタイムラインウィジェットも参照してください。

データ制限

OSv2 は、オントロジーに取り込まれるデータの品質を確保するために、主キーとプロパティタイプにデータ制限を適用します。制限の完全な一覧については、OSv2 のデータ制限に関するドキュメントを参照してください。

変更履歴とインクリメンタル(差分)更新

  • 変更履歴データソースを持つオブジェクトタイプでは、OSv2 はレガシーの変更履歴データセットで使用される「最新のタイムスタンプを優先する」という意味論を考慮しません。
    • OSv2 はデフォルトですべてのパイプラインをインクリメンタルにインデックス化します。関連する変更履歴の計算はすべて Funnel によってバックグラウンドで自動的に実行されるため、「変更履歴の Python デコレーター」は不要になります。
  • OSv2 では、Geopoint プロパティに対してより厳格な検証が行われます。

監視

Object Set Service (OSS) の変更

  • OSS API はクエリ文字列に対応していません。OSv1 はクエリ文字列に対応しています。
  • マルチバックエンドのオブジェクトセットなど、Object Storage v1 と Object Storage v2 の両方のオブジェクトを含むオブジェクトセットでは、OSS のカーディナリティメトリクスは利用できません。

一時的な破壊的変更

このセクションでは、Object Storage v1 (Phonograph) と Object Storage v2 (OSv2) 間の現在の機能差を一覧で示します。これらの機能は開発中であり、破壊的変更が解消されるにつれて一覧が更新されます。

  • OSv2 は現在、上流と下流の対象間の経路が実体化を経由する場合、スケジュールの接続に対応していません。
  • OSv2 は現在、カスタムアナライザーに対応していません。
  • Foundry Rules Archetypes は現在、OSv2 のすべての機能に対応しているわけではありません。たとえば、複数のデータソースを元にするオブジェクトタイプや、複数の実体化を持つオブジェクトタイプには対応していません。詳細については、Foundry Rules のドキュメントを参照してください。