我有我需要實現一個JPA級聯批量更新的問題。 該更新將需要大約10000個對象並一次將它們合併到數據庫中。 對象的平均深度爲5個對象,平均大小約爲3 kb 持久提供者是Oracle Toplink
這消耗大量內存並需要幾分鐘才能完成。
我環顧四周,我看到3種可能性:
通過標準JPA循環MERGE語句,並以一定的間隔
使用JPQL
沖洗使用TopLink的自己的API(這是我沒有任何經驗)
所以我有幾個問題
我將通過使用JPQL來減少標準合併的開銷嗎?如果我理解正確,合併導致整個對象樹被調用之前被克隆。它實際上更快嗎?是否有一些技巧來加速這個過程?
如何使用Toplink API進行批量合併?
而且我知道這是主觀的,但是:有沒有人有在JPA/Toplink中進行大量級聯批量更新的最佳做法?也許我沒有考慮過的東西?
相關問題
Batch updates in JPA (Toplink)
Batch insert using JPA/Toplink