ChannelDB2

If you ask your IBM sales rep: How much DB2 Express C scale? Do you have any benchmarks? Then answer probably will be: We don't have benchmarks, but probably not much.


I was interested how much is not much. It is true that there are no benchmarks for DB2 Express C - but better to say there are no benchmarks for any DB2 edition other then DB2 Enterprise Server.


I did test on DB2 Express C with STMM enabled database. How much connections can be made before database runs out of memory. Result was quite impressive: 1727 connections made in 57 seconds. That is really good and it gives also information about new connection rate - 30 connections/sec. Its not slow and you might not need even connection pooling for low loaded web applications.


New connection was refused with DIA8301C No memory available in the application heap. This is complain about APPLHEAPSZ set too low. DATABASE_MEMORY was tuned by STMM to about 30000 and STMM did not find APPLHEAPSZ exhausting as sufficient reason for increasing DATABASE_MEMORY. I set DATABASE_MEMORY by hand to 200000 and rerun test. It scaled bit better and failed with SQL1225N - which means that OS limit (it was 32-bit Windows XP) was reached. Windows Operation system have no hard limits on number of threads or processes allowed (unlike linux) so it means that we reached scalability limit of 32-bit operation system which allows only 2GB per process before we were able to reach artificial limits made by DB2 Express C license. I lowered DATABASE_MEMORY to 120000 (from 200000) and it improved result somewhat from 1727 connections made to 1735 connections.


Result of this simple test is: On 32-bit operation system you can do about 1700 connections to DB2 database server before exhausting operation system limitation 2GB address space per process. You will reach limitation of 32-bit operation system before hitting limits enforced by DB2 license. If you run 32-bit DB2 Express C as most users do then you can think about it as unlimited db2 edition and use this argument while arguing in unlimited MySQL vs limited DB2 Express C debates . If you still run any 32-bit DB2 edition in production consider upgrading it to 64-bit version for better scalability. DB2 ESE edition is supported only on 64-bit operation systems.

Test program is here: conntest.java.

Views: 319

Comment

You need to be a member of ChannelDB2 to add comments!

Join ChannelDB2

Featured Downloads

Try BLU Acceleration on Cloud

© 2019   Created by channeldb2.   Powered by

Badges  |  Report an Issue  |  Terms of Service