Microsoft AZ-204: Azure Cosmos DB — Çalışma kılavuzu

Şunun bir parçası: Microsoft Azure Developer Associate AZ-204 — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Microsoft sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.

Genel Bakış

Azure Cosmos DB, düşük gecikmeli, elastik olarak ölçeklenebilir uygulamalar için tasarlanmış, tam olarak yönetilen, küresel olarak dağıtılmış, çok modelli bir veritabanıdır. Ortak, bölümlenmiş bir depolama ve çoğaltma motoru üzerinde birden çok API sunar, beş ayarlanabilir tutarlılık seviyesi sağlar ve kullanılabilirlik, gecikme, aktarım hızı ve tutarlılık için kapsamlı SLA’lar sunar. Veriler hesaplar, veritabanları ve kapsayıcılar (veya API’ye bağlı olarak koleksiyonlar/tablolar/graflar) şeklinde düzenlenir. Kapsayıcılar, bir bölüm anahtarı ile yatay olarak bölümlenir ve ölçeklenir ve tüm işlemler, CPU, IOPS ve belleği soyutlayan normalleştirilmiş bir para birimi olan İstek Birimleri (RU) cinsinden ölçülür.

API’ler ve Programlanabilirlik

Cosmos DB, veri modelinizi yeniden yazmadan yerel SDK’ları ve sürücüleri kullanabilmeniz için birkaç kablo uyumlu API’yi destekler:

undefined

.

API’ler arasında ortak olan SDK işlemleri arasında CRUD, ETag’lerle iyimser eşzamanlılık, upsert’ler, sunucu tarafı betikler (saklı yordamlar, tetikleyiciler) ve UDF’ler (SQL API) bulunur. Sorgular, RU’ları azaltmak ve güvenliği artırmak için parametrelendirilir. Toplu işlemler ve akış API’leri, yüksek verimli alım için istemci ek yükünü ve RU maliyetlerini en aza indirir.

Tutarlılık, Dizinleme ve Sorgu Semantiği

Cosmos DB, hesap başına beş iyi tanımlanmış tutarlılık seviyesi sunar (birçok SDK’da istek başına geçersiz kılınabilir):

Dizinleme, SQL API için varsayılan olarak otomatik ve tutarlıdır. Her öğe ve özellik, şema yönetimi olmaksızın dizinlenir, bu nedenle yazmalar dizini hemen günceller (dizinleme modu Tutarlı). Dizinleme ilkesini şu şekilde iyileştirebilirsiniz:

Öğe boyutuna ve sorgu şekline dikkat edin. SQL API bir öğe boyutu sınırı uygular (örneğin, 2 MB) ve bölümler arası sorgular, büyük projeksiyonlar ve karmaşık yüklemler RU tüketimini artırır. RU maliyetini en aza indirmek için seçici projeksiyonlar, uygun filtreler ve bölüm farkındalığı olan sorgular kullanın.

Bölümleme ve Aktarım Hızı (RU’lar)

Cosmos DB, mantıksal ve fiziksel bölümleri birbirinden ayırır:

Yüksek kardinaliteye ve zaman içinde eşit erişim dağılımına sahip etkili bir bölüm anahtarı seçin. İyi anahtarlar, birincil erişim yolunuzla (örneğin, userId, deviceId, tenantId veya orderId) ilişkilidir. Eğriliğe (skew) neden olan düşük kardinaliteli veya zaman dilimlerine ayrılmış (time-bucketed) anahtarlardan (örneğin, country, status veya day) kaçının. Tek bir özelliğin uygun olmadığı durumlarda:

Aktarım hızı modelleri:

RU optimizasyon teknikleri arasında id+bölüm anahtarı ile yapılan nokta okumaları (point reads), parametreli sorgular, seçici projeksiyonlar (selective projections), JOIN benzeri desenleri azaltmak için denormalizasyon ve karmaşık çoklu container sorguları yerine türetilmiş görünümler (derived views) için değişiklik akışını (change feed) kullanma yer alır. RU maliyeti yüksek yeniden denemelerden kaçınmak için eş zamanlılık kontrolü (concurrency control) amacıyla If-Match ile birlikte ETag’leri kullanın. RU metriklerini ve kısıtlamayı (throttling) (HTTP 429) izleyin ve SDK’larda sapma (jitter) içeren yeniden deneme politikaları uygulayın.

Küresel Dağıtım ve Değişiklik Akışı

