sql >> Base de Datos >  >> NoSQL >> MongoDB

NoSQL (MongoDB) vs Lucene (o Solr) como su base de datos

Esta es una gran pregunta, algo sobre lo que he reflexionado bastante. Resumiré mis lecciones aprendidas:

  1. Puede usar fácilmente Lucene/Solr en lugar de MongoDB para casi todas las situaciones, pero no al revés. La publicación de Grant Ingersoll lo resume aquí.

  2. MongoDB, etc. parece tener un propósito en el que no hay requisitos de búsqueda y/o creación de facetas. Parece ser una transición más simple y posiblemente más fácil para los programadores que se desintoxican del mundo RDBMS. A menos que uno esté acostumbrado, Lucene &Solr tienen una curva de aprendizaje más pronunciada.

  3. No hay muchos ejemplos del uso de Lucene/Solr como almacén de datos, pero Guardian ha hecho algunos progresos y lo resume en una excelente presentación de diapositivas, pero tampoco se comprometen a subirse por completo al carro de Solr e "investigar" la combinación de Solr. con CouchDB.

  4. Finalmente, ofreceré nuestra experiencia, lamentablemente no puede revelar mucho sobre el caso de negocios. Trabajamos en la escala de varios TB de datos, una aplicación casi en tiempo real. Después de investigar varias combinaciones, decidió quedarse con Solr. No me arrepiento hasta ahora (6 meses y contando) y no veo ninguna razón para cambiar a algún otro.

Resumen:si no tiene un requisito de búsqueda, Mongo ofrece un enfoque simple y poderoso. Sin embargo, si la búsqueda es clave para su oferta, es probable que sea mejor que se ciña a una tecnología (Solr/Lucene) y la optimice al máximo:menos partes móviles.

Mis 2 centavos, espero haber ayudado.