매우 큰 CSV 파일 (1GB 이상)이 있습니다.이 파일에는 100,000 개의 행이 있습니다.CSV 파일을 여러 청크로 분할하고 Java 코드에서 해당 청크를 병렬로 읽는 방법
보내려는 HTTP 요청의 본문을 만들기 위해 CSV 파일의 각 행을 구문 분석하는 Java 프로그램을 작성해야합니다.
즉, CSV 파일의 줄에 해당하는 100,000 개의 HTTP 요청을 보내야합니다. 단일 스레드에서 이러한 작업을 수행하면 시간이 오래 걸립니다.
i) CSV 파일에서 한 줄을 읽고, ii) 본문에 읽는 내용이 들어있는 HTTP 요청을 만들고, iii) HTTP 요청을 보내고 응답을 받기 위해 1,000 개의 스레드를 만들고 싶습니다.
이렇게하면 CSV 파일을 1,000 개의 청크로 분할해야하며 청크마다 서로 겹치는 선이 없어야합니다.
그런 분할 절차에 가장 좋은 방법은 무엇입니까?
* 저는 매우 큰 CSV 파일 (1GB +)을 가지고 있습니다. 요즘 컴퓨터는 100,000 라인 *입니다. 모든 CPU를 포화 상태로 만들 수 있다면 CPU보다 스레드 수가 훨씬 많습니다. 결국 그것은 IO departement에 묶여 있으며 서버에 동시 요청 수를 보내면 의도적으로 DoS를 시도하지 않으면 현명하지 않습니다. – bestsss