これまで、私は主にLAMPアプリケーションを使用してきましたが、2つのSQL 2008サーバー間で双方向の同期を設定する必要があるプロジェクトがあります(1つはWebベースで、もう1つはファイアウォール内にあります)。たくさんの詳細な情報を見つけていますが、いくつかの基本的な質問に答えるのに苦労しています(下の太字)。
私がこれまでの私の読書に基づいてそれを理解するように:
- レプリケーションは、多くの一般的な問題を解決できるエンドツーエンドのソリューションですが、他のオプションほど柔軟ではありません。
- 変更追跡(SQL> = 2008)は、DBトランザクションに関する情報を記録し、その情報をシステムテーブルに格納できます。この情報には、標準のSQLクエリを介してアクセスし、他のツールと組み合わせて使用して、完全な同期ソリューションを構築できます。
- 同期フレームワークは、完全で柔軟な同期ソリューションのためにプログラミング言語(および変更追跡)と組み合わせて使用できるフレームワークです。
- SQL Server Integration Services(SSIS)は通常、SQLServerデータを別のデータソースと統合するときに使用されます。開発環境は習得が容易で、開発も迅速です。これもエンドツーエンドのソリューションだと思いますが、他のプログラミング言語と組み合わせて使用することもできます(新しいタスクの作成など)。
それらの理解に基づいて、ここに私の解決策があります:
同期の競合を解決するためのかなり複雑なロジックがあり、レプリケーションが除外されます(マージレプリケーションはロジックを処理できる場合がありますが、SQL 2008で利用可能な他のソリューションよりもオーバーヘッドがはるかに大きくなるようです)。
SQL Serverを初めて使用するので、SSISの使いやすさについて読んだものが本当に気に入っていますが、読んだほとんどの記事/例は、主にSQLServerを他のデータソースと統合するためのものであることを示しています。 SSISは同期に適したソリューションですか? 2008年の変更追跡によって記録されたデータも使用したいのですが、SSISを介してこのデータにアクセスできますか?
もう1つのオプションは、同期フレームワークと変更追跡を使用することです。これには、はるかに急な学習曲線が含まれます。 SSISと変更追跡ではなく、この組み合わせを使用する利点は何ですか?
MS同期テクノロジーと私のソリューションについての私の理解に関するすべてのコメントに感謝します。
クリス