jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Mueller <muel...@adobe.com>
Subject Re: Re (OAK-36) Implement a query parser - what about indexing?
Date Mon, 26 Mar 2012 10:27:54 GMT
Hi,

I'm not sure if you already saw that, but one of the goals for Oak is to
"Simple/Fast queries (i.e. through specialized indexes)" - see also
http://wiki.apache.org/jackrabbit/Goals%20and%20non%20goals%20for%20Jackrab
bit%203 - what I understand under "specialized indexes" is user defined
indexes. At runtime, the query engine will pick the best (user defined)
index(es) for the given query (cost based).

Currently, there is only one index type: traversing the nodes. A second
index type is the indexer mechanism that stores the index data in the
repository itself (this is already implemented and needs to be wired to
the query engine). A third index type is the Lucene fulltext index. The
query engine supports additional index types.

And there might be additional index types. Implement a new index type
should be relatively easy. If you want to implement such an index type,
then this could be either within Oak itself, or outside of Oak. In any
case, the current plan (my plan) is to add an index service provider
interface.

>the 'more out-of-the-box functionality' does not imply a full-text
>index is needed per se

I believe we will need a out-of-the-box fulltext index as part of Oak. But
whether or not it is actually used is up to you, because indexes are user
defined.

Vocabulary:

"index type": an index implementation, for example a property index
implementation that allows quick lookup for a property. Another example is
"traversing all nodes under a given path". Another implementation is a
"Lucene fulltext index".

"index": one particular index instance, for example a property index for
the property "jcr:uuid" or the property "lastModified".

Regards,
Thomas




Mime
View raw message