New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feature] Which DB backend do we want to see? #851
Comments
I think if a traditional database could Postgres is available, that would be great if we dont lose any capability with GUAC for using it instead of a graphdb. The reason is mostly already talent available within the company and ease of using a cloud vendor that supports it. |
I've added a doc for community discussion and added your comments in @anoop2811 ! https://docs.google.com/document/d/1wk7N9zggygz1Xx7qgx1aEt3niPpAEkRpdQi5i7k0Cj8/edit# |
There are projects built on Postgres to expose it as a Graphql layer, and they can take you pretty far. Id also recommend looking at surreal db. It has lots of interesting features, including the ability to run embedded or standalone. |
I just looked at the Go package for surreal and it's at an old version. Probably this can be fixed with a non-beta release on surreal. Though, there's also a potential issue that surreal's license is not yet fully Open Source, so it is unclear if we will be able to use it. |
I've tested ArangoDB and several other databases and the result is that ArangoDB is significantly faster. Full post at https://mihai.page/testing-graph-databases/ |
It'd be great if we could use CloudSQL, also. |
We do have support for ENT. That should be able to support CloudSQL (for databases that can be managed by CloudSQL) |
More information on the various supported backends here: https://github.com/guacsec/guac?tab=readme-ov-file#graphql-backends We are working to update the documentation site with all the updates. |
We discussed this during the recent community meeting. We have decided to put efforts behind Ent and the inmem/keyvalue backend in the time being until we hit a stable interface (i.e. 1.0) |
Discussions @ https://docs.google.com/document/d/1wk7N9zggygz1Xx7qgx1aEt3niPpAEkRpdQi5i7k0Cj8/edit#
With the new GraphQL interface, we are able to implement multiple database as GUAC's GraphQL backend.
Right now we've implemented an in-memory database, and its tests, which will act as a conformance suite to the GraphQL backend. This puts us in a position to now have multiple DB implementations to the GraphQL interface.
Considerations of implementation of the backend will include:
Note that the backends may be any type of database, from graph DBs (ArrangoDB / Neo4j) to more "traditional" DBs (Postgres, Spanner), or even a file system!
We'd like to get community input on what Databases they'd like to see in GUAC, with additional information about their use case and scale if available!
The text was updated successfully, but these errors were encountered: