Hey Marko,

Gremlin is definitely the best over-all "GQL" around. That's why I think
that before we develop any language-driver, we need to ask ourselves if
there's are any use-cases in which that language would be a better choice
than gremlin.

   - SPARQL - Many people are familiar with SPARQL, so a driver would help
   them easily get to work with a TP graph.
   - GraphQL - QBE is a great definition. The cool thing about these
   queries is that they're very "composable", which is perfect for a composite
   application in which you have deeply nested components, each specifying
   its own sub-query (e.g. the standard practice in React UIs). Granted
   gremlin is much more powerful, and I'd use it in almost all applications,
   but when building something like a React application, GraphQL could come on
   top.
   - OpenCypher - While it's an over-all more "able" language than SPARQL &
   GraphQL, I haven't seen any use-case in which it trumps gremlin. That's why
   IMO there is no point in implementing it.

My 2 cents.
Cheers,
Ran


On Tue, 27 Oct 2015 at 02:37 Marko Rodriguez <[email protected]> wrote:

> Hi Ran,
>
> Here are my thoughts on GraphQL now that I have learned more about it.
>
>         1. Matt Frantz and David Robinson nailed it -- its not really a
> "graph language." Its more a QBE (query by example -- first time I heard
> that was from Matt).
>                 - As such, do we want to support it in TinkerPop when we
> can do much more complex queries with the Gremlin machine?
>         2. I think we should try and get the GraphQL guys to implement a
> compiler for Gremlin VM.
>                 - You said it -- providers have to implement a server to
> execute it. Why not just implement graph.structure API and let the Gremlin
> VM do the work for you.
>                 - Is this a Facebook thing? Perhaps someone can find their
> repository and post a ticket and see where it goes.
>
> The one thing that GraphQL has going for it (like SPARQL) is the ease of
> the development/maintenance of the compiler. Cypher and SQL are going to be
> insanely complex compilers to implement/maintain -- it will take manpower.
>
> Marko.
>
> http://markorodriguez.com
>
> On Oct 26, 2015, at 11:49 AM, Ran Magen <[email protected]> wrote:
>
> > I'd be much more interested in GraphQL support.
> > The cool thing about GraphQL is that you can easily create a unified
> "graph
> > query" from different components in an application, while keeping the
> > separation between the components. It's a great feature for composite
> UIs (e.g.
> > React).
> > As I understand it, GraphQL is mostly a standard for graph queries, but
> the
> > user has to implement a server to actually execute the queries. And what
> > better execution engine than the Gremlin VM?
> >
> > On Mon, 26 Oct 2015 at 15:17 Marko Rodriguez <[email protected]>
> wrote:
> >
> >> Hey,
> >>
> >> After reading Stephen's reply, I was like -- "huh, sure." I didn't
> really
> >> don't care one way or another until I just read this:
> >>
> >>        http://neo4j.com/blog/open-cypher-sql-for-graphs/
> >>
> >> Look at the tone and lies that Neo4j is portraying.
> >>
> >>        * Marko Rodriguez as "just some buddy of Emil's."
> >>        * Aurelius is some company. No, its called DataStax.
> >>        * Not once is Apache TinkerPop discussed or referenced -- "just
> >> Marko and a band of merry 'graphistas'."?!
> >>        * DataStax is NOT involved in their efforts for OpenCypher.
> >>
> >> The problem with Neo4j is they are corrupt. They use lies to control the
> >> population. If we support Cypher in TinkerPop (like actively put it into
> >> the repository as a distribution) we will see press releases like:
> >>
> >>        * TinkerPop drops Gremlin in favor of Cypher.
> >>        * TinkerPop realizes that Cypher is the superior language.
> >>        * TinkerPop follows Neo4j in learning how to do graph processing
> >> the right way.
> >>        * etc.
> >>
> >> Its going to be a bunch malarky like that that I don't want surrounding
> >> our project. It would behoove us to be smart about how we interact with
> >> people like this as they will use every opportunity they can to destroy
> our
> >> project to better their economic efforts.
> >>
> >> I don't do lies nor interact with people who use misinformation and
> >> deception to get "ahead,"
> >> Marko.
> >>
> >> http://markorodriguez.com
> >>
> >> On Oct 26, 2015, at 4:35 AM, Stephen Mallette <[email protected]>
> >> wrote:
> >>
> >>> I'd be open to have cypher and sparql as first class citizens of The
> >>> TinkerPop. As I see it, there are two groups of graph users on the
> fringe
> >>> of TinkerPop and they live in the cypher world and in the RDF world.
> >>> Having both of these projects in TinkerPop would allow us to reach both
> >> of
> >>> those communities.  Doing so would help to expand usage and potentially
> >>> attract more committers.
> >>>
> >>> On Fri, Oct 23, 2015 at 1:08 PM, Marko Rodriguez <[email protected]
> >
> >>> wrote:
> >>>
> >>>> Hi,
> >>>>
> >>>> I (personally) am interested in getting another language into
> >> TinkerPop's
> >>>> distribution. I see an imbalance in the following table:
> >>>>
> >>>>       TinkerGraph | Gremlin-Java8
> >>>>       Neo4j             | Gremlin-Groovy
> >>>>       Hadoop          | NOTHING
> >>>>
> >>>> That is, we have 3 graph distributions, why not have 3 language
> >>>> distributions. Moreover, I don't want yet another Gremlin-JVMLang
> >> language
> >>>> as that doesn't showcase the virtual machine aspects of Gremlin as
> well
> >> as,
> >>>> for example: SPARQL-Gremlin or SQL-Gremlin.
> >>>>
> >>>> I (personally) am NOT interested in openCypher as the 3rd language
> >>>> distribution for the following 2 reasons:
> >>>>
> >>>>       1. It will be at least a year+ before it culminates into
> >> something.
> >>>>       2. It doesn't fold a different computing space into TinkerPop.
> >>>>
> >>>> To expand on #2, Hadoop is NOT typically seen as a graph system, but
> >> with
> >>>> TinkerPop, we have Hadoop serving as a graph engine. With SPARQL, we
> >> pull
> >>>> in the RDF guys (thats cool). With SQL, we pull in the world. I sorta
> >>>> prefer SPARQL as its an easy language to handle (thanks in part to
> >> Apache
> >>>> Jena). With SQL we have Apache Calcite offering help, but SQL is
> nasty
> >>>> looking for graph queries and is just suuuuuch a beast of a language
> >> that
> >>>> it would need someone dedicated to its maintenance/evolution.
> >>>>
> >>>> Anywho -- thats what I think about another language in TinkerPop. I'm
> >> pro
> >>>> SPARQL-Gremlin if it matures and people are excited about it.
> >>>>       https://github.com/dkuppitz/sparql-gremlin
> >>>>
> >>>> Thanks,
> >>>> Marko.
> >>>>
> >>>> http://markorodriguez.com
> >>>>
> >>>> On Oct 23, 2015, at 10:45 AM, pieter-gmail <[email protected]>
> >>>> wrote:
> >>>>
> >>>>> Is a opencypher <http://neo4j.com/blog/open-cypher-sql-for-graphs/>
> ->
> >>>>> gremlin compiler something the tinkerpop team would consider
> >>>> implementing?
> >>>>> Perhaps, hopefully with help from neo4j themselves.
> >>>>>
> >>>>> Thanks
> >>>>> Pieter
> >>>>
> >>>>
> >>
> >>
>
>

Reply via email to