[JPA] MySQL을 사용할때 saveAll을 사용할경우 주의사항
최근 MySQL 사용할 경우 saveAll() 메서드를 사용할때, 한 번의 호출로 여러 엔티티를 저장할 수 있을 것이라 생각했지만, 실제 실행 로그를 확인해보니 단일 쿼리 하나가 실행되는 것이 아니라 개별적인 INSERT 쿼리가 전송되는 것을 확인했습니다.왜 그런지 궁금하여 알아본것을 정리하겠습니다. 배경지식saveAll() 메서드는 실제로 단건 삽입 방식으로 동작합니다.즉, 이론적으로는 각 엔티티마다 개별 INSERT 쿼리가 실행되는 것이 정상입니다.하지만 batch 처리 옵션과 MySQL의 rewriteBatchedStatements 옵션을 사용하면, 성능 향상을 위해 여러 INSERT를 하나의 multi-row insert로 묶어 실행할 수 있습니다. batch 처리 옵션Hibernate에서 내부적..