You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@atlas.apache.org by "Graham Wallis (JIRA)" <ji...@apache.org> on 2017/05/10 13:12:04 UTC

[jira] [Commented] (ATLAS-1757) Proposal to update graph DB

    [ https://issues.apache.org/jira/browse/ATLAS-1757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16004652#comment-16004652 ] 

Graham Wallis commented on ATLAS-1757:
--------------------------------------

From an architecture/implementation perspective, although the current Atlas code contains an abstract graph layer, the choice of graph database is made at Build time. I'm not sure why this is, and it seems to me that it would be preferable to be able to switch between graph databases either at Deployment time or post-Deployment by configuration. An enterprise running Atlas may need to update their graph database due to support lifecycle or to exploit a feature of a newer/different graph database. Currently - i.e. with the current Build time selection based on Maven build profile - this requires that Atlas is rebuilt and packaged. Would it not be preferable for the enterprise customer to be able to change their deployment configuration - e.g. by editing atlas-application.properties - rather than requiring a rebuild? Migration would not be zero-cost and I would not anticipate customers switching graph databases frequently or outside of a planned migration exercise. It seems odd that it would require a re-build, but I'm happy to be persuaded.

Incidentally, the current build-time switching using Maven build profiles does not work as intended. The Maven dependency exclusions suggest that the different graph databases should be mutually exclusive, but there is a transient dependency on 'titan0' (i.e. Titan 0.5.4) which means that a build with a different build profile (e.g. 'ibm-graph') contains both the targeted package and the atlas-graphdb-titan0 project packages. We could fix this, but if were to adopt the configurable switching of graph databases then there is no point doing so. 

> Proposal to update graph DB
> ---------------------------
>
>                 Key: ATLAS-1757
>                 URL: https://issues.apache.org/jira/browse/ATLAS-1757
>             Project: Atlas
>          Issue Type: Improvement
>          Components:  atlas-core
>    Affects Versions: trunk
>            Reporter: Graham Wallis
>
> Given the formation of the JanusGraph open source project (under the Linux Foundation) to continue the development and support of the Titan DB, should we aim to deprecate Titan and move over to JanusGraph?
> If we did this, we could keep the graph abstraction layer and use it to support Titan 0, Titan 1 and JanusGraph.
> Are there other graph databases that we should consider?



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)