Avatar ·

Inserción masiva de datos a través de JpaRepository en Spring Boot y Kotlin

¡Hola a todos! Estoy escribiendo una aplicación en Kotlin + Spring Boot + Hibernate, y necesito insertar muchos registros en una tabla de CockroachDB. Actualmente lo hago en un bucle usando saveAll(): ```kotlin @Repository interface UserRepository : JpaRepository @Service class UserService(private val repo: UserRepository) { fun insertUsers(users: List) { users.forEach { repo.save(it) } // o repo.saveAll(users) } } ``` Problema: si hay 1000+ usuarios, esto funciona muy lento. En los logs se ve que Hibernate crea un INSERT separado para cada registro. He leído que se pueden hacer batch inserts, pero no entiendo cómo configurarlo correctamente. Preguntas: 1. ¿Cómo hacer una inserción masiva a través de JpaRepository para que Hibernate combine los INSERT en un solo lote? 2. ¿Necesito modificar application.yml o agregar alguna anotación? 3. ¿Hay diferencia entre saveAll() y un bucle con save()? 4. ¿Cómo funciona esto con CockroachDB (parece que soporta batch)? Versiones: Spring Boot 3.2, Hibernate 6.4, Kotlin