• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

fast performance in jdbc insert

 
monu garg
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
I want to insert some 1 to 10 million records in oracle database.I am using
connection pool and prepared statement for this purpose.I have 3 different types of objects and data from them is inserted to 3 tables in database.I am making a batch of 200 for each query(3 total) and i am getting 4000 ms as total time to execute one batch.2500 ms is taken to commit batch to database and 1500 ms for constructing prepare statement for 3 batch.
Please tell me how i can improve my performance.

Thanks
Monu G
 
Jeanne Boyarsky
author & internet detective
Marshal
Posts: 34656
365
Eclipse IDE Java VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Monu,
Welcome to JavaRanch!

Do you have any indexes on the table? If so, I would consider dropping them during the large data insert. Also, look for contention on the database.

The prepared statement part should only be done once, since subsequent batches are of the same size. For the other part, I would suggest looking at the db statistics to see what is taking all the time. 2.5seconds to insert 200 rows sounds like a lot.
 
monu garg
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks ,Jeanne.
I was printing jdbc log which was taking much of time.


Monu G
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic