toggle quoted message
Show quoted text
IMHO the implementation of a Gremlin way to manage schemas does
not provide a major benefit unless it's somewhat standardized in
An HTTP API would have the benefit of making the schema
management available to users of the Gremlin server without the
mentioned problems for making it accessible via Gremlin. As it
would just expose the underlying Java API (current or a new one),
it would be nice if the web service would be optional if JG is
On 26-02-2020 15:39, 'Jan Jansen' via
JanusGraph developers wrote:
I started nearly one year ago to investigate how we can revamp
Why do we want to revamp JanusGraph Management? Schema
Management and Index Management is buggy
and hard to refactor without introducing breaking changes.
For users of programming languages other than Java, we don't
have any solution currently.
I came up with two basic idea's:
Schema Management using Gremlin
- Schema Management using Gremlin
- Http Admin API using (GraphQL/GRPC)
Most of the databases allow schema management using the default
- To be able to support management tools in different
languages, we would have to port queries for all languages
Http Admin API
- A massive number of internal classes have to be exported
- Refactoring wouldn't be straight forward which prevent as
to change the schema class without breaking changes. (class
types and order is saved in the database)
A solution would be to implement a new Graph class from the
ground up and map internal vertex types to newly created
- This won't allow tasks such as index repair, or reindex.
GraphQL and GRPC both allow us to build a new management
interface from the ground up with newly created types.
- Auto generate client libs for different languages.
- Step by step implementation
- Allows adding health check endpoint which can be used by a
Docker health check or Kubernetes liveness checks.
- Long-running tasks can be solved using streaming in GRPC
and subscriptions in GraphQL, such as repair or reindex.
After adding an admin API and revamping the internal
implementation, we could come back and add a Gremlin based
- What do the community members think about it?
- Do you see other advantages or disadvantages?
You received this message because you are subscribed to the Google
Groups "JanusGraph developers" group.
To unsubscribe from this group and stop receiving emails from it,
send an email to janusgr...@....
To view this discussion on the web visit https://groups.google.com/d/msgid/janusgraph-dev/8495bf4a-ad48-4df8-ab34-e45883c92186%40googlegroups.com.