Cosmos DB’nin anahtar teslim, çok bölgeli dağıtım özelliği, istediğiniz zaman bölge eklemenize veya kaldırmanıza olanak tanır. Tüm bölgeler okunabilirdir; çok bölgeli yazma işlemlerini etkinleştirmek, yakın bölgelerde 99. yüzdelik dilimde 10 ms’nin altında okuma gecikmesiyle her yerde eş zamanlı yazma işlemlerine izin verir. İstemci SDK’ları, trafiği yerel olarak yönlendirmek ve sorunsuz bir şekilde yük devretmek için tercih edilen bölgelerle yapılandırılmalıdır. .NET’te, tercih edilen bölgeleri

undefined

(veya diğer SDK’lardaki eşdeğeri) aracılığıyla belirtin. Çok bölgeli yazma işlemleri bir çakışma çözümleme ilkesi gerektirir:

Değişiklik akışı (change feed), her mantıksal bölüm anahtarı başına sıralı, yalnızca ekleme yapılabilen (append-only) bir değişiklik günlüğü sağlar. Şu durumlar için idealdir:

undefined

ile Çekme (Pull) modeli: Kontrol ettiğiniz denetim noktası (checkpointing) mantığıyla değişiklikleri açıkça yineleyin; işi paralelleştirmek için

undefined

boyunca segmentlere ayırın. Azure Functions, sunucusuz işleme için işlemci desenini sarmalayan bir Cosmos DB tetikleyicisi sunar. Baştan veya “şimdi"den başlayabilirsiniz ve tam doğruluklu değişiklik akışı (full-fidelity change feed), eksiksiz denetim izleri için ara güncellemeleri ve silmeleri yakalar. Kiralama (lease) kapsayıcınızı yeterli aktarım hızı (throughput) ile tasarlayın ve yeniden denemeleri ve en az bir kez teslimatı (at-least-once delivery) karşılamak için bir kez etkili (idempotent) işleyiciler seçin.

Pratik Problem Senaryosu

Spotify’ın, kullanıcı etkileşimlerini gerçek zamanlı olarak alan, kullanıcı başına önerileri güncelleyen ve en yakın bölgeden düşük gecikmeli okumalar sunan, küresel olarak kullanılabilir bir kişiselleştirme hizmeti sunması gerekiyor. Yazma işlemleri dünya çapındaki mobil istemcilerden gelebilir ve öneri güncellemelerinin alt akış (downstream) sistemlere yayılması gerekir.

  1. Çok bölgeli yazma işlemleriyle Cosmos DB SQL (Core) API’sini seçin
  1. Yüksek kardinaliteye sahip bir bölüm anahtarı ve hiyerarşik anahtarlar tanımlayın
  1. Birincil kapsayıcılarda otomatik ölçeklenen aktarım hızını (autoscale throughput) yapılandırın
  1. Hesap düzeyinde tutarlılığı Oturum (Session) olarak ayarlayın
  1. Azure Functions ve Değişiklik Akışı İşlemcisi (Change Feed Processor) ile değişiklik akışı işlemeyi uygulayın
  1. Özelleştirilmiş bir dizinleme ilkesine sahip türetilmiş bir öneriler kapsayıcısı oluşturun
  1. SDK’larda tercih edilen bölgelerle küresel dağıtımı etkinleştirin

undefined

‘ı

undefined

ile yapılandırın.

  1. Çakışma çözümleme ve gözlemlenebilirliği yapılandırın

Bu mimari, küresel olarak düşük gecikmeli okuma ve yazma işlemleri, değişiklik akışı aracılığıyla dayanıklı olay işleme, maliyet etkin otomatik ölçeklendirme ve kişiselleştirme iş yükleri için uygun sağlam tutarlılık semantiği sunar.


Azure Storage ve Blob Storage · Tüm alanlar · Azure Konteyner Çözümleri

Bu soruları çözün → · ExamRoll.io’da süreli pratik →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Sınavınızı geçin →

Microsoft'a göz atın →

Related guides

Hepsi bir arada erişim

Tek abonelik. Her sınav.

Her plan, sınırsız cevap aramayı, pratik testlerini, AI açıklamalarını ve tam kaynak kütüphanesini — 20'den fazla dilde — açar.

Aylık
24.87
Just €0.83/day
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

En iyi değer
12 ay
179.87
Just €0.49/daySave 40%
Her şey dahil:
  • Sınırsız cevap arama
  • Sınırsız pratik testi
  • AI destekli açıklamalar
  • Tam kaynak kütüphanesi
  • 20+ dil
  • Haftalık içerik güncellemeleri
  • Ödüller ve yönlendirmeler
  • Öncelikli destek
Ücretsiz denemeyi başlat

Kredi kartı gerekmez*

✓ Ücretsiz plan dahil · ✓ İstediğiniz zaman iptal edin · ✓ Tüm planlar tam ürünü açar