[TIL] Batch ::: 44842개의 place 데이터 ElasticSearch에 인덱싱
문제상황
- 4만여개의 place 데이터를 api에서 받아온 데이터로 더미를 만들어서 가져와야한다.
- 44842개의 데이터를 아무런 처리 없이 인덱싱 할 경우 7782개 에서 인덱싱이 멈춰버리는 문제
의견조율
- Batch, ES 내부 Bulk Api 등으로 데이터 처리 최적화 필요
- 200개 Batch할 경우 : 105초
- 500개 Batch할 경우 : 43.027초
- 1000개 Batch할 경우 : 23.113초
- 4000개 Batch할 경우 : 16.274초
- 10000개 Batch할 경우 : 12.774초
- 15000개 Batch할 경우 : 13:597초
문제해결 및 의사결정
- Batch 적용, 코드 시작과 끝에 new Date 설정하여 StartTime, EndTime 체크하여 어떤 코드가 더 빠른지 체크하고 최적화 시킨 코드 적용하기.