Bir geliştirici, oyuncu verilerini bölüm anahtarı oyuncunun ülkesi olan bir Amazon DynamoDB tablosunda depolayan bir oyun geliştirdi. Bir ülkeden gelen oyuncularda ani bir artıştan sonra, uygulama ProvisionedThroughputExceededException hataları vermeye başladı. Geliştirici bu hataları gidermek için ne yapmalıdır?
Bir cevap seçin
Cevabınızı kontrol etmek için bir seçeneğe dokunun.
Doğru cevap: Daha fazla benzersiz tanımlayıcı içerecek şekilde birincil anahtarı değiştirin..
Neden bu cevap
Doğru yanıt, birincil anahtarı daha fazla benzersiz tanımlayıcı içerecek şekilde değiştirmektir. DynamoDB'de, bölüm anahtarı (partition key) aynı değere sahip öğeler aynı fiziksel bölüme depolanır. Belirli bir ülkeden gelen oyuncularda ani bir artış, o ülkenin bölüm anahtarına yapılan isteklerin yoğunlaşmasına neden olarak ProvisionedThroughputExceededException hatalarına yol açar. Birincil anahtarı, örneğin ülke ve oyuncu kimliği gibi daha fazla benzersiz tanımlayıcı içerecek şekilde değiştirmek, verileri daha fazla bölüme dağıtarak yükü yayar ve bu tür yoğunluk sorunlarını azaltır. Yanlış seçenekler: Tabloda strongly consistent reads kullanın: Güçlü tutarlılık (strongly consistent reads) okuma kapasitesi birimlerini (RCU) iki katına çıkarır ve bu da mevcut sorunu daha da kötüleştirebilir. Sorgular tarafından döndürülen öğelerin boyutunu azaltmak için disk belleği uygulayın: Disk belleği (pagination), döndürülen veri miktarını yönetmeye yardımcı olur ancak bölüm anahtarı yoğunluğundan kaynaklanan kapasite sorunlarını çözmez. Verileri getirmek için Scan işlemini kullanın: Scan işlemi, tüm tabloyu tarar ve genellikle sorgulardan (Query) daha az verimlidir, bu da daha fazla kapasite tüketimine yol açabilir ve sorunu daha da kötüleştirebilir.
Sonsuz cevap arayışı olmadan sınavınızı geçin
Bu sınav için her doğrulanmış soruyu ve açıklamayı tek bir yerde edinin ve saatlerce süren hazırlıktan tasarruf edin. 1.000'den fazla sertifika · 20'den fazla dil · ücretsiz başlayın.
Sınavınızı daha hızlı geçin → Kart gerekmez