Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Remote » SQL Remote のレプリケーション設計 » SQL Remote の概要

 

SQL Remote レプリケーション・プロセスの概要

SQL Remote では、メッセージは常に双方向に送信されます。統合データベースは、パブリケーションの更新を含むメッセージをリモート・データベースに送信します。リモート・データベースは、更新されたデータと受信確認メッセージを統合データベースに送信します。

SQL Remote はモデルをパブリッシュし、サブスクライブします。リモート・データベースと統合データベースは、相手のパブリケーションに対してそれぞれサブスクライブします。

リモート・データベース・ユーザがデータを修正すると、その変更内容が統合データベースにレプリケートされます。この変更が統合データベースで適用されると、変更は統合データベースのパブリケーションに取り込まれ、(更新元のデータベースを除く) すべてのリモート・データベースに送信される更新内容に追加されます。このように、リモート・データベース間でのレプリケーションは、統合データベースを経由して行われます。

たとえば、統合データベースのパブリケーション内でデータが更新されると、更新内容がリモート・データベースに送信されます。リモート・データベースでデータが更新されていない場合でも、レプリケーションのステータスを把握するために、確認メッセージが統合データベースに送信されます。

SQL Remote レプリケーションに含まれるコンポーネントの説明図。
♦  SQL Remote レプリケーション・プロセスに関連する手順
  1. レプリケーションに関係する統合データベースとリモート・データベースごとに、Message Agent とレプリケーションを管理するトランザクション・ログが存在します。コミットされたすべての変更は、トランザクション・ログに記録されて保存されます。

  2. 統合データベースの Message Agent では、トランザクション・ログを定期的にスキャンして、各パブリケーション (データのセクション) に対して行われたすべてのコミット済みトランザクションをメッセージにパッケージします。次に、統合データベースの Message Agent は、そのパブリケーションに対してサブスクライブされているリモート・ユーザに、関連する変更を送信します。Message Agent が変更内容を送信するときは、メッセージング・システムを使用します。SQL Remote では、SMTP 電子メール・システム、FTP、FILE をサポートしています。

  3. リモート・データベースの Message Agent は、統合データベースから送信されたメッセージを受信し、メッセージの送信元である統合データベースに確認メッセージを送信します。次に、Message Agent はトランザクションをリモート・データベースに適用します。

  4. リモート・ユーザは、いつでも Message Agent を実行して、リモート・データベースで行われたトランザクションをメッセージにパッケージし、統合データベースにそのメッセージを送信できます。

  5. 統合サイトの Message Agent は、リモート・データベースからのメッセージを処理し、そのトランザクションを統合データベースに適用します。