JPA / Hibernate poprawiają wydajność wstawiania wsadowego
Mam model danych, który ma JEDNĄ DO WIELU relację między JEDNĄ jednostką a 11 innymi podmiotami. Te 12 jednostek razem reprezentuje jeden pakiet danych. Problem, który mam, wiąże się z liczbą wstawek po stronie „wielu” tych relacji. Niektóre z nich mogą mieć aż 100 pojedynczych wartości, więc aby zapisać cały pakiet danych w bazie danych, potrzeba do 500 insertów.
Używam MySQL 5.5 z tabelami InnoDB. Teraz, testując bazę danych, widzę, że z łatwością może wykonać 15000 wstawek na sekundę podczas przetwarzania wsadowej wstawki (a nawet więcej z LOAD DATA, ale nie jest to praktyczne w tym przypadku).
Czy jest jakiś sposób, aby zebrać te 500 pojedynczych wkładek w, powiedzmy, 5 insertów ze 100 WARTOŚCIĄ (dla 5 połączonych jednostek, z których każdy ma 100 wartości) przy użyciu Hibernate?
Zgodnie z prośbą:
@OneToMany(mappedBy="beat", cascade=CascadeType.ALL)
@OrderBy("miliseconds ASC")
public List<AmbientLight> lights;
Powinienem też wspomnieć o jednej ważnej informacji - używamGrać! Ramy 1.2.3