Amazon SimpleDB vs Amazon DynamoDB

Jawaban:

179

Ini dibahas oleh masing-masing FAQ T: Apa perbedaan Amazon DynamoDB dari Amazon SimpleDB? Yang mana yang harus saya gunakan? (tautan hash tidak lagi berfungsi, tetapi gunakan Cari di-halaman untuk menemukan pertanyaan di dalam halaman) sampai batas tertentu, dengan ringkasan paling ringkas di akhir paragraf:

Sementara SimpleDB memiliki batasan penskalaan, itu mungkin cocok untuk beban kerja yang lebih kecil yang membutuhkan fleksibilitas kueri. Amazon SimpleDB secara otomatis mengindeks semua atribut item dan dengan demikian mendukung fleksibilitas permintaan dengan biaya kinerja dan skala.

Jadi ini merupakan trade off antara kinerja / skalabilitas dan kesederhanaan / fleksibilitas, yaitu untuk skenario yang lebih sederhana mungkin masih lebih mudah untuk memulai dengan SimpleDB untuk menghindari kompleksitas merancang aplikasi Anda untuk DynamoDB (lihat di bawah untuk perspektif yang berbeda).

Referensi entri FAQ yang ditautkan oleh Amazon DynamoDB dari Werner Vogel - Layanan Database NoSQL yang Cepat dan Dapat diskalakan yang dirancang untuk Aplikasi Skala Internet , yang memang merupakan bacaan yang rumit dan dengan demikian sangat dianjurkan mengenai Sejarah NoSQL di Amazon secara umum dan Dynamo pada khususnya; itu berisi lebih banyak wawasan yang menjawab pertanyaan Anda juga, misalnya

Menjadi jelas bahwa pengembang [bahkan insinyur Amazon] sangat menyukai kesederhanaan daripada kontrol yang halus ketika mereka memilih "dengan kaki mereka" dan mengadopsi solusi AWS berbasis cloud, seperti Amazon S3 dan Amazon SimpleDB, daripada Dynamo. [tambahan milikku]

Jelas sekali DynamoDB telah diperkenalkan untuk mengatasi hal ini dan dengan demikian dapat dikualifikasikan sebagai penerus SimpleDB daripada 'hanya' mengubah penawaran NoSQL yang ada:

Kami menyimpulkan bahwa solusi ideal akan menggabungkan bagian terbaik dari desain Dynamo asli (skalabilitas tambahan, kinerja tinggi yang dapat diprediksi) dengan bagian terbaik dari SimpleDB (kemudahan administrasi layanan cloud, konsistensi, dan model data berbasis tabel yang lebih kaya dari toko nilai kunci murni).

Ringkasan Werner menyarankan DynamoDB cocok untuk aplikasi dalam ukuran apa pun sekarang sesuai:

Amazon DynamoDB dirancang untuk mempertahankan kinerja tinggi yang dapat diprediksi dan sangat efisien biaya untuk beban kerja skala apa pun, dari yang terkecil hingga aplikasi skala internet terbesar.

Steffen Opel
sumber
27

menggunakan SimpleDB atau DynamoDB, itu tergantung pada kasus penggunaan Anda, saya berbagi beberapa pengalaman saya menggunakan SimpleDB dalam beberapa kasus, bukan DynamoDB . Di produk lain, saya menggunakan SimpleDB dan DynamoDB untuk menyimpan data yang berbeda.

Mason Zhang
sumber
27
menyukai pos - tidak ada salahnya untuk meringkasnya di sini
nik.shornikov
menyukai pos juga. @Mason, apa pendapat Anda tentang bagaimana SimpleDCB perlahan-lahan menghilang dari konsol produk AWS? Apakah Anda masih menggunakan SimpleDB atau sudahkah Anda bermigrasi?
David Robbins
1
@ DavidVobbins SimpleDB mungkin telah ditinggalkan oleh AWS, tetapi masih ada dan sesuai dengan modal data saya dengan sempurna. Saya belum memigrasi kode saya, dan belum berencana untuk melakukannya. Tetapi untuk produk baru, saya memilih database lain seperti dynamodb atau mysql.
Mason Zhang
Situs tertaut telah ditandai sebagai malware oleh Sophos. Gunakan dengan hati-hati.
IanGilham
1
@IanGilham terima kasih atas pengingatnya. Saya memeriksa laporan pemindaian ( virustotal.com/en/url/… ) lagi: 1/68 menandai situs sebagai malware. Jadi mungkin ada yang salah dengan Sophos. BTW: situs ini sebenarnya dikelola oleh google blogspot.
Mason Zhang
18

