Najszybszy sposób na odczyt i zapis dużych plików Line By Line w Javie

Szukałem wiele dla najszybszego sposobu ponownego odczytu i zapisu dużych plików (0,5 - 1 GB) w Javie z ograniczoną pamięcią (około 64 MB). Każda linia w pliku reprezentuje rekord, więc muszę je uzyskać wiersz po wierszu. Plik jest normalnym plikiem tekstowym.

Wypróbowałem BufferedReader i BufferedWriter, ale nie wydaje się to być najlepszą opcją. Odczytanie i zapisanie pliku o rozmiarze 0,5 GB zajmuje około 35 sekund, tylko zapis do odczytu bez przetwarzania. Myślę, że wąskim gardłem jest tutaj pisanie, ponieważ samo czytanie zajmuje około 10 sekund.

Próbowałem odczytać tablicę bajtów, ale wyszukiwanie linii w każdej odczytanej tablicy zajmuje więcej czasu.

Wszelkie sugestie proszę? Dzięki

questionAnswers(5)

yourAnswerToTheQuestion