Cześć,
Mam duży plik CSV na dysku (ponad 2GB), chcę w jak najkrótszym czasie:
- czytam wiersz
- tnę go, żeby mieć dostęp do każdej wartości
- wsadzam w jakiś model
- wrzucam na kolejke
Jak to zrobić, żeby było szybko i dobrze? Myślałem, żeby użyć parallel streamów
public void processFile() {
try {
Stream<String> lines = Files.lines(Paths.get(path, fileName));
lines.parallel().forEach( csvRow -> {
csvRow.split(";");
// ... i dalej wsadzanie wartości w obiekt, następnie obiekt wysyłany na kolejke
});
} catch (IOException e) {
e.printStackTrace();
}
}
Będę wdzięczny za rady