FoundationDB Summit 2019: NuGraph: GraphDB as a Cloud Service Built Upon JanusGraph and FoundationDB

Speakers: @jltz, @ntrhieu89
Slides: NuGraph Built Upon JanusGraph FoundationDB
Recording: https://www.youtube.com/watch?v=EtB1BPG00PE

4 Likes

This was a nice presentation, especially showing how the existing scale-out backends for JG can introduce anomalies that are addressed by the FDB backend.

Do you have any comment on how it compares to the other work in eBay that popped up on the JanusGraph mailing list a few months back?

https://groups.google.com/forum/#!msg/janusgraph-dev/llOF0fULdWg/vkb9C1JXBQAJ

Excellent talk. We are seriously considering fdb as the backend for janus graph. Is this fork is opensource ? Or all the bug fixes are improvements merged into upstream repos ?

@kocolosk: The other work is to focus on building a backend that can support distributed transaction. It is a separate effort and is still in the early development phase. We chose FDB as JanusGraph storage plugin so that we can have a robust and high performant backend store that we can go to production much sooner.

@skyrocknroll: Our current system uses JanusGraph 0.3.1. We are planning to spend more time on integration testing with JanusGraph 0.4.0 (released on early July 2019), and to understand the performance implication of the integration (in particular, with multi-query turned on). As we rely on FDB Async. Iterator, we need to change some JanusGraph abstraction APIs to have incremental fetching in JanusGraph 0.4.0. Our current plan is that once we complete our evaluation and maybe merge some of our changes back to JanusGraph, we will open source the FoundationDB storage plugin in the coming months.

4 Likes

@jltz @ntrhieu89 Very interesting presentation, indeed. Thank you.
You mentioned that you had to fix some bugs in the FoundationDB Storage Plug-in. Could you share what they were, please? And is your source code open?
I’m especially interested in issues which are typical for eventually consistent backends, such as ghost vertices. For example I tested this issue: https://github.com/JanusGraph/janusgraph/issues/994 with FoundationDB and it remains even for the “serializable” isolation mode.

@jltz, I found https://groups.google.com/g/janusgraph-dev/c/iL16nTk4vsE?pli=1 which also links the first of the PRs that you submitted to push this upstream. (Thanks!) There’s 6 listed improvements, and it’s not clear to me if all of them made it upstream, and I’m not sure if GitHub - jlazdw/fdb: to store the developed full janusgraph-foundationdb plugin being empty should be taken as any indicator of if this work was ever fully released or not. Would you mind giving an update on how much ended up getting merged upstream or released?