Open steffi-graphdb opened 10 years ago
In Infinispan, the objects are already indexed using lucene. The question here is then "can we extend the existing system for indexing the node in the cache and how to expose a query API to clients?"
Here is a link to the INFINISPAN query API: http://infinispan.org/docs/6.0.x/user_guide/user_guide.html#_querying_infinispan
I propose: @ghrab to define the API to (1) create index and to (2) retrieve an indexed data @sskhiri and @atsal to look at the indexing scheme within INFINISPAN and proposing a first integration design
In the other hand, there is already an indexing API, but the implementation looks quite complex actually ! Look at the Testindex test case in order to see the number of classes involved. At first sight, it seems that the index is a multi map stored in the cache, the first level is (Attribute Name, IndexedValue Map) and the second level, the indexed value Map is a map (Indexed value, list of cell). I would be interested to see whether this code is efficient by a simple performance evaluation. @ghrab please look at the API of the com.steffi.index.ImgIndex and defining whether you need a richer API.
The properties indexing feature should be complete and allow for full text (cf Lucene) and numeric indices (b-tree, ...). This is mainly an implementation task as many of these mechanisms can be directly inspired from the existing solutions found in RDBMS. The API should then expose the indexing mechanism to the user.
In a second time, also consider indexing for the labels on the edges.