[TinkerPop3] Blueprints3 -- Push Down Predicates All Up in Yo' Face

91 views
Skip to first unread message

Marko Rodriguez

unread,
Dec 2, 2013, 6:58:05 PM12/2/13
to gremli...@googlegroups.com
Hi,

In TinkerPop2 we provided push-down predicate support for Compare (==, !=, >=, etc.). In TinkerPop3, we want to support more Predicate (in fact, BiPredicates in Java8).


We are scared of making too many because the problem is that the backend database needs to be able to support identical semantics as the respective in-memory test() methods for when the predicate is not supported by the backend. For Compare/Contains, this is easy. For Text, ugh….. I already know that Text.CONTAINS is all funny for Lucene and not equivalent to String.contains().

Are there other predicates you can think of that we should explicitly support in Blueprints3 -- Geo? …

Your thoughts on this matter are much appreciated,
Marko.

Adolfo Rodriguez

unread,
Dec 2, 2013, 7:35:56 PM12/2/13
to gremli...@googlegroups.com
2 things I am missing:

* a wildcard (e.g. '*') meaning no predicate, or not action taken, or return all results, no filter applied

* distances calculated by haversine formula in Geo

My 2 cents

Matthias Broecheler

unread,
Dec 2, 2013, 8:18:04 PM12/2/13
to gremli...@googlegroups.com
I am in favor of moving some of those predicates into Blueprints, but, as you said, maintaining identical semantics is tricky.
For instance, Titan supports Text.CONTAINS which works by tokenizing the string in order to match the semantics of Lucene. However, there is the issue of stop words and how exactly the input string is tokenized which are things that are configurable in Lucene. So, in fact, Titan's implementation of Text.CONTAINS is an approximation of what Lucene does.

I suppose that other graph database implementations relying on external indexing engines for index support (which I think is pretty much everybody) have to approach this similarly.


--
You received this message because you are subscribed to the Google Groups "Gremlin-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gremlin-user...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.



--
Matthias Broecheler
http://www.matthiasb.com
Reply all
Reply to author
Forward
0 new messages