SimpleDB tampaknya tidak mendapatkan cinta apa pun dari Amazon akhir-akhir ini - sulit bahkan menemukan di mana harus menyediakannya di AWS Console. Sepertinya SimpleDB tidak lagi di-iterasi - gunakan DynamoDB sebagai pilihan pertama Anda untuk Database Dokumen di AWS.

SimpleDb tidak lagi benar-benar "diulang". Artinya tidak ada perkembangan baru di masa depan untuk simpledb. Itu "dipelihara dan didukung", tetapi itu tidak akan menjadi lebih baik.

berlayar
sumber
2
Tidak bisa berkembang dengan sempurna!
dividebyzero
10

3 perbedaan utama:

  1. Pengindeksan

    • SimpleDB membuat indeks untuk bidang "SETIAP" dalam sebuah tabel.
    • DynamoDB Anda harus mengatur bidang pengindeksan sebelum membuat database, dan tidak dapat dimodifikasi.
  2. Harga:

    • Harga SimpleDB didasarkan pada jam alat berat dan kapasitas penyimpanan
    • DynamoDB menagih uang dengan kapasitas catatan Baca / Tulis per detik.
  3. Skalabilitas:

    • SimpleDB membutuhkan partisi manual jika penyimpanan data melebihi 10GB.
    • DynamoDB secara otomatis mendistribusikan data di bawah tenda, sehingga memberikan skalabilitas yang sangat tinggi.
Sagar Ranglani
sumber
5

Salah satu perbedaannya dulu (seperti @Mason Zhang menyatakan dalam artikelnya di atas) dalam pengindeksan. DynamoDB digunakan untuk membatasi Anda membuat indeks pada saat membuat tabel. Namun, sekarang (sejak awal 2014), ada konsep Global Secondary Index (GSI). GSI dapat dibuat di atas meja kapan saja. Hingga 5 didukung. Jadi, pengindeksan tidak lagi menjadi masalah pemblokiran untuk banyak kasus penggunaan.

Anda juga harus tahu bahwa SimpleDB memiliki batas ukuran dan kinerja. (10GB dan katakan, 25 permintaan / detik)

Mungkin pada akhirnya, DynamoDB akan menggantikan SimpleDB di semua kecuali kasus penggunaan yang paling sederhana.

kalyanswaroop
sumber
0

Secara sederhana kedua penyimpanan data adalah NoSql.

Perbedaannya terletak pada skalabilitas (dan beberapa aspek lainnya, tetapi penskalaan membawa nilai terbesar menurut saya). SimpleDB sangat mirip dengan MongoDB tetapi memiliki banyak batasan dalam hal penskalaan.

Tetapi DynamoDB memungkinkan Anda untuk menyediakan yang kecil, dan meningkatkan sebanyak yang Anda butuhkan. Dan turunkan saat itu tidak diperlukan. (mis. Selama promosi, daftar rujukan selebriti, dll. skenario seperti ini akan memiliki lonjakan persyaratan perangkat keras berbasis waktu)

Gayan Hewa
sumber
0

Saya percaya perbedaan utama dalam Simple DB vs Dynamo DB

  1. Performa yang dapat diprediksi dalam hal latensi dan mampu menangani volume tinggi tanpa mengurangi latensi dan throughput. DynamoDB mencapai ini dengan menggunakan kunci partisi
  2. Baca, tulis optimisasi yang dapat dikustomisasi
  3. Model konsistensi akhirnya lebih baik karena penggunaan algoritma hashing yang konsisten
webjockey
sumber
0

Ini adalah dua perbedaan utama yang harus Anda waspadai

1: SimpleDB has a strict storage limitation of 10 GB. However, DynamoDB has no storage limitations for the data. It is highly scalable in terms of both storage and computation.

2:SimpleDB can handle max up to 25 Write Operations/Second. No such limit in DynamoDB.
Sateesh
sumber
0

Ini adalah dua perbedaan utama yang harus Anda waspadai.

Dengan DynamoDB Anda dapat membangun aplikasi dengan throughput dan penyimpanan yang hampir tidak terbatas. Itu tidak terjadi pada SimpleDB.

  • 1: BATASAN PENYIMPANAN KETAT 10GB

SimpleDB memiliki batasan penyimpanan ketat 10 GB. Namun, DynamoDB tidak memiliki batasan penyimpanan untuk data. Ini sangat scalable dalam hal penyimpanan dan komputasi.

  • 2: MAKA HINGGA 25 OPERASI MENULIS / KEDUA

SimpleDB dapat menangani maks hingga 25 Operasi Tulis / Detik . Tidak ada batasan seperti itu di DynamoDB.

Sateesh
sumber