DynamoDB vs Amazon DocumentDB
Keduanya adalah basis data NoSQL AWS yang sepenuhnya terkelola, tetapi memecahkan masalah yang berbeda. DynamoDB adalah penyimpanan key-value dan dokumen serverless; Amazon DocumentDB adalah basis data dokumen yang kompatibel dengan MongoDB. Halaman ini membandingkan keduanya secara faktual sehingga Anda dapat memilih yang tepat sebelum berkomitmen pada suatu model data.
Apa perbedaan antara DynamoDB dan DocumentDB?
DynamoDB adalah basis data key-value dan dokumen serverless tanpa server atau cluster yang perlu dikelola — Anda menskala berdasarkan volume permintaan atau kapasitas provisioned. Amazon DocumentDB adalah basis data dokumen yang kompatibel dengan MongoDB yang berjalan pada cluster instance (satu primary ditambah read replica). DynamoDB menggunakan API-nya sendiri; DocumentDB berbicara dengan MongoDB API, sehingga aplikasi, driver, dan tool MongoDB yang sudah ada dapat berfungsi terhadapnya.
DynamoDB vs Amazon DocumentDB sekilas
| Karakteristik | DynamoDB | Amazon DocumentDB |
|---|---|---|
| Model data | Key-value dan dokumen (Item dengan atribut bertipe) | Dokumen (dokumen JSON/BSON dalam koleksi) |
| Query API | DynamoDB API (GetItem, Query, Scan, PutItem, UpdateItem) ditambah PartiQL | MongoDB API — driver, tool, dan shell mongo/mongosh yang sama yang Anda gunakan dengan MongoDB |
| Ukuran record maks | 400 KB per Item | 16 MB per dokumen (BSON, batas dokumen MongoDB) |
| Indeks | Global secondary index (GSI) dan local secondary index (LSI) | Secondary index bergaya MongoDB, termasuk compound index |
| Konsistensi | Eventually consistent secara default; strongly consistent reads opsional; transaksi ACID | Baca dari primary bersifat strongly consistent; baca dari replica dapat eventually consistent (read preference); transaksi ACID |
| Penskalaan / provisioning | Serverless — tanpa instance atau cluster; kapasitas on-demand atau provisioned | Cluster berbasis instance (satu primary ditambah hingga 15 replica) atau elastic cluster; kelas instance serverless juga tersedia |
| Model harga | Bayar-per-permintaan (on-demand) atau kapasitas baca/tulis provisioned, ditambah penyimpanan | Komputasi per-instance-hour, ditambah permintaan I/O, penyimpanan, dan penyimpanan backup |
| Paling cocok | Workload key-value dan serverless berskala besar dengan pola akses yang diketahui | Workload MongoDB yang sudah ada dan aplikasi dokumen yang butuh MongoDB API di AWS |
Ukuran mengikuti dokumentasi masing-masing layanan. DynamoDB mengukur ukuran dalam unit biner (1 KB = 1024 byte); angka 16 MB DocumentDB adalah batas dokumen BSON MongoDB standar.
Kapan DynamoDB pilihan yang lebih baik
- Anda menginginkan nol infrastruktur untuk dikelola. DynamoDB tidak memiliki instance, cluster, atau replica yang perlu diatur ukuran, di-patch, atau di-failover — Anda membuat tabel dan membaca/menulisnya. Kapasitas bersifat on-demand (bayar per permintaan) atau provisioned.
- Workload Anda key-value atau single-table dengan pola akses yang diketahui. DynamoDB memberi imbalan atas perancangan di seputar kueri Anda di awal. Lihat cara memodelkan data di DynamoDB dan single-table design.
- Anda membutuhkan performa yang dapat diprediksi pada skala sangat tinggi. DynamoDB memberikan baca dan tulis milidetik satu digit yang tetap stabil seiring pertumbuhan trafik.
- Anda membangun serverless di AWS. DynamoDB berpasangan secara alami dengan Lambda dan penagihan bayar-per-permintaan, tanpa biaya instance yang idle.
Kapan DocumentDB pilihan yang lebih baik
- Anda sudah menjalankan MongoDB. DocumentDB kompatibel dengan MongoDB API, sehingga driver, tool, dan kode aplikasi Anda yang sudah ada sering kali dapat terhubung dengan perubahan minimal — berguna untuk lift-and-shift ke AWS.
- Anda membutuhkan dokumen besar atau kueri ad-hoc yang kaya. Batas dokumen 16 MB DocumentDB jauh lebih besar daripada Item 400 KB DynamoDB, dan bahasa kueri MongoDB mendukung filter dan agregasi yang fleksibel tanpa merancang setiap pola akses terlebih dahulu.
- Anda lebih menyukai model dokumen-utama dengan API yang familier. Jika tim Anda berpikir dalam koleksi dan dokumen MongoDB alih-alih partition/sort key, DocumentDB mempertahankan model mental itu.
Tidak ada yang secara ketat "lebih baik" — DynamoDB menukar fleksibilitas kueri dengan skala serverless yang bebas repot, sementara DocumentDB menukar kesederhanaan serverless dengan kompatibilitas MongoDB dan dokumen yang lebih besar dan fleksibel.
Bekerja dengan DynamoDB
Setelah Anda memilih DynamoDB, DynoTable adalah klien DynamoDB desktop untuk menelusuri, mengedit, dan mengkueri tabel Anda tanpa AWS Console. Ia membaca kredensial AWS standar Anda, jadi data Anda tetap di akun Anda dan di DynamoDB.
Karena DynamoDB memiliki sintaks expression-nya sendiri alih-alih SQL atau bahasa kueri MongoDB, alat DynamoDB Expression Builder gratis membantu Anda membangun kondisi kunci, filter expression, dan update expression yang benar serta menyalinnya langsung ke dalam kode SDK Anda. Untuk memeriksa biaya sebelum bermigrasi, kalkulator harga DynamoDB mengestimasi pengeluaran kapasitas on-demand dan provisioned.
FAQ
Apakah DocumentDB sama dengan DynamoDB? Tidak. Keduanya adalah dua layanan basis data AWS yang terpisah. DynamoDB adalah penyimpanan key-value dan dokumen serverless dengan API-nya sendiri, sementara Amazon DocumentDB adalah basis data dokumen yang kompatibel dengan MongoDB yang berjalan pada cluster instance. Keduanya tidak berbagi query API dan disediakan, diskalakan, serta diberi harga secara berbeda.
Mana yang lebih murah, DynamoDB atau DocumentDB? Tergantung pada workload, jadi tidak ada jawaban universal. DynamoDB menagih per permintaan (on-demand) atau per kapasitas provisioned ditambah penyimpanan, tanpa biaya instance yang idle — sering kali lebih murah untuk trafik yang tidak menentu atau berbaseline rendah. DocumentDB menagih per instance-hour ditambah I/O, penyimpanan, dan backup, yang bisa lebih hemat biaya untuk workload berthroughput tinggi yang stabil pada instance berukuran tepat.
Apakah DynamoDB mendukung MongoDB API?
Tidak. DynamoDB menggunakan API-nya sendiri (GetItem, Query, Scan, PutItem,
UpdateItem) dan juga mendukung PartiQL, bahasa kueri kompatibel-SQL. Amazon DocumentDB
adalah layanan AWS yang menyediakan kompatibilitas MongoDB API.
Terkait
- Pelajari tipe data DynamoDB dan single-table design sebelum Anda memodelkan tabel.
- Bandingkan mode kapasitas dalam on-demand vs provisioned.
- Bangun kueri dengan cepat menggunakan DynamoDB Expression Builder gratis, lalu unduh DynoTable untuk mengerjakan tabel Anda.
Terakhir diverifikasi 2026-07-12 terhadap developer guide AWS DynamoDB dan Amazon DocumentDB. Amazon DocumentDB dan MongoDB adalah merek dagang dari pemiliknya masing-masing, dirujuk di sini hanya untuk tujuan identifikasi.