cancel
Showing results for 
Search instead for 
Did you mean: 

difference between maximum concurrency and batch mode in JDBC

Former Member
0 Kudos

Hi All,

Could som one tell me the difference between maximum concurrency and batch mode in receiver JDBC adapter?

Regards,

XIer

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

HI,

The maximum concurrency in JDBC adapter indicates the no of message can be processed concurrent/simultaneously. If you are setting Maximum Concurrency to a greater value then even check out in the adavance mode Database Transaction Level as isolation level determines how transactions running in parallel can influence each other.

Batch Mode allows to process collect the SQL staements and processed in bunch,

Set the indicator if you want to collect SQL statements in a batch. This can improve performance considerably.

Some available JDBC drivers may not be able to use this feature to improve performance.

Batch processing is not supported for the following statements:

· SELECT

· INSERT_UPDATE

· EXECUTE

· SQL_QUERY

Thanks

Swarup

Former Member
0 Kudos

Swarup, whats the best Isolation Type I should select and why?

Also How does the batch mode work, how many messages does it collect and process at one time?

Regards,

Xier

Former Member
0 Kudos

Also even when I put Max Concurrency to '10', I see in RWB that only 5 messages are being delivered at one time. Why is that?

Regards,

XIer

Former Member
0 Kudos

Hi,

The Max Concurrancy and Batch mode are used for performance tunning for JDBC adapter.

Max Concurrancy is possible upto 5 only. so even if you will be taking up 10 it will by-default take 5.

The number of records being processed depend on the size of each record. for e.g Per minit XI Is Processing 50 Records,It will Take lot of time to process all Records.

So if you set Max concurrancy as 5 then at time 5 messages will be processed simultaneously.

In Batch mode it will, collect the multiple SQL statements that will be created for records to be processed and processed at a time. It will improve performance considerably.

But Batch Mode is possible with only INSERT, UPDATE, DELETE etc.

The Stored procedures can be executed with max concurrency

Thus it completely depends that on the no of records to be processed at a time and volume of Mesasges.

Thanks

Swarup

Former Member
0 Kudos

In My scenario, SAp is sending me 38 messages with 50K reacords in each message to be inserted to Database. What do you think should be my best configuration?

Regards,

XIer

Edited by: XIer on Mar 24, 2008 10:33 PM

Former Member
0 Kudos

Hi,

It will be preferrable to process with Batch Mode as per your information there will be 38 messages and each of size 50K.

So if you go with Max Concurrency then at a time max you could have 5 parallel processing messages..and thus total size will be approx. of 5*50 = 250 K at a time.

But if you tak it as collect all the messages and then process it in Batchwise it will improve the performance and will allow to keep the connection pool engaged for short time.

Thanks

Swarup

Former Member
0 Kudos

So Swarup, if I check 'Bacth Mode' and Max Concurrency to 5, then how would the scenario behave?

Appreciate your patience.

Regards,

XIer

Former Member
0 Kudos

Hi,

Maximum concurrency will be giving you the Mode of transfer either parallel or not.

So even both are used for performance enahncments both have different purposes.

Even if you collect the messages batch wise it will have one processing at a time.

If in case you have slected both then it will be processing the multiple Batch also as parallel way. I am not sure about it. But its better to have the practical about it...and make conclusion.

/people/saravanakumar.kuppusamy2/blog/2005/01/19/rdbms-system-integration-using-xi-30-jdbc-senderreceiver-adapter gives you a good architectural overview while using JDBC adapters.

Thanks

Swarup

Answers (1)

Answers (1)

agasthuri_doss
Active Contributor
0 Kudos

Hi Ashish,

>batch mode in receiver JDBC adapter?

If you want to collect SQL statements in a batch and it improve performance

>concurrency

The Number of messages to be processed in parallel by the receiver channel this is also to improve the performance

Regards

Agasthuri Doss