Estoy buscando una estructura hash persistente en java, un simple almacén de clave-valor, donde la clave es una cadena única y el valor es un int. El valor de una clave se incrementará cada vez que se agregue una clave existente a la tienda.Java: ¿gran estructura hash persistente?
Necesito que sea bastante grande, posiblemente 500m - 1bn de llaves. He estado evaluando el tokyo-cabinet http://fallabs.com/tokyocabinet/javadoc/, pero no estoy seguro de lo bien que se escalará: los tiempos de inserción parecen ser más largos a medida que el hash crece.
¿Alguna idea sobre lo que podría ser apropiado?
Gracias
Editar: el fin de reducir/S de disco que voy a ser el almacenamiento en caché de datos en un HashMap en memoria, a continuación, actualizar el hash persistente de una sola vez cuando la caché crece a una cierto tamaño
Edit2: Una de las razones de la persistencia es que tengo una memoria RAM limitada, 4 GB, por lo que no puedo incluir una estructura grande en la memoria.
Pregunta interesante. –
Tiene el tipo de problema que estará limitado por su elección de hardware. Debes diseñar tu software para evitar esta limitación, sin embargo, dado que solo te has permitido 4 bytes por entrada, vas a sufrir porque el rendimiento del disco puede ser 1000 veces más lento que la memoria principal. –