Hey folks,
On today's AAI PTL call I offered to submit a proposal for your
consideration, regarding our approach to AAI-20 (introduction of "Champ", a
graph DB abstraction library) and AAI-24 (moving to an actively developed
open source graph database) and how we could take on this work for
Amsterdam.
A bit of background, if needed...
Today, AAI uses TitanDB as our graph database, and Champ supports Titan.
In the Amsterdam release of AAI, we're going to have three microservices
that interact with the graph database:
- Resources
- Traversal
- Gizmo
Of the three, currently only Gizmo uses Titan through Champ. Resources and
Traversal use Titan more directly.
For the graph DB replacement, JanusGraph is emerging as an early favourite
- though I think a proper evaluation is still to be done.
My proposal is that in Amsterdam we target a move of the Resources and
Traversal microservices on to Champ. I believe we're best to plan and
schedule this work independent of the Janus evaluation and possible
adoption.
If Janus works out, I think it's the right approach anyway. We'd then add
JanusGraph support to the Champ library and we're off. If Janus doesn't
work out (for technical or schedule reasons), we've still made progress in
creating the abstraction layer, and can insulate all the services against
an expected move to come later.
I'd suggest we can add the following stories to AAI-20
- Decouple Resources microservice from Titan, adopt Champ
- Decouple Traversal microservice from Titan, adopt Champ
- (Note: I think Traversal is executing some direct gremlin queries
for power/efficiency - not sure they have to go through Champ as an
abstraction given we're relying on Tinkerpop)
I also suggest we add the following story to AAI-24
- Add new graph DB support to Champ
Comments?
Cheers.
_______________________________________________
onap-discuss mailing list
[email protected]
https://lists.onap.org/mailman/listinfo/onap-discuss