[ 
https://issues.apache.org/jira/browse/IGNITE-4521?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anghel Botos updated IGNITE-4521:
---------------------------------
    Description: 
As suggested in the comments from 
https://issues.apache.org/jira/browse/IGNITE-4164, we are using 
{{org.apache.ignite.IgniteCache#loadCache}} with a large number of custom 
queries to allow for the parallel load of the cache. The custom queries are 
created by our code in a similar manner as in 
{{org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore#loadCache}} when 
called with no custom queries. The problem that we face is the fact that the 
generation of these queries takes a while (on the order of minutes for our data 
set), time which could already be spent loading data into the cache, once the 
first queries are available.

The suggestion for improvement is to change the signature of the 
{{org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore#loadCache}} and 
{{org.apache.ignite.IgniteCache#loadCache}} method to use a Producer/Stream for 
the custom queries, and the workers in the thread pool doing the actual loading 
should just get queries from this stream until it is exhausted/get from the 
producer until it returns null (or some other indicator that there are no more 
queries to be produced). This would shorten the total time required to load the 
cache, as it would make it more similar in behavior to the part of 
{{org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore#loadCache}} 
handling the case without custom queries (where as soon as the boundaries of a 
range are retrieved from the initial {{loadCacheSelRangeQry}}, the load of the 
range is automatically submitted to the thread pool for execution) 

  was:As suggested in the comments from When using 
org.apache.ignite.IgniteCache#loadCache with 


> Allow org.apache.ignite.IgniteCache#loadCache to use also a producer/stream 
> of custom queries
> ---------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-4521
>                 URL: https://issues.apache.org/jira/browse/IGNITE-4521
>             Project: Ignite
>          Issue Type: Improvement
>          Components: SQL
>    Affects Versions: 1.8
>            Reporter: Anghel Botos
>
> As suggested in the comments from 
> https://issues.apache.org/jira/browse/IGNITE-4164, we are using 
> {{org.apache.ignite.IgniteCache#loadCache}} with a large number of custom 
> queries to allow for the parallel load of the cache. The custom queries are 
> created by our code in a similar manner as in 
> {{org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore#loadCache}} when 
> called with no custom queries. The problem that we face is the fact that the 
> generation of these queries takes a while (on the order of minutes for our 
> data set), time which could already be spent loading data into the cache, 
> once the first queries are available.
> The suggestion for improvement is to change the signature of the 
> {{org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore#loadCache}} and 
> {{org.apache.ignite.IgniteCache#loadCache}} method to use a Producer/Stream 
> for the custom queries, and the workers in the thread pool doing the actual 
> loading should just get queries from this stream until it is exhausted/get 
> from the producer until it returns null (or some other indicator that there 
> are no more queries to be produced). This would shorten the total time 
> required to load the cache, as it would make it more similar in behavior to 
> the part of 
> {{org.apache.ignite.cache.store.jdbc.CacheAbstractJdbcStore#loadCache}} 
> handling the case without custom queries (where as soon as the boundaries of 
> a range are retrieved from the initial {{loadCacheSelRangeQry}}, the load of 
> the range is automatically submitted to the thread pool for execution) 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to