Naive saveAll() делает N INSERT запросов. Для bulk insert: 1) hibernate.jdbc.batch_size=50 — Hibernate группирует INSERT в batch. 2) spring.jpa.properties.hibernate.order_inserts=true — группирует по типу entity для батчинга. 3) flush и clear каждые N записей чтобы не накапливать в памяти. 4) @GeneratedValue(strategy=SEQUENCE) — IDENTITY генераторы отключают batch insert. 5) EntityManager.persist() в loop с flush/clear лучше чем saveAll(). Для максимальной скорости — JDBC batch или COPY в PostgreSQL.
Как сделать efficient bulk insert в JPA/Hibernate?
Senior
268 просмотровAFK Offer AI
Как настроить structured logging с Logback в Java?