Aracılığıyla paylaş


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 crtsyoktur. 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ışı isteklerinin başlangıç zamanını bulmak için kullanılır
  • Değişiklik Akışı yanıtında sıralama düzeni olarak kullanılır.
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: