As you may know Coherence provides “filtering” api against its cache-cluster, like this:
// assuming cache cluster is full of ProductEntity objects
NamedCache c = CacheFactory.getCache("products");
Filter vipFilter = new EqualsFilter("productCode", 1);
Filter dateFilter = new GreaterFilter("createDate", new Date() - 48hrs);
List l = c.query(new AndFilter(vipFilter, dateFilter));
...
My question – do we have an alternative to Coherence in terms of an ability to
build complex distributed queries againts the key/value store.
Thanks a lot!
GigaSpaces XAP supports this as well, through the use of a series of query APIs – query by example, a map interface (the key/value store) that can be used directly as a map as well as through a memcached api. XAP also supports JPA, JDBC, JMS, a SQLQuery capability, and map/reduce.
There’s a screencast available that shows a lot of these in operation: http://www.youtube.com/watch?v=jC57mId3SMg