Tengo algunos enormes registros de controladores binarios (alrededor de 2-5GB cada uno, y probablemente alrededor de 10 veces más después de convertirlos a una forma legible) y tengo que escribir una herramienta que me permita para examinarlos, ordenarlos, buscarlos y filtrarlos de forma secuencial (con el fin de encontrar y resolver errores).Biblioteca/estructura de datos para manejar datos enormes
Cada entrada de registro tiene algunos atributos como: marca de tiempo, tipo, mensaje, algunos GUID. Las entradas son homogéneas, sin relaciones, no es necesario almacenar los datos después de "inspeccionarlos".
Realmente no sé cómo manejar tantos datos. Mantener todo en la memoria sería una tontería, lo mismo ocurre con mantener los datos en un archivo plano. Pensé en usar DBMS pequeños como SQLite, pero no estoy seguro si será lo suficientemente rápido y no necesito muchas características de DMBS, solo ordenar y buscar. En este caso, me gustaría intercambiar con entusiasmo espacio por velocidad, si es posible.
¿Hay alguna biblioteca (o tal vez estructura de datos) que me ayude a manejar tales cantidades de datos?
RDBMS "servidos" como Postgre, MSSQL, MySQL están fuera de cuestión, la herramienta debe ser fácil de usar en cualquier lugar sin ningún tipo de molestia.
EDIT: ¿Alguien sabe si el modo ": memory" de SQLite tiene alguna restricción en el tamaño de DB o simplemente llenará la memoria virtual hasta que se llene por completo?
¿Por qué se descartan los gustos de PgSQL y MySQL? No requiere mucho esfuerzo configurarlos. – quantumSoup