標準プロバイダーのメタデータの管理

Sync Framework では、レプリカおよび項目に関する情報がメタデータによって表されます。この情報は、同期を可能にするために各レプリカが保持するナレッジを追跡する目的で使用されます。通常、メタデータの管理はすべて、プロバイダーによって行われます。ただし、項目ストアの種類やプロバイダーの実装によっては、レプリカ上でメタデータに関連して実行される一部のタスク (廃棄標識のクリーンアップなど) を、プロバイダーとは別のコンポーネントとして実装した方がよい場合もあります。

Sync Framework メタデータの利点

Sync Framework では、必要な情報をすべて含んだメタデータを使用して同期が実行されます。メタデータは小さく効率的であり、Sync Framework には、メタデータに関連したさまざまなタスクを処理するコンポーネントが用意されています。メタデータの使用により、データの種類に依存しない同期が可能となり、自由度、相互運用性、および簡易性をバランスよく取り入れることができます。次の表は、Sync Framework が提供するメタデータの利点とその説明を一覧にしたものです。

利点 説明

簡潔

メタデータは、項目ごとのバージョン ベクターを持たず、それでいて、シングル マスター同期およびマルチ マスター同期に必要な十分な情報を持つという簡潔さを特長としています。

効率的

変更の列挙が最小限で済むように配慮されています (ループでも同様)。

正確

Sync Framework には、正確な競合検出が使用されています。変更が必要以上に検出、送信されたり、逆に必要な変更が検出から漏れたりすることはありません。この点は、非構造化データ (ファイルなど) と構造化データ (詳細な変更追跡など) の両方に当てはまります。

柔軟

ユーザーは、任意のストアと任意の手法を使ってメタデータを保存できます。独自のプロトコルに動詞を追加したり、独自の手法を使って同期処理を最適化したりできます。

相互運用性

メタデータには高い相互運用性が確保されています。したがって、任意のトポロジをサポートすることが可能です。

簡単

Sync Framework には、標準のツールキットが用意されています。マルチ マスター同期に伴う複雑な処理を容易に扱うことができます。このツールキットをカスタマイズして、ユーザーが変更を加えることができるようにすることで、より高いパフォーマンスを実現できます。

便利

必要なメタデータの多くは、Sync Framework によって管理されます。たとえば、アプリケーションではタイムスタンプだけを処理し、バージョン、ナレッジ、およびメタデータ ストレージに関しては Sync Framework に処理させることが可能です。削除については、Sync Framework がリストに基づいて計算するため、アプリケーションで追跡する必要はありません。変更も Sync Framework がハッシュに基づいて計算するため、アプリケーションで追跡する必要はありません。また、必要であれば、Sync Framework が備えている、レガシ ストアの完全マルチ マスター機能を利用できます。

このセクションの内容

  • フレキシブル ID
    フレキシブル ID (グローバル ID など) の作成方法と使用方法について説明します。
  • 同期バージョン
    項目のバージョンを追跡するバージョン構造体について説明します。
  • 廃棄標識の管理
    レプリカ上の廃棄標識を管理する方法について説明します。廃棄標識がクリーンアップされた場合に発生する可能性のある問題に対し、作成バージョンおよび忘れられたナレッジがどのように役立てられているかについても説明します。
  • 同期ナレッジについて
    Sync Framework 同期アルゴリズムがナレッジを使用して変更の列挙および競合の検出を行う理論上の概念について説明します。
  • Sync Framework Metadata Storage Service
    別の方法ではメタデータを格納できないレプリカをプロバイダーが表すときに同期メタデータの格納を支援する Metadata Storage Service について説明します。

参照

概念

Microsoft Sync Framework