ignite-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pragmaticbigdata <amits...@gmail.com>
Subject Re: Understanding data store and partitioning
Date Wed, 13 Jul 2016 13:36:47 GMT
Thanks for the follow up

> Cache is a key-value store at first. Yes you can to use ID of record (from
> database), as key of cache. 

Let's take an example of a Person table in an RDBMS database

Person Id | Name | Address | Age | Date Of Birth

Assuming "Person Id" is our cache key, to implement partition aware data
loading in the loadCache() method I would need to first load the id field
values and then pass it to the affinity.partition() method to get the
partition id. This partition id would have to be persisted in the "Person"
table in the RDBMS  store. This would have to be done separately before
loading data in ignite. 
Now to load data into ignite, the implement of loadCache would look like
1. Load "Person Id" field values 
2. Get the partition id from the affinity.partition() method
3. Execute "select * from Person where PartitionId in (...)" query to do the
data load.

Is my understanding right? If so, would this be more performant than the
simple loadCache() implementation that loads everything by "select * from
Person" and skips the keys that do not apply to that node?



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Understanding-data-store-and-partitioning-tp6264p6274.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Mime
View raw message