Ücretsiz araç

DynamoDB Item Boyutu Hesaplayıcısı

Bir DynamoDB item'ını JSON olarak yapıştırarak bayt cinsinden tam boyutunu ve tükettiği okuma ve yazma kapasite birimlerini görün — ardından sonucu bir bağlantıyla paylaşın.

Item (JSON)
{
  "pk": "USER#1234",
  "sk": "PROFILE",
  "name": "Ada Lovelace",
  "age": 36,
  "active": true,
  "tags": ["engineer", "mathematician"],
  "address": { "city": "London", "zip": "WC2N" }
}

Bir DynamoDB item'ını düz JSON olarak (attribute'ların bir haritası) yapıştırın. Sets ve binary türleri düz JSON ile ifade edilemez, bu yüzden diziler bir List (L) ve nesneler bir Map (M) olarak boyutlandırılır.

Item boyutu400 KB sınırının %0,03'i
107bayt · 0,1 KB
Nihai okuma0,5 RCU
Güçlü okuma1 RCU
İşlemsel okuma2 RCU
Standart yazma1 WCU
İşlemsel yazma2 WCU

AWS boyutlandırma kurallarına göre tahmin. Maliyet de mi gerekli? Fiyatlandırma hesaplayıcısı

Item boyutu neden önemli

DynamoDB'de satır başına ödeme yapmazsınız — her işlemin tükettiği kapasite için ödeme yaparsınız ve bu kapasite item boyutunun bir fonksiyonudur. 4 KB'a kadar bir item'ın okunması bir okuma birimine; 1 KB'a kadar bir yazma bir yazma birimine mal olur. Bir sınırı tek bir baytla aşın, işlem bir sonraki birime yukarı yuvarlanır, böylece 4 KB'tan 4.1 KB'a tırmanan bir item okuma maliyetini ikiye katlar.

Item boyutu ayrıca DynamoDB'nin neyi depolayacağını da sınırlar: her attribute adı ve değeri dahil tek bir item 400 KB'ın altında kalmalıdır. Büyük blob'lar, item'da bir işaretçi ile S3'e aittir. Erişim modellerinizi tasarlamadan önce bayt boyutunu bilmek, sık erişilen item'ları küçük tutmanıza, verimli toplu işlem yapmanıza ve beklenmedik kısıtlamalardan kaçınmanıza yardımcı olur.

Bu hesaplayıcı, AWS'nin belgelenmiş boyutlandırma kurallarını düz JSON'a uygular: adlar ve string'ler için UTF-8 bayt uzunluğu, sayılar için anlamlı basamak kodlaması ve iç içe list'ler ile map'ler için eleman başına ek yük. Kapasite ızgarası ardından her okuma tutarlılığı modu ve standart ile işlemsel yazmalar için birimleri gösterir.

Her bayt bir attribute değeridir — DynamoDB veri türleri her türün nasıl kodlandığını ve boyutlandırıldığını açıklar.

Sıkça sorulan sorular

DynamoDB item boyutunu nasıl hesaplar?

Item boyutu, her attribute için attribute adının UTF-8 bayt uzunluğu artı değerinin boyutunun toplamıdır. String'ler UTF-8 baytlarını sayar, sayılar anlamlı basamaklarla kodlanır, boolean'lar ve null 1 bayt alır, list'ler ve map'ler 3 bayt ek yük artı eleman başına 1 bayt ekler. Bu hesaplayıcı, yapıştırdığınız JSON'a bu kuralları tam olarak uygular.

Kapasite birimleri item boyutundan nasıl türetilir?

Bir okuma kapasite birimi, 4 KB'a kadar bir item'ın güçlü tutarlı okumasını kapsar; nihai tutarlı okumalar yarım birime ve işlemsel okumalar iki birime mal olur. Bir yazma kapasite birimi 1 KB'a kadar bir yazmayı kapsar ve işlemsel yazmalar iki birime mal olur. Item boyutu her zaman bir sonraki 4 KB (okumalar) veya 1 KB (yazmalar) sınırına, en az bir birim olacak şekilde yukarı yuvarlanır.

Maksimum DynamoDB item boyutu nedir?

Tek bir DynamoDB item'ı — item artı tüm attribute adları ve değerleri — 400 KB'ı aşamaz. Item'ınız daha büyükse, onu birden çok item'a bölün veya büyük attribute'ları Amazon S3'te saklayıp item'da bir referans tutun. Hesaplayıcı, sınırı aşan item'ları işaretler.

Neden Sets veya Binary değerleri giremiyorum?

Düz JSON'un bir DynamoDB String Set, Number Set, Binary Set veya Binary değerini ifade etmesinin bir yolu yoktur — bir JSON dizisi her zaman bir List (L)'e ve bir JSON nesnesi bir Map (M)'e eşlenir. Bu türleri boyutlandırmak için onları bayt uzunlukları olarak elle modelleyin veya attribute-value biçimini görmek için DynamoDB JSON dönüştürücüsünü kullanın.

Console olmadan DynamoDB ile çalışın

DynoTable, DynamoDB için hızlı bir masaüstü istemcisidir — tablolara göz atın, SQL tarzı sorgular çalıştırın ve item'ları yerel olarak düzenleyin.