# Dgraph, GraphQL, Schemas, and CRUD

DevFeed: [Dgraph, GraphQL, Schemas, and CRUD](<https://devfeed.tech/articles/dgraph-graphql-schemas-and-crud-22163.md>)

Original publisher: [Read original article](<https://www.ardanlabs.com/blog/2020/05/dgraph-graphQL-schemas-crud.html>)

Published: 2020-05-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [William Kennedy](<https://devfeed.tech/sources/william-kennedy.md>)

Topics: [graph-database](<https://devfeed.tech/topics/graph-database.md>), [GraphQL](<https://devfeed.tech/topics/graphql.md>), [CRUD](<https://devfeed.tech/topics/crud.md>), [Structured-data](<https://devfeed.tech/topics/structured-data.md>), [integrity](<https://devfeed.tech/topics/integrity.md>), [Scalability](<https://devfeed.tech/topics/scalability.md>), [MongoDB](<https://devfeed.tech/topics/mongodb.md>), [browser](<https://devfeed.tech/topics/browser.md>), [ide](<https://devfeed.tech/topics/ide.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>)

Tags: [ardan-labs](<https://devfeed.tech/tags/ardan-labs.md>), [blog](<https://devfeed.tech/tags/blog.md>), [browser](<https://devfeed.tech/tags/browser.md>), [database](<https://devfeed.tech/tags/database.md>), [databases](<https://devfeed.tech/tags/databases.md>), [go](<https://devfeed.tech/tags/go.md>), [go-programming](<https://devfeed.tech/tags/go-programming.md>), [golang](<https://devfeed.tech/tags/golang.md>), [graph-database](<https://devfeed.tech/tags/graph-database.md>), [graphql](<https://devfeed.tech/tags/graphql.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [ide](<https://devfeed.tech/tags/ide.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [programming](<https://devfeed.tech/tags/programming.md>), [scalability](<https://devfeed.tech/tags/scalability.md>), [schema](<https://devfeed.tech/tags/schema.md>), [transactions](<https://devfeed.tech/tags/transactions.md>)

## AI overview

A tutorial on defining GraphQL schemas in Dgraph and using the generated CRUD API through GraphQL Playground. It also compares graph, relational, and document databases, discussing integrity, flexibility, distribution, and scalability.

## Source excerpt

Introduction In most of the reviews for this post, I was asked why choose a graph database over something else? This is a hard question to answer since my experience right now is limited on the graph database side. My guess is you're wondering the same thing, so this is my best answer to date. At this point in my career, I would only choose a relational database if I was writing financial software. Relational databases are very rigid so you need to really make sure you understand your data upfront. Changing the database is a big effort, but the database when designed correctly will give you very high levels of integrity and you can get good performance. These databases are hard to distribute and scale so you tend to end up with single instances that are very large and require replication for backup. The cloud providers have relational databases today that are supposed to scale, but I have no experience with them.