+1 for Powered By

On Fri, Mar 17, 2017 at 14:50 Stephen Mallette <[email protected]> wrote:

> > I don't want to bore you with a sales pitch,
>
> Definitely not boring by any means. I think we all like to hear what folks
> are using TinkerPop for. We really don't get a ton of feedback from folks -
> I suppose that is the nature of open source software. I think it's possible
> that having the "Powered By" section would help encourage folks to share.
>
> On Fri, Mar 17, 2017 at 2:25 PM, Paul A. Jackson <[email protected]>
> wrote:
>
> > Hi Stephen,
> >
> > I agree with the short-comings of our web site. What can I say in a
> public
> > forum? I will continue to suggest improvements and I am confident the
> > changes are in the works and there's no need for me to keep bringing it
> up
> > every month or so.
> >
> > I don't want to bore you with a sales pitch, but in terms of what we do
> > with Gremlin and what we add.....
> >
> > Between Gremlin and Neo4j, we have our own graph API. It's how we both
> > protect against vendor lockin as well as add value.
> >
> > On top of Gremlin we have a graphical query builder that exposes a subset
> > of the query language - options for starting step that expose all kinds
> of
> > fuzzy matching, traversals steps with various conditions, options for
> > allowing circular and/or partial traversals, and (cool part) a way to map
> > each step in the query to a path in a tree, which makes integration with
> > our ETL dataflow nice and easy. Of course you can drop down to the actual
> > Gremlin that it generates and edit it using any of the Gremlin (OLTP)
> > features.
> >
> > Our integration between Gremlin and Neo4j is cool. The current
> > Neo-provided driver supports labels and table scans and that's it. In
> > addition to supporting equals, and, or, within, gt/lt/gte/lte/between, we
> > added some of our own BiPredicates to support startsWith, endsWith,
> > contains, wildcard, and fuzzy, and support combining multiple has() steps
> > with multiple properties and generating a Lucene Query that we pass to
> > Neo's legacy indexing. Much more powerful than even Cypher for matching
> > initial starting nodes.
> >
> > Like what you described with Grakn.ai, we also have our own NLP-like (or
> > Facebook Graph Search inspired) search, where a user can type a query
> > (assisted by auto-complete) like: "Actor name Arnold Schwarzenegger
> ActedIn
> > Film ActedIn Actor name Contains Ventura" (real query), which generates
> > this Gremlin:
> >   if (data['name'] == null) return []
> >   graph.traversal().
> >     V().has('name', data['name']).has('_stp_type',
> > within('Actor')).as('Actor/Actor').
> >     outE('ActedIn').simplePath().as('Actor/ActorToActedIn/
> > ActorToActedIn').
> >     inV().has('_stp_type', within('Film')).simplePath().
> > as('Actor/ActorToActedIn/ActedInToFilm/ActedInToFilm').
> >     inE('ActedIn').simplePath().as('Actor/ActorToActedIn/
> > ActedInToFilm/FilmToActedIn/FilmToActedIn').
> >     outV().has('_stp_type', within('Actor')).filter{it.
> > get().property('name').orElse(null) != null && it.get().property('name').
> > orElse(null).toString().toUpperCase().contains(String.
> > valueOf(data['name2']).toUpperCase())}.simplePath().
> > as('Actor/ActorToActedIn/ActedInToFilm/FilmToActedIn/
> > ActedInToActor/ActedInToActor').
> >     select('Actor/Actor','Actor/ActorToActedIn/ActorToActedIn'
> >
> ,'Actor/ActorToActedIn/ActedInToFilm/ActedInToFilm','Actor/ActorToActedIn/
> > ActedInToFilm/FilmToActedIn/FilmToActedIn','Actor/
> >
> ActorToActedIn/ActedInToFilm/FilmToActedIn/ActedInToActor/ActedInToActor')
> >
> > ...and brings back Arnold Schwarzenegger->ActedIn->Running
> > Man<-ActedIn<-Jesse Ventura and Arnold Schwarzenegger->ActedIn-> Predator
> > <-ActedIn<-Jesse Ventura. This query can be saved and parameterized
> > allowing the names be passed into a web service as arguments and
> returning
> > movies that any two actors acted in. (All with clicks, no code.) (All
> those
> > slashes in the as() steps are how we indicate how to map the output to a
> > hierarchical list of maps.)
> >
> > There's other cool stuffs that has less to do with Gremlin like security,
> > federation (augmenting a graph with "virtual" JDBC data, in a way that
> > looks like one big graph to the Gremlin user), graph history, ETL steps
> for
> > import, update, read, query, split, merge, etc. Blah, blah, blah.
> >
> > Anywho, yeah, our web site sucks.
> >
> > -Paul
> >
> > -----Original Message-----
> > From: Stephen Mallette [mailto:[email protected]]
> > Sent: Friday, March 17, 2017 1:18 PM
> > To: [email protected]
> > Subject: Re: Requirements for listing as a vendor
> >
> > Hi Paul, Grakn seems different from your case, at least based on what
> I've
> > understood of your product. Grakn actually has the Graql language which
> > compiles down to the Gremlin. It is an interesting level of integration
> and
> > promotes the idea of the Gremlin Virtual Machine in a very public way.
> As I
> > understand your product, it seems like you've built an application that
> > uses TinkerPop, but doesn't expand it with additional libraries/tooling
> > that would qualify it as a "Provider". I'm pretty sure that all
> "Providers"
> > thus far would fit that definition though the visualization providers
> > might be a bit on the edge there of that definition (are they really
> > "Powered By"
> > now that we're talking about it?). Not sure if that makes any sense as a
> > distinction or if that's our definition for our distinction as this is
> > "new" but it's what's on my mind as one right now.
> >
> > You mentioned your web site not being developer driven - still might be
> > nice if it mentioned something about it using "Apache TinkerPop" as a
> core
> > component of what it does. I don't think I saw that anywhere. If we were
> to
> > use our Provider Policy as a guide for Powered By then I think having
> such
> > a mention there would likely be a requirement for listing on the
> TinkerPop
> > site. Not sure how others feel about that, but again just throwing ideas
> > out there as we develop this.
> >
> > On Fri, Mar 17, 2017 at 12:41 PM, Paul A. Jackson <[email protected]>
> > wrote:
> >
> > > This sounds great.
> > >
> > > At the same time, though, I was looking at other providers and judging
> > > from architecture diagrams (eg.
> > > https://grakn.ai/pages/documentation/the-
> > > fundamentals/grakn-architecture.html) some look similar to ours.
> > >
> > > It may be the case that our web site is directed more towards business
> > > types than developers, is available through direct sales only, etc,
> > > rather than architectural differences?
> > >
> > > -Paul
> > >
> > >
> > > -----Original Message-----
> > > From: Marko Rodriguez [mailto:[email protected]]
> > > Sent: Thursday, March 16, 2017 4:13 PM
> > > To: [email protected]
> > > Subject: Re: Requirements for listing as a vendor
> > >
> > > I say we add a “Powered By” section to the website and list
> > > “leveraging systems” as I wouldn’t call this a “TinkerPop Provider”
> > > like I would a more “low level” graph database system….
> > >
> > > If we open up “Powered By” it would allow us to show people the types
> > > of products, projects, nick nacks and doo dads that are out there
> > > leveraging TinkerPizzzop.
> > >
> > > Marko.
> > >
> > >
> > > > On Mar 16, 2017, at 1:56 PM, Paul A. Jackson <[email protected]>
> > > wrote:
> > > >
> > > > I agree that the last bullet is not met. We bundle the Tinkerpop
> > > > stack,
> > > so the idea of version compatibility doesn't make sense. Instead, we
> > > offer a platform that builds an ecosystem around the graph (ETL, fuzzy
> > > matching, rich analysis client, etc). One feature is graph query. The
> > > users can supply their own Gremlin queries, or they can use our
> > > graphical query builder, which generates Gremlin.
> > > >
> > > > Anywho, what do you think? I concur we do not fit in the provider
> > > bucket. But we have been around for 5 years. The offering is pretty
> > > mature at this point.
> > > >
> > > > -Paul
> > > >
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Robert Dale [mailto:[email protected]]
> > > > Sent: Thursday, March 16, 2017 1:50 PM
> > > > To: [email protected]
> > > > Subject: Re: Requirements for listing as a vendor
> > > >
> > > > You should start here:  http://tinkerpop.apache.org/policy.html
> > > >
> > > > It's not obvious to me that the last 3 bullets are met.
> > > >
> > > > Robert Dale
> > > >
> > > > On Thu, Mar 16, 2017 at 12:56 PM, Paul A. Jackson
> > > > <[email protected]>
> > > > wrote:
> > > >
> > > >> Hi,
> > > >>
> > > >> What are the requirements for being lists as a Gremlin provider? We
> > > >> (Pitney Bowes) have an integrated product offering called Spectrum
> > > >> Data Hub (you'll also see it listed as part of the Spectrum MDM
> > > >> solution). The product is its own application server and we embed
> > > >> Gremlin on top of embedded Neo4j using our own "blueprints" adapter.
> > > >> So, access to the graph is from our own apps, rather that via a
> > > >> Gremlin
> > > console or server.
> > > >>
> > > >> I don't know if this makes us a special case or not. Can you let us
> > > >> know if we qualify and/or if there's anything we would need to do
> so?
> > > >>
> > > >> Here's a link to the product literature:
> > > >> http://www.pitneybowes.com/us/
> > > >> customer-information-management/data-integration-
> > > >> management/spectrum-data-hub-module.html
> > > >>
> > > >> Thanks,
> > > >> -Paul
> > > >>
> > > >> ________________________________
> > > >>
> > > >>
> > > >
> > > > ________________________________
> > > >
> > >
> > >
> > > ________________________________
> > >
> > >
> >
> > ________________________________
> >
> >
>
-- 
Robert Dale

Reply via email to