Estoy trabajando con un archivo de texto muy grande (755Mb). Necesito ordenar las líneas (alrededor de 1890000) y luego escribirlas en otro archivo.ordenando líneas de un enorme archivo.txt en java
ya me di cuenta de que la discusión que tiene un archivo de partida muy similar a la mía: Sorting Lines Based on words in them as keys
El problema es que no puedo almacenar las líneas en una colección en la memoria porque me sale una excepción montón de Java Espacio (incluso si he ampliado al máximo) .. (bastante bueno en!)
que o bien no se puede abrir con Excel y usar la característica de ordenación debido a que el archivo es demasiado grande y no puede ser completamente cargada ..
I pensado en usar un DB ... pero creo que escribir todas las líneas, entonces la consulta SELECT es demasiado larga en términos de tiempo de ejecución ... ¿estoy equivocado?
Alguna pista apreciados Gracias de antemano
Bueno, "demasiado tiempo" depende de sus expectativas. Si esperas hacerlo en medio segundo, de hecho será demasiado largo. Si no te importa esperar unos segundos o minutos, no debería ser un problema. Pruébalo y mira si el tiempo es razonable. –
Debería poder almacenar el archivo en la memoria con aproximadamente 1 GB de heap usando las últimas versiones de Java. es decir con '-XX: + UseCompressedStrings' –