2010-03-30 16 views
6

Estoy buscando una clave/valor correctamente distribuido (es decir, no solo fragmentado) y persistente (no limitado por la memoria disponible en nodo único o clúster de nodos) "nosql") almacenar que admite consultas de rango por clave principal.Almacén de valores/claves persistentes distribuido más simple que admite consultas de rango de claves primarias

Hasta ahora, el sistema más cercano es Cassandra, que lo hace más arriba. Sin embargo, agrega soporte para otras características que no son esenciales para mí. Entonces, aunque me gusta (y consideraré usarlo por supuesto), estoy tratando de descubrir si podría haber otros proyectos maduros que implementen lo que necesito. Específicamente, para mí, el único aspecto de valor que necesito es acceder a él como un blob. Para la clave, sin embargo, necesito consultas de rango (como en, los valores de acceso ordenados, limitados por los valores de inicio y/o final). Si bien los valores pueden tener estructuras, no es necesario utilizar esa estructura para nada del lado del servidor (puede hacer enlaces de datos del lado del cliente, tipos de valores/contenidos flexibles, etc.). Para una ventaja adicional, el almacenamiento estilo Cassandra (diario, todas las escrituras secuenciales) parece bastante óptimo para mi caso de uso.

Para ayudar a filtrar las respuestas, he investigado algunas alternativas dentro del dominio general como: Voldemort (clave/valor, pero no ordenar) y CouchDB (solo fragmentado, más orientado a lotes); y estoy al tanto de los sistemas que no están del todo distribuidos mientras que califican (variantes bdb, el gabinete de tokio en sí mismo (no estoy seguro si Tyrant podría calificar), redis (solo en la memoria de la tienda)).

EDITAR: Parece que hBase admite consultas de rango de clave primaria, y sus datos se distribuyen debido a hdfs subyacentes. Sin embargo, no creo que esté completamente distribuido desde la perspectiva del sistema, ya que los servidores de la región simplemente están fragmentando el espacio clave, pero no hay redundancia (suponiendo que no haya leído la documentación).

+0

Ok, parece que todavía es Cassandra; lo cual está bien, es un gran proyecto. Solo quiero asegurarme de que no me falta un contendiente obvio aquí. – StaxMan

Respuesta

0

Si está buscando Simple, es posible que desee consultar Redis. Es mucho más simple que Cassandra en términos de la estructura de los datos. Realmente es solo una tienda de valores clave mientras que Cassandra tiene familias de columnas y súper columnas.

+1

Sí, excepto que no se distribuye. Redis se ve muy bien para el caso de uso de un solo host (o maestro/esclavo), o quizás para sharding. – StaxMan

0

¿Has probado Microsoft Azure Table Storage?

+0

No. ¿Es de código abierto? Debería haber mencionado esto más como una limitación; No estoy buscando soluciones comerciales. Pero gracias por señalarlo; Debería leer un poco más al respecto en cualquier caso. – StaxMan

Cuestiones relacionadas