İşimde oldukça sık, veritabanı sistemleri arasında 2 yönlü veri senkronizasyonu fikri ortaya çıkıyor. Klasik örnek iki farklı CRM sistemidir (Raiser's Edge ve Salesforce) ve bunlar arasında iki yönlü bir Temas verisi senkronizasyonuna ihtiyaç vardır.
API ile ilgili düşünceler bir yana, senkronize edilmek üzere paylaşılan bir anahtarınızın olduğunu varsaymak ve yalnızca kullanılacak algoritmayı / kalıbı düşünmek olarak düşünülürse, bu genellikle teknik olmayan kişiler tarafından göz ardı edilen bir iştir.
Örneğin, dikkat etmeniz gerekenler:
- Her iki sistemde hangi kayıtların değiştiğini kolayca tespit edebiliyor musunuz (veya değişiklikleri tespit etmek için sistemler arasındaki tüm kayıtları karşılaştırmanız gerekecek)
- Her N-saatte bir senkronizasyona gidiyorsanız, aynı kaydın her iki sistemde de aynı anda değiştiği çatışmalarla nasıl başa çıkabilirsiniz?
- Gerçek zamanlı bir senkronizasyona gidiyorsanız (yani bir sistemdeki bir güncelleme hemen diğer sisteme bir güncellemeyi tetikler), hatalar veya sistem çökmelerine bağlı olarak zaman içinde farklılığın nasıl ele alınacağı
Şahsen bunların hepsini çözmenin yollarını düşünebilirim ama iyi bilinen bir kalıp, literatür veya başvurabileceğim en iyi uygulamalar olup olmadığını merak ediyorum.