Windows Azure Platform で RDB 機能を提供している SQL Azure 、さまざまな利用シナリオに対応できるように機能が強化されていますが、データ連携の分野では SQL Azure 間のデータベースの同期を行う SQL Azure Sync Service や、オンプレミスの SQL Server と クラウド上の SQL Azure のデータを連携させる SQL Azure Data Sync などのサービスが提供されています。

今回は、アプリケーションやサービス、デバイスなどの同期機能を提供するフレームワークである Microsoft Sync Framework を用いて、SQL Azure 上の DB と SQL Server Compact DB の同期を行うサンプルアプリケーションをご紹介します。実はこちらは Windows Azure Hosted Service にデプロイするサービス コンポーネントになっています。

MSDN Code Gallery : Microsoft Sync Framework – Windows Azure Sync Service Sample

Windows Azure 上のコンポーネントは SQL Azure へ直接アクセスさせないためのセキュリティレイヤーとなるだけでなく、オフラインでクライアント側でデータを保持し、オンライン時に同期してクラウド上にデータを集約する、といったシナリオを想定しています。また、WCF(Windows Communication Foundation) を利用することにより、柔軟な通信を実現できます。

こちらのサンプルコードは MSDN Code Gallery にて 無償で公開されていますので、ダウンロードしてご利用ください。

【参考資料】
TechNet Wiki : Walkthrough of Windows Azure Sync Service Sample
MSDN Code Gallery : Mirosoft Sync Framework