CouchDB, Project Voldemort, Cassandra en un proyecto de Java

Solo estoy evaluando algunas soluciones noSQL para un proyecto actual. Los diferentes sistemas que me llamaron la atención actualmente son

El ultimo es mas en espera en mi evaluación porque escribieron

Todavía es un sistema nuevo que tiene asperezas, mensajes de error incorrectos y probablemente muchos errores no detectados. Háganos saber si encuentra uno de estos, para que podamos solucionarlo.

y busco una solución estable. La otra cosa es que quiero un buen soporte de Java. Para cloudDB, que está escrito en Erlang, existen algunas bibliotecas cliente y ektorp parece ser la mejor opción. El problema aquí es que, de alguna manera, me parece que ektorp no se usa tanto. Si miro en el sección de descargas tiene aprox. 400 descargas. De acuerdo, la mayoría de la gente lo usará a través de la dependencia de maven, pero aún así, el 400 me asombró. Hay una vieja pregunta de Stackoverflow sobre las bibliotecas de Java couchDB, pero esto también recomienda ektorp. ¿Es la mejor solución ahora mismo?

Por el momento, Cassandra me parece la opción más estable y desarrollada, pero cloudDB se siente tan fácil y ordenado, pero de alguna manera carece de herramientas Java para acceder a él o ¿tiene sentido escribir un cliente propio para acceder a cloudDB?

preguntado el 10 de mayo de 11 a las 13:05

Su elección dependerá del rendimiento y la escalabilidad que necesite, y de los tipos de búsqueda / consulta que necesite ejecutar. ¿Puede dar más detalles? -

El sistema crecerá aprox. entre 0.5 TB y 1 TB de datos al mes. Y sobre estos datos es necesario ejecutar consultas. Debido a que los datos están orientados a documentos y no siempre tienen todos los datos disponibles y también son flexibles en los atributos de datos adjuntos al documento, preferiría una arquitectura no relacional. -

Finalmente fui con Apache Cassandra en combinación con Apache Solr y Memcached. -

3 Respuestas

Sería bueno incluir Membase Server (de Couchbase, Inc.) en su lista. Nuestros ingenieros escribieron la mayoría de los proyectos memcached y CouchDB y han escrito el cliente spymemcached (cliente Java). Tenemos bastante experiencia con Java en particular.

Membase Server está en camino de actualizarse con una capa de almacenamiento CouchDB que proporcionará una indexación / consulta mucho mejor a través de la reducción de mapas, así como la maravillosa sincronización que tiene CouchDB.

Puede encontrar más información sobre las características técnicas del producto aquí: http://techzone.couchbase.com/wiki/display/membase/Home

Y más información sobre la empresa: http://www.couchbase.com/

Perry Arquitecto de soluciones sénior, Couchbase Inc.

contestado el 12 de mayo de 11 a las 19:05

Gracias Perry por el dato. Le echaré un vistazo. - H6.

¿Alguna razón en particular por la que MongoDB no forma parte de su lista? Es bastante estable con muchas características excelentes y tienen una muy buena lista de drivera.

Controlador de Java.

http://www.mongodb.org/display/DOCS/Java+Language+Center

https://github.com/mongodb/mongo-java-driver/downloads

contestado el 10 de mayo de 11 a las 19:05

MongoDB no está en mi lista, porque la disponibilidad es importante en el proyecto actual. He investigado un poco y mongoDB parece no ser la mejor opción para esto (consulte, por ejemplo, blog.nahurst.com/visual-guide-to-nosql-systems) - H6.

@Daniel: Con los conjuntos de réplicas de MongoDB y el uso compartido, también puede tener alta disponibilidad con MongoDB. Ver mongodb.org/display/DOCS/Replica+Sets. - Helmut Zechmann

Descargo de responsabilidad: soy el creador de Ektorp.

Ektorp es actualmente la solución más madura que yo sepa. Una de las razones por las que la gente no lo usa más probablemente se deba al hecho de que es bastante fácil escribir usted mismo un cliente CouchDB simple.

El proyecto Spring Data tiene la integración de CouchDB en su hoja de ruta, pero aún no ha llegado muy lejos.

¿Qué herramientas Java para CouchDB te falta?

En lugar de escribir su propio cliente, podría extender fácilmente Ektorp o podría contribuir al proyecto a través de Github: https://github.com/helun/Ektorp

contestado el 12 de mayo de 11 a las 17:05

Hola Henrik, soy bastante nuevo en todo este asunto de CouchDB, y mi forma habitual de manejar las nuevas tecnologías es jugar con ellas. Así que estaba buscando una forma fácil y rápida de conectarme y agregar datos desde Java y me encontré con su biblioteca. Y CouchDB parece ser un tema bastante publicitario en este momento, así que me preguntaba si muchos tipos de Java usan esto. Pero la idea de contribuir a ektorp parece una buena idea. Actualmente todavía estoy verificando si CouchDB es el sistema correcto, pero definitivamente lo usaré para un proyecto privado. - H6.

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.