2012-03-23 17 views
5

Necesito almacenar tal vez 250 millones de registros de Cadena -> Cadena de mapeos y una base de datos parece sobrecargada para este tipo de cosas.Crear mi propio almacenamiento de datos basado en texto

No puedo almacenar esto en la memoria ya que se quedará sin espacio en el montón. Podría extender el espacio del montón, pero preferiría no hacer esto.

Quiero un acceso tan rápido como pueda a un solo mapeo como sea posible y quería saber la mejor manera de hacerlo.

La cadena inicial es única y lo que estaré buscando. También sé en qué rango se encuentra la longitud de la cuerda, pero su valor mapeado podría ser de cualquier longitud.

¿Es posible obtener algo tan rápido como una base de datos para buscar? Supongo que no, pero solo quería estar seguro.

Estoy trabajando en Java, pero supongo que esto será independiente del lenguaje.

+7

para mí por 250 millones de registros, una base de datos no parece 'sobrecarga'. Me gustaría ir con un db – franka

+0

Te das cuenta de que tan pronto como muevas tus datos de la memoria a un archivo, la velocidad va a ser de órdenes de magnitud más baja, ¿verdad? – dasblinkenlight

+1

Cuando la base de datos está sobrecargada, ¿cree que puede manejarla en un sistema de archivos sin formato? – kosa

Respuesta

1

¿No puedes usar un almacén de valores-clave ya existente como Voldemort, CouchDB o Cassandra? Hay tantos proyectos existentes, ¿por qué escribir uno nuevo?

+0

Esto probablemente debería ser un comentario, no una respuesta. – David

+0

Bueno, es una especie de respuesta: el software que ya existe, ve a usarlo. –

Cuestiones relacionadas