Alternativas de HashMap para almacenamiento de datos eficiente en memoria

Actualmente tengo un programa de tipo hoja de cálculo que mantiene sus datos en una ArrayList of HashMaps. Sin duda se sorprenderá cuando le diga que esto no ha demostrado ser ideal. La sobrecarga parece usar 5 veces más memoria que los datos en sí.

Esta pregunta pregunta sobre bibliotecas de colecciones eficientes, y la respuesta fue usar Google Collections.Mi seguimiento es "¿qué parte?". He estado leyendo la documentación, pero no creo que me dé una muy buena idea de qué clases son adecuadas para esto. (También estoy abierto a otras bibliotecas o sugerencias).

Así que estoy buscando algo que me permita almacenar datos densos de tipo hoja de cálculo con una sobrecarga de memoria mínima.

Actualmente, mis objetos de campo hacen referencia a mis columnas, las filas por sus índices y los valores son objetos, casi siempre cadenas.Algunas columnas tendrán muchos valores repetidosLas operaciones principales son actualizar o eliminar registros basados en valores de ciertos campos, y también agregar / eliminar / combinar columnas

Conozco opciones como H2 y Derby, pero en este caso no estoy buscando usar una base de datos integrada.

EDITAR: Si está sugiriendo bibliotecas, también agradecería que me indicara una clase o dos en particular que se aplicarían aquí. Mientras que la documentación de Sun generalmente incluye información sobre qué operaciones son O (1), cuáles son O (N), etc., no veo mucho de eso en las bibliotecas de terceros, ni realmente ninguna descripción de qué clases son las más adecuadas para qué .

Respuestas a la pregunta(10)

Su respuesta a la pregunta