Spring Boot, MySQL, 엔티티 스키마 변경 없이 Bulk Insert로 속도 개선하기
개요 현재 내가 몸 담고 있는 프로젝트는 세금 계산과 관련되어 한 번에 수십에서 수백만의 엔티티 생성이 발생하는 비지니스 로직이 존재하며, 레코드 생성의 속도가 곧 경쟁력이 되기에 최적화에 있어 아주 중요한 요소이다. 이번 글에서는 기존에 대량의 엔티티가 단건으로 저장되던 것을 Buik Insert로 개선하는 과정을 정리하였다. MySQL 커넥션 스트링 추가 MySQL은 반다시 rewriteBatchedStatements=true 옵션을 커넥션 스트링에 추가해야 Bulk Insert가 활성화된다. Hikari Pool을 이용하여DataSource를 생성할 경우 아래와 같이 옵션을 추가하면 된다. val config = HikariConfig().apply { ... addDataSourceProperty..
SW 개발
2022. 6. 22. 13:28
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 구동계
- jpa
- spring
- graylog
- Kendo UI Web Grid
- kotlin
- Tomcat
- 로드 바이크
- java
- Kendo UI
- 자전거
- jstl
- MySQL
- Docker
- JHipster
- Spring MVC 3
- JavaScript
- bootstrap
- Eclipse
- 알뜰폰
- jsp
- maven
- DynamoDB
- 태그를 입력해 주세요.
- node.js
- 로드바이크
- Spring Boot
- chrome
- CentOS
- 평속
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 |
글 보관함