DBDB.io The Encyclopedia of Database Systems · Est. 2017
Database of Databases

Database Entry

Gel


EdgeDB is a graph-relational database that aims to solve design problems posed by relational models such as relational models such as object–relational impedance. Tables are defined as object types with links representing dependencies between tables.[04][05]

Source Code
https://github.com/geldata/gel[02]
Developer
Country of Origin
CA
Start Year
2018 [05]
Project Type
Open Source
Derived From
PostgreSQL
License
Apache v2

It is paired with its own query language EdgeQL, that provides composable queries (that are compiled into optimized SQL) and a simplified interface for database development. EdgeDB is powered by PostgreSQL in the backend and thus inherits its ACID compliance, reliability, and performance.

Database Entry

Gel


EdgeDB is a graph-relational database that aims to solve design problems posed by relational models such as relational models such as object–relational impedance. Tables are defined as object types with links representing dependencies between tables.

It is paired with its own query language EdgeQL, that provides composable queries (that are compiled into optimized SQL) and a simplified interface for database development. EdgeDB is powered by PostgreSQL in the backend and thus inherits its ACID compliance, reliability, and performance.[04][05]

Data Model[04][03][05]


Edge DB describes itself as a "graph-relational" database that inherits many characters from a relational DBMS. Data is represented as strongly-typed objects which are the equivalent of tuples in a relational DBMS. Each object is link with an immutable id, thus not requiring an extra column for uniqueness.

Foreign Keys


Indexes[06]


EdgeDB supports indexes on single and multiple properties (columns/attributes) as well as arbitrary singleton expressions. Primary, foreign keys and properties declared with exclusive are automatically indexed.

Indexes are specified via index on () in EdgeQL which is then compiled into CREATE INDEX on PostgreSQL. EdgeDB supports hash, Btree, GIN, GiST, SP-GiST and BRIN indexes.

Isolation Levels[07][08]


EdgeDB only supports serializable isolation. There is currently no plan to support other isolation levels, as their internal tests indicate very little performance gains.

Query Execution[09]


EdgeDB uses PostgreSQL as its query execution engine and so supports the same tuple-at-a-time model as PostgresSQL.

Query Interface[10]


Storage Architecture[11][09]


EdgeDB uses PostgreSQL as its backend and storage layer and so has the same disk-oriented storage architecture as PostgresSQL.

Storage Model[11][09]


EdgeDB uses PostgreSQL as its backend and storage layer and so has the same n-ary storage model as PostgresSQL.

Storage Organization[11][09]


EdgeDB uses PostgreSQL as its backend and storage layer and so has the same storage organization as PostgresSQL.

System Architecture[11][09]


EdgeDB uses PostgreSQL as its backend and storage layer and so has the same system architecture as PostgresSQL.

Revision #12 Last Updated: