2
双方向データ同期のベストプラクティス/パターン
私の仕事では、多くの場合、データベースシステム間の双方向データ同期のアイデアが現れます。典型的な例は、2つのわずかに異なるCRMシステム(たとえば、Raiser's EdgeとSalesforce)と、それらの間で連絡先データの双方向同期が必要な場合です。 APIの考慮事項は別として、同期する共有キーがあり、使用するアルゴリズム/パターンを純粋に考えている場合、これは技術者以外によって過小評価されることが多いタスクです。 たとえば、次のことに注意する必要があります。 両方のシステムでどのレコードが変更されたかを簡単に検出できますか(または、システム間ですべてのレコードを比較して変更を検出する必要がありますか) N時間に1回の同期を行う場合、両方のシステムで同じレコードが多かれ少なかれ同じ時間に変化する競合に対処する方法 リアルタイム同期(つまり、1つのシステムの更新がすぐに他のシステムの更新をトリガーする)を予定している場合、バグまたはシステムクラッシュによる時間の経過に伴う逸脱の処理方法 個人的に私はこれすべてに取り組む方法を考えることができますが、私が参照できるよく知られたパターン、文献またはベストプラクティスがあるかどうか疑問に思っています。