Home

Awesome

orientdb-gremlin

Build Status Coverage Status Maven Central

Apache TinkerPop 3 Graph Structure Implementation for OrientDB. This started off as just a proof of concept, but thanks to a lot of help it's now in a really good shape and it has been officially adopted by OrientDB Team to be part of OrientDB v3.x.

The main area that need some more work is index lookups - currently it does find the right index for a simple case, e.g. g.V.hasLabel("myLabel").has("someKey", "someValue"). However if there are multiple indexes on the same property, or if there the traversal should better use a composite index, that's not handled well yet. If you feel inclined you can add these cases to the OrientGraphIndexTest.java. The function that looks up indexes is OrientGraphStep.findIndex.

Tests

Usage

Have a look at the tests-scala which demonstrates the usage. There's also an orientdb example project in gremlin-scala-examples.

Labels and classes

Vertices and Edges are stored as classes based on their label. In order to allow vertices and edges to use the same label, the implementation prepends V_ or E_ in the class name:

Migrations

You might want to use orientdb-migrations to create a schema with indexes etc.

Release