Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 77 additions & 0 deletions content/dgraph-glossary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
+++
title = "Dgraph Glossary"
description = "Introduction to Dgraph Database. Dgraph is a horizontally scalable and distributed GraphQL database that you can run on-premises, in your cloud infrastructure, or fully-managed (hosted). Learn Dgraph and GraphQL terms from our glossary."
[menu.main]
name = "Dgraph Glossary"
identifier = "glossary"
weight = 15
+++


**Alpha**
Dgraph consists of different servers, zero and alpha. Alpha servers host predicates and indexes. A Dgraph instance, aka a Dgraph cluster, has at least 1 Alpha server and scale horizontally by adding more Alpha servers.

**Badger**
A fast, open-source key-value database written in pure Go that provides the disk layer for Dgraph.
More at [Badger documentation](https://dgraph.io/docs/badger)


**Dgraph**
your preferred graph database ! Dgraph is a horizontally scalable and distributed database.

**Dgraph Cloud**
The fully-managed version of Dgraph available as a service.
More at [Dgraph Cloud documentation](https://dgraph.io/docs/cloud)

**DQL** Dgraph Query Language is Dgraph's proprietary language to insert, update, delete and query data.

**Endpoints**


**Entity<a name="entity"></a>**

**Edge**
In the mental picture of a graph: bubbles connected by lines ; the bubbles are nodes, the lines are edges.
In Dgraph terminology edges are `entity predicates`.

**GraphQL** is a declarative language for querying data used by application developers to get the data they need using GraphQL APIs. Dgraph supports the deployment of GraphQL data model (GraphQL schema) and automatically exposes a GraphQL API endpoint accepting GraphQL queries.


**Group**

**gRPC**

**Lambda** Dgraph takes care of all the logic to execute GraphQL queries when a GraphQL data model is deployed. Lambda provides a way to extend this capability and to write your custom logic integrated with Dgraph execution model.

**Mutation** A mutation is a request to modify server-side data. It is covering insert, update, or delete operations.

**Node**
In the mental picture of a graph: bubbles connected by lines ; the bubbles are nodes, the lines are edges.
Dgraph terminology favors the term [Entity](#entity), but the two terms are used interchangeably in our documentation.

Node is also used in software architecture to reference a physical computer or a virtual machine running a module of Dgraph in a cluster. E.g : 'our archictecture has 3 Alpha nodes'.

**Predicate<a name="predicate"></a>** From [Cambridge Dictionary](https://dictionary.cambridge.org/us/dictionary/english/predicate) a predicate is *the part of a sentence that gives information about the subject*. In Dgraph, a predicate is the smallest piece of information about an [entity](#entity). A predicate can hold a literal value or can describe a relation to another entity :
- when we store that an entity name is "Alice". The predicate is ``name`` and predicate value is the string "Alice". We say that ``name`` is a **value predicate**.
- when we store that Alice knows Bob, we may use a predicate ``knows`` for the entity representing Alice. The value of this predicate would be the [uid](#uid) of the entity representing Bob. We say that ``knows`` is an **entity predicate** or a [relation](#relation).


**RATEL** Ratel is a tool for data visualization and cluster management that’s designed to work with Dgraph and DQL. More at [Ratel User's guide](https://dgraph.io/docs/ratel/overview/).

**RDF** RDF 1.1 is a Semantic Web Standards for data interchange. It allows us to make statements about resources. The format of these statements is simple and in the form of `<subject>> <predicate> <object>`.
Dgraph uses RDF format to create, import and export data. Note that Dgraph also supports JSON format.


**Relation<a name="relation"></a>** A relation is a predicate which object is an entity. It's simply an information that an entity is related to another entity. See [predicate](#predicate).

**Sharding**

**Triple** Because RDF statements consist of three elements <subject> <predicate> <object> they are called triples.

**UID<a name="uid"></a>** UID is the Universal Identifier of an entity. `uid` is a reserved predicate holding the UID value. UIDs are generated by Dgraph.


**Upsert**

**Zero**
Dgraph consists of different servers, zero and alpha. Zero servers control the Dgraph database cluster : assign Alpha servers to groups, re-balance data between groups, handle transaction timestamp and UID assignment.