Focal Point
MySQL JDBC Connector Performance Issues

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/1381057331/m/478107981

July 24, 2009, 12:59 PM
bcook278
MySQL JDBC Connector Performance Issues
I am trying to troubleshoot an issue pulling data from a MySQL Table and writing out to a flat file. We are using the MySQL-JDBC Adaptor with the mysql 5.1.27 connector, Data Migrator 7.6.8 on a RedHat Linux Server. The data flow is meerly mapping all fields from table A and writing out to a flatfile...no transforms just a straight SELECT ALL COLUMNS FROM Table A. Table A has only 9000 rows of data and is located on the same physical machine as DMC. Takes about 4 minutes to return 9000 rows. That said......same flow running in DMC on my PC going through ODBC to the same MySQL table takes approx 4 seconds. Is there some additional parameter that needs to be adjusted in DMC with regard to the JDBC adaptor to improve the performance? Unfortuantely I can't use the MySQL ODBC on the server as the server is running Linux and I need to use JDBC for this connection there.


WebFOCUS 7.6.8
WebFOCUS Client and Server running on RedHat Linux, Developer Studio on Windows XP
All output formats
August 03, 2009, 11:55 AM
Kerry
Hi Bcook278,

I don't know about any additional parameters, but what you might want to do is turn on tracing, and compare the runs so that you can see what actually happening, and this may help you gain some insight.

Cheers,

Kerry


Kerry Zhan
Focal Point Moderator
Information Builders, Inc.
August 05, 2009, 03:37 PM
RivoU
hi Bcook278,

When talking about possible additional parameters you might try setting some value to default fetch size. The smaller fetch size is the more network trips to database server will be done and it affects performance...

By setting value to defaultFetchSize - the driver will call setFetchSize(n) with this value on all newly-created Statements.

Also you might try to define cursors as server cursors with parameter: useCursorFetch=true.
Some additional reading about using client cursors vs server cursors with MySQL:
http://wiki.gxtechnical.com/co...ursors+-+using+MySQL

For example - connection string with additional parameters:
jdbc:mysql://server/dbname?useCursorFetch=true&|defaultFetchSize=1000

So give a try and configure your MySQL adapter with those additional parameters.

Regards,
Rivo


iSM 6.0
iDM 7.6.5 - 7702
WF 7.6.4 - 7702

All output formats