OrientDB 3 & Tinkerpops

50 views
Skip to first unread message

Rafael Santodomingo

unread,
Jun 7, 2019, 8:19:30 AM6/7/19
to OrientDB
Hi All,

I just wanted to ask what is the plan re Tinkerpops interface. As opposed to OrientDB 2, OrientDB 3 does not include Tinkerpops implementation in the core package. It's true that it does add extra packages with Tinkerpops 3 implementation (and Tinkerpops 2.6 for backward compatibility), but my general feeling is that OrientDB is focusing more now on the Multi-Model API.

We need to decide which alternative we use (Graph API with Tinkerpops 3 or Multi-Model API). It seems to me that there's more support and documentation on the Multi-Model API and also that historically is more aligned with the core OrientDB solution - the Mutli-Model API being an extension of the original Document API. 

What do you suggest? I like the idea of working with the Tinkerpops interface, but having carried out some throrough tests with OrientDB 3.0.17 Tinkerpops 3 I'm not sure about its performance and support at all. 

Regards,
Rafa

Luigi Dell'Aquila

unread,
Jun 10, 2019, 3:42:45 AM6/10/19
to orient-...@googlegroups.com
Hi Rafa,

Apache TinkerPop is still fully supported, there is a specific OrientDB distribution that includes a Gremlin server and all the TP APIs.

The Muti-Model API in v3.0 is a logical step in the direction of making OrientDB API as simple and complete as possible; in previous versions there was no way to manipulate documents and graphs in a consistent manner with a single API, TinkerPop 2.6 did not have natural Document capabilities and the ODatabase API did not have graph concepts, it was definitely not a nice situation for the end-user usability.

If you are connecting to OrientDB directly, I'd suggest to use the Multi-Model API, that is more optimised and complete.

If you need to use TinkerPop API for some reason (eg. because you need compliance to standards) then I'd suggest to connect to the Gremlin server directly, this will guarantee that you are really using it in a standard way

Thanks

Luigi



--

---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-databa...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/orient-database/2123e025-1069-4754-ae2c-2792bc763904%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Rafael Santodomingo

unread,
Jun 10, 2019, 9:55:18 AM6/10/19
to OrientDB
Many thanks Luigi,

"If you need to use TinkerPop API for some reason (eg. because you need compliance to standards) then I'd suggest to connect to the Gremlin server directly, this will guarantee that you are really using it in a standard way"

I'm afraid I didn't quite get that. Do you mean we should use the gremlin-server.sh (or .bat) & access the database via the gremlin console (as in the examples given in http://orientdb.com/docs/3.1.x/tinkerpop3/OrientDB-TinkerPop3.html)? 
But how can we integrate this with our java code if it isn't through the OrientDB-TP3 Graph API? Besides we're also using embedded documents, which don't comply with the gremlin standard as far as I now. 

We've got java "business application" modules that need to access OrientDB and we'll prefer to use the Tinkerpops standard as much as we can - as we did with OrientDB 2.2.12. 

What I understand is that now the main focus is on the Multi-Model API, which is the recommended API to access OrientDB via Java as it is more complete and optimised, isn't?

Regards,
Rafa
To unsubscribe from this group and stop receiving emails from it, send an email to orient-...@googlegroups.com.

Luigi Dell'Aquila

unread,
Jun 10, 2019, 9:58:51 AM6/10/19
to orient-...@googlegroups.com
Hi Rafa,

That's exactly the point: TinkerPop has advantages when you use it as a standard, ie through the Gremlin server, but it's also a sub-optimal solution both in terms of performance/optimization and in terms of full control on the DB capabilities (eg. it does not have Document concepts).

If you need full control on the DB and you want to exploit all its capabilities with the best performance, then you should definitely go with the Multi-Model API.
On the other hand, if portability and compliance to broader standards is a must for you, then TinkerPop is definitely a good alternative.

Thanks

Luigi


To unsubscribe from this group and stop receiving emails from it, send an email to orient-databa...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/orient-database/104a86da-1485-4dad-a3d1-547c6f0f3a41%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages