Hi,

I have a general question about data model design. Currently we have java 
server nodes, and .net client nodes. We use services, messaging and the data 
grid.

The current design is one single ignite cache, which contains all entity types. 
The key for entity types is an object, but it has only one field, long id

Because ignite .net has some limitations when mixed with Java, such as no 
continuous queries with filter, we do a lot of client side filtering based on 
the Key class type. In fact we also use cache events, and again we have to 
filter by key class and then cast before continuing.

Furthermore, we experience some issues with java/.net Key equality, such as this
https://issues.apache.org/jira/browse/IGNITE-5455

At the moment my feeling is that we should change our model

  *   Have one ignite cache per type (we have about 30 types in our model)
  *   Use long primitives for cache keys instead of objects wrapping the id

Our two main drivers are interop between java servers and .net clients, and 
query performance. Also get by id performance is very important. Surely this is 
faster with primitive keys than objects as keys? We don't do a lot of joining, 
although I know we can join caches in ignite queries anyway.

Any comments are much appreciated.

Thanks,
Gordon.


This email and any attachments are proprietary & confidential and are intended 
solely for the use of the individuals to whom it is addressed. Any views or 
opinions expressed are solely for those of the author and do not necessarily 
reflect those of Nine Mile Financial Pty. Limited. If you have received this 
email in error, please let us know immediately by reply email and delete from 
your system. Nine Mile Financial Pty. Limited. ABN: 346 1349 0252

Reply via email to