MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Tabel Azure Vs MongoDB di Azure

Penyimpanan Tabel adalah fitur penyimpanan inti Windows Azure, dirancang agar dapat diskalakan (100TB 200TB 500TB per akun), tahan lama (direplikasi tiga kali di pusat data, secara opsional direplikasi secara geografis ke pusat data lain), dan tanpa skema (setiap baris dapat berisi properti apa pun yang Anda inginkan). Baris terletak dengan kunci partisi + kunci baris, menyediakan pencarian yang sangat cepat. Semua akses Penyimpanan Tabel adalah melalui REST API yang terdefinisi dengan baik yang dapat digunakan melalui bahasa apa pun (dengan SDK, dibangun di atas REST API, sudah tersedia untuk .NET, PHP, Java, Python &Ruby).

MongoDB adalah database berorientasi dokumen. Untuk menjalankannya di Azure, Anda perlu menginstal MongoDB ke peran web/pekerja atau Mesin Virtual, arahkan ke drive cloud (sehingga memberikan huruf drive) atau disk yang terpasang (untuk Mesin Virtual Windows/Linux), secara opsional aktifkan penjurnalan (yang saya sarankan), dan secara opsional tentukan titik akhir eksternal untuk Anda gunakan (atau akses melalui jaringan virtual). Omong-omong, Cloud Drive/disk terpasang sebenarnya disimpan di Azure Blob, memberi Anda daya tahan dan georeplikasi yang sama seperti Azure Tables.

Saat membandingkan keduanya, ingatlah bahwa Penyimpanan Tabel adalah Penyimpanan sebagai Layanan:Anda cukup mengakses titik akhir REST yang terkenal. Dengan MongoDB, Anda bertanggung jawab untuk memelihara database (misalnya, setiap kali MongoDB Inc (sebelumnya 10gen) mengeluarkan versi baru MongoDB, Anda harus memperbarui server Anda sesuai dengan itu).

Mengenai versi alfa MongoDB Inc yang ditunjukkan oleh jtoberon:Jika Anda melihat lebih dekat, Anda akan melihat beberapa hal penting:

  • Pengaturannya adalah untuk instance mongodb Standalone, tanpa replika-set atau pecahan. Mengenai set replika, Anda masih mendapatkan beberapa manfaat menggunakan versi Standalone, karena cara kerja penyimpanan Blob.
  • Untuk menyediakan ketersediaan tinggi, Anda dapat menjalankan dengan beberapa instance. Dalam kasus ini, hanya satu instance yang melayani database, dan satu adalah 'warm-standby' yang meluncurkan proses mongod segera setelah instance lainnya gagal (untuk boot ulang pemeliharaan, kegagalan perangkat keras, dll.).

Sementara pembungkus Windows Azure 10gen masih dianggap 'alfa', mongod.exe tidak. Anda dapat meluncurkan exe mongod sama seperti Anda meluncurkan exe Windows lainnya. Ini hanya kode manajemen di sekitar peluncuran, dan itulah yang ditunjukkan oleh implementasi alpa.

EDIT 2011-12-8:Ini tidak lagi dalam status alfa. Anda dapat mengunduh proyek MongoDB+Windows Azure terbaru di sini, yang menyediakan dukungan kumpulan replika.

Untuk kinerja, saya pikir Anda harus melakukan beberapa benchmarking. Karena itu, pertimbangkan hal berikut:

  • Saat mengakses Penyimpanan Tabel atau MongoDB dari, misalnya, Peran Web, Anda masih menjangkau sistem Penyimpanan Windows Azure.
  • MongoDB menggunakan banyak memori untuk cache-nya sendiri. Karena alasan ini, banyak sistem MongoDB skala tinggi dikerahkan ke ukuran instans yang lebih besar. Untuk akses Penyimpanan Tabel, Anda tidak akan memiliki pertimbangan ukuran memori yang sama.

EDIT 7 April 2015 Jika Anda ingin menggunakan database berbasis dokumen sebagai layanan, Azure sekarang menawarkan DocumentDB.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kerangka kerja agregat tidak dapat menggunakan indeks

  2. MongoDB vs. DynamoDB:Apa yang perlu Anda ketahui

  3. windows:Rails:kesalahan saat menginstal bson_ext

  4. Menggunakan generator Rekaman Aktif setelah instalasi Mongoid?

  5. Bagaimana cara melindungi bidang kata sandi di Mongoose/MongoDB sehingga tidak akan kembali dalam kueri ketika saya mengisi koleksi?