home.social

#tinkerpop3 β€” Public Fediverse posts

Live and recent posts from across the Fediverse tagged #tinkerpop3, aggregated by home.social.

  1. Anyone know if there is a good framework or something out there that implements a distributed Graph Database using Tinkerpop 3.x?

    #Tinkerpop3 #Tinkerpop #GraphDB #Graphs #Graphtheory #Science

  2. I just did my first release as the new project owner for Goblin! It's an open-source :opensource: OGM for Graph Databases that sits on top of Tinkerpop.

    Check it out here:
    git.qoto.org/goblin-ogm/goblin

    #Python #Tinkerpop #Gremlin #Tinkerpop3 #GraphDB #Goblin #Programming #CS #IT #Software #OpenSource #OSS #FOSS

  3. So now that I took over the Goblin open-source :opensource: project I started cleaning up the README and other repo documentation. Its amazing how just a little bit of time and attention can make a project look significantly more professional. Logo only cost me 7 bucks too!

    git.qoto.org/goblin-ogm/aiogre

    github.com/goblin-ogm/aiogreml

    #Python #Tinkerpop #Gremlin #Tinkerpop3 #GraphDB #Goblin #Programming #CS #IT #Software #OpenSource #OSS #FOSS

  4. So Gremlin Python ( Tinkerpop 3 ) does not have transaction support. So only way to get transaction like behavior is to make sure you do everything in a single database traversal.

    Because I am writing an ORM / OGM model as my base that means I needed to implement something that looks like optimistic locking all my own (only works on immutable write-only graphs). Its a huge pain in the ass.

    Anyway after half a day I finally figured out this is the traversal I need to resolve my optimistic lock when creating a single new node in the DB:

    session.g.E().has('dirty',1).aggregate('x').fold().V().has('dirty',1).aggregate('x').choose(__.V().hasLabel('account').has("fingerprint", "DEADF00D").hasNot('dirty').count().is_(0), __.select('x').unfold().properties('dirty').drop()).iterate()

    #programming #coding #Tinkerpop #tinkerpop3 #graphdb #graphtheory #python #gremlin