[jira] [Created] (IGNITE-12826) Poor JDBC Cache Store performance due to default fetch size

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (IGNITE-12826) Poor JDBC Cache Store performance due to default fetch size

Anton Vinogradov (Jira)
Alexey Kukushkin created IGNITE-12826:
-----------------------------------------

             Summary: Poor JDBC Cache Store performance due to default fetch size
                 Key: IGNITE-12826
                 URL: https://issues.apache.org/jira/browse/IGNITE-12826
             Project: Ignite
          Issue Type: Bug
          Components: cache
    Affects Versions: 2.8
            Reporter: Alexey Kukushkin
            Assignee: Alexey Kukushkin


JDBC "fetchSize" parameter specifies the number of rows to be fetched from the database when additional rows are needed. For most drivers it is 10 by default. Larger fetchSize can significantly improve performance due to less network roundtrips (at expense of greater memory consumption).

For some reason out-of-box JDBC POJO Cache Store uses default fetchSize in the loadCache method implementation. 

We have very poor loadCache performance when loading large amount of data from Oracle with the default fetchSize of 10. We tried setting fetchSize to 20K and that improved performance 40 times.

We need to use JdbcDialect#fetchSize in the loadCache implementation so that users could implement a custom JdbcDialect to configure fetchSIze.

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)