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

NoSQL (MongoDB) vs Lucene (atau Solr) sebagai database Anda

Ini adalah pertanyaan yang bagus, sesuatu yang telah saya renungkan cukup lama. Saya akan merangkum pelajaran yang saya pelajari:

  1. Anda dapat dengan mudah menggunakan Lucene/Solr sebagai pengganti MongoDB untuk hampir semua situasi, tetapi tidak sebaliknya. Posting Grant Ingersoll merangkumnya di sini.

  2. MongoDB dll. tampaknya melayani tujuan di mana tidak ada persyaratan pencarian dan/atau faceting. Tampaknya menjadi transisi yang lebih sederhana dan bisa dibilang lebih mudah bagi pemrogram yang mendetoksifikasi dari dunia RDBMS. Kecuali jika seseorang terbiasa, Lucene &Solr memiliki kurva belajar yang lebih curam.

  3. Tidak banyak contoh penggunaan Lucene/Solr sebagai penyimpanan data, tetapi Guardian telah membuat beberapa kemajuan dan merangkum ini dalam slide-deck yang sangat baik, tetapi mereka juga tidak berkomitmen untuk benar-benar melompat pada kereta musik Solr dan "menyelidiki" menggabungkan Solr dengan CouchDB.

  4. Akhirnya, saya akan menawarkan pengalaman kami, sayangnya tidak dapat mengungkapkan banyak tentang kasus bisnis. Kami bekerja pada skala beberapa TB data, aplikasi yang hampir real-time. Setelah menyelidiki berbagai kombinasi, memutuskan untuk tetap menggunakan Solr. Sejauh ini tidak ada penyesalan (6 bulan &terus bertambah) dan tidak ada alasan untuk beralih ke yang lain.

Ringkasan:jika Anda tidak memiliki persyaratan pencarian, Mongo menawarkan pendekatan yang sederhana &kuat. Namun jika pencarian adalah kunci dari penawaran Anda, kemungkinan besar Anda lebih baik tetap berpegang pada satu teknologi (Solr/Lucene) dan mengoptimalkannya - lebih sedikit bagian yang bergerak.

2 sen saya, semoga membantu.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara Menghapus Bidang dari Dokumen MongoDB ($ tidak disetel)

  2. MongoDB hapusSatu()

  3. mongodb TTL tidak menghapus dokumen

  4. Java, MongoDB:Bagaimana cara memperbarui setiap objek sambil mengulangi koleksi besar?

  5. Mencantumkan pesan terakhir dari setiap percakapan, yang melibatkan pengguna, di MongoDB