Azure Cosmos DB'de çok bölgeli yazmaları anlama
ŞUNLAR IÇIN GEÇERLIDIR: NoSQL
MongoDB
Cassandra
Gremlin
Masa
Okuma tutarlılığının garanti edilmediği kısmi veya toplam kesinti senaryosunda sıfıra yakın kapalı kalma süresi elde etmenin en iyi yolu, hesabınızı çok bölgeli yazma işlemleri için yapılandırmaktır. Bu makale, çok bölgeli bir yazma hesabı yapılandırırken dikkat edilmesi gereken temel kavramları kapsar.
Merkez bölgesi
İki veya daha fazla bölgeye sahip çok bölgeli yazma veritabanı hesabında, hesabınızın oluşturulduğu ilk bölge "hub" bölgesi olarak adlandırılır. Daha sonra hesaba eklenen diğer tüm bölgelere "uydu" bölgeleri denir. Merkez bölgesi hesaptan kaldırılırsa, sonraki bölge eklendikleri sırayla otomatik olarak merkez bölgesi olarak seçilir.
Uydu bölgelerine gelen tüm yazma işlemleri yerel bölgede işlenir ve daha sonra zaman uyumsuz olarak çakışma çözümü için Hub bölgesine gönderilir. Yazma işlemi hub bölgesine gidip çakışma çözümlendikten sonra "onaylandı" yazma işlemine dönüşür. O zamana kadar buna "belirsiz" yazma veya "onaylanmamış" yazma adı verilir. Hub bölgesinden sunulan tüm yazmalar hemen onaylanan bir yazma işlemine dönüşür.
Zaman damgalarını anlama
Çok bölgeli yazma hesabındaki birincil farklardan biri, her varlıkla ilişkili iki sunucu zaman damgası değerinin bulunmasıdır. Birincisi, varlığın o bölgede yazıldığı sunucu dönem zamanıdır. Bu zaman damgası hem tek bölgeli yazma hem de çok bölgeli yazma hesaplarında kullanılabilir. İkinci sunucu zaman damgası değeri, çakışma olmamasının onaylandığı veya çakışmanın merkez bölgesinde çözümlendiği dönem süresiyle ilişkilidir. Doğrulanmış veya çakışma çözümlenmiş yazma işlemine çakışma çözümleme zaman damgası (crts
) atanmışken, doğrulanmamış veya belirsiz bir yazmada crts
yoktur. Cosmos DB'de sunucu tarafından ayarlanan iki zaman damgası vardır. Birincil fark, hesabın bölge yapılandırmasının Tek Yazma veya Çoklu Yazma olmasıdır.
Zaman damgası | Anlamı | Kullanıma sunulduğunda |
---|---|---|
_ts |
Varlığın yazıldığı sunucu dönem zamanı. | Her zaman tüm okuma ve sorgu API'leri tarafından kullanıma sunulur. |
crts |
Çoklu Yazma çakışmasının çözümlendiği dönem süresi veya çakışma olmaması doğrulandı. Çoklu Yazma bölgesi yapılandırması için, bu zaman damgası Değişiklik Akışı için değişiklik sırasını tanımlar:
|
Değişiklik Akışı isteklerine yanıt olarak ve yalnızca istek tarafından "Yeni Kablo Modeli" etkinleştirildiğinde kullanıma sunulur. Bu, Tüm sürümler için varsayılandır ve Değişiklik Akışı modunu siler. |
Sonraki adımlar
Ardından, aşağıdaki makaleleri okuyabilirsiniz: