ฉันมีCSVไฟล์35GB ฉันต้องการอ่านแต่ละบรรทัดและเขียนบรรทัดออกเป็น CSV ใหม่หากตรงกับเงื่อนไข
try (BufferedWriter writer = Files.newBufferedWriter(Paths.get("source.csv"))) {
    try (BufferedReader br = Files.newBufferedReader(Paths.get("target.csv"))) {
        br.lines().parallel()
            .filter(line -> StringUtils.isNotBlank(line)) //bit more complex in real world
            .forEach(line -> {
                writer.write(line + "\n");
        });
    }
}
สิ่งนี้ใช้เวลาประมาณ 7 นาที เป็นไปได้หรือไม่ที่จะเพิ่มความเร็วของกระบวนการนั้นให้มากขึ้น?
parallelทำให้เร็วขึ้น? และนั่นไม่สับเปลี่ยนเส้นรอบ ๆ ?
                BufferedWriterตัวเองโดยใช้Constructorที่ให้คุณตั้งค่าขนาดบัฟเฟอร์ บางทีขนาดบัฟเฟอร์ที่ใหญ่กว่า (หรือเล็กกว่า) อาจสร้างความแตกต่างได้ ฉันจะพยายามจับคู่BufferedWriterขนาดบัฟเฟอร์กับขนาดบัฟเฟอร์ของระบบปฏิบัติการโฮสต์