cncf / cncf/landscape-graph

Spike: Evaluate dgraph.io as an apache 2.0 alternative for back end store

Open
#94 1 comment 1 reaction 0 assignees View on GitHub
brainstorm data help wanted spike
Dominant language
Jupyter Notebook
Stars
55
Forks
19
PR merge metrics
No merged PRs in 30d

Description

Given #4, #54 and present direction usage of GraphQL as the interface definition language for the landscape-graph project, we should explore DGraph.

---

## CNCF Landscape: [DGraph Labs](https://landscape.cncf.io/card-mode?organization=dgraph-labs&selected=dgraph)

image

* [DGraph is Apache 2.0](https://github.com/dgraph-io/dgraph/blob/master/LICENSE.md) (Here the landscape data isn't quite right...)

* Support for Apollo Federation: [dgraph.io/docs/graphql/federation](https://dgraph.io/docs/graphql/federation)

* GraphQL deeply supported OOTB
https://dgraph.io/docs/query-language/graphql-fundamentals/

--

## https://dgraph.io/docs/dgraph-overview/#dgraph-architecture

``
> Dgraph is a single layer in your tech stack, but inside the inner workings of a Dgraph database instance, there are three distinct entities:
>
> * [Badger](https://dgraph.io/badger) - Dgraph’s custom-built key-value store
> * [Ristretto](https://dgraph.io/ristretto) - [Dgraph](https://github.com/dgraph-io/dgraph)’s custom-built cache
> * Dgraph - the methods and algorithms used to parse DQL (and now GraphQL) and act accordingly
>
> External to the core Dgraph database instance, you will find tools and communication clients to support Dgraph:
>
> * [Ratel](https://dgraph.io/docs/ratel/overview/) - a GUI Layer to work directly with DQL. (Ratel does not work with the graphql)
> * [DQL Clients](https://dgraph.io/docs/clients/) written in Go, C#, Java, JavaScript, and Python.
``

---

## https://dgraph.io/docs/graphql/overview

``
> **Welcome to the official GraphQL documentation for Dgraph.**
>
> Designed from the ground up to be run in production, Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.
>
> * These docs tell you all the details. If you are looking for a walk through tutorial, then head over to our [tutorials section](/graphql/todo-app-tutorial/todo-overview).
>
> Dgraph gives you GraphQL. You're always working with GraphQL, not a translation layer. When you build an app with Dgraph, Dgraph is your GraphQL database.
>
> ## Exploring the docs
>
> * How it Works - Once you've got yourself started with [tutorials](/graphql/todo-app-tutorial/todo-overview), you might need to review [how it works](/graphql/how-dgraph-graphql-works).
> * [Schema](/graphql/schema/schema-overview) - You'll need the schema reference to find out about all the options of what can be in your schema.
> * [The API](/graphql/api/api-overview) - The API section tells you about how the GraphQL API is served and how you can access it.
> * [Queries](/graphql/queries/queries-overview) - Everything you need to know about writing GraphQL queries.
> * [Mutations](/graphql/mutations/mutations-overview) - Everything you need to know about writing GraphQL mutations with Dgraph.
> * [Subscriptions](/graphql/subscriptions) - GraphQL subscriptions help you make your APP more responsive or, for example, add live feeds. Dgraph can generate subscriptions for you.
> * [Custom Logic](/graphql/custom/custom-overview) - Dgraph's auto generated GraphQL API is fantastic, but as your app gets more complicated, you'll need to add custom business logic to your API.
> * [Authorization](/graphql/authorization/authorization-overview) - Find out how Dgraph can add automated authorization to your GraphQL API.
> * [Local Administration](/graphql/admin) - Once you're up and running you might also need to know a few details about administering your Dgraph instance if you are running locally.
> * [Dgraph Cloud](https://dgraph.io/docs/cloud/admin/overview) - If you are using hosted Dgraph on Dgraph Cloud, then head over here to learn about administering your backend.
>

``

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.