Draft:EdgeDB

From Wikipedia, the free encyclopedia
  • Comment: Wikipedia articles require reliable independent secondary sources with in depth coverage of the subjects.
    If decent sources are added to the article, feel free to ping my talk page once you've resubmitted the article for review. Stuartyeates (talk) 04:17, 6 December 2023 (UTC)
  • Comment: Contains too many primary sources. We need sources that are independent of the subject here. Vanderwaalforces (talk) 06:56, 14 November 2023 (UTC)

EdgeDB
Developer(s)EdgeDB, Inc.
Initial releaseApril 11, 2019; 5 years ago (2019-04-11)..[1]
Stable release
4.0 / 01.11.2023
Repositoryhttps://github.com/edgedb/edgedb
Written inPython, Cython, Rust, TypeScript, Go
Operating systemCross-platform
TypeRelational database
LicenseApache License 2.0
Websiteedgedb.com

EdgeDB is an open-source relational database developed by EdgeDB, Inc.

History[edit]

EdgeDB was founded by core Python developer[2][3][4][5] Yury Selivanov and co-founder Elvis Pranskevichus[6], who began working together as consultants in Toronto, Canada in 2008[7]. The idea for EdgeDB came from an internal framework that they had built as a consulting company in order to more effectively leverage Relational Database Management Systems (RDBMs), which they then decided to further develop and make public.[8] The development of EdgeDB was first mentioned in 2016 by its founders in their announcement of a PostgreSQL client library for Python known as asyncpg due to the need for "high-performance, low-latency access to the advanced features of PostgreSQL".[9]

EdgeDB Ltd. raised its first financing in 2019 with $4 million from Accel and a further $15 million in series A funding in 2022,[10] leading to a larger headcount and development of its cloud service.[11]

Characteristics[edit]

EdgeDB describes itself as a graph-relational database, namely an object-oriented data model and strict graph schema and query language on top of a relational database core that uses PostgreSQL as its query engine.[12] Its query language is known as EdgeQL.[8]

EdgeDB is ACID-compliant[13]

Client libraries[edit]

EdgeDB client libraries have been written for JavaScript/TypeScript, Go, Python, Rust, .NET, Java, and Elixir.[14]

Comparison of SQL and EdgeQL[edit]

EdgeDB's object types are analogous to tables in SQL[8], while queries return a structured result object as opposed to a list of rows.[12]

The following example shows roughly equivalent EdgeQL and SQL queries used to display films in which a certain actor plays a role, the average rating and a top 5 list of actors in the films based on their order in the credits.[15]

SQL EdgeQL
SELECT
  title,
  Actors.name AS actor_name,
  (SELECT avg(score)
   FROM Movie_Reviews
   WHERE movie_id = Movie.id) AS rating
FROM
  Movie
  CROSS JOIN LATERAL (
    SELECT name
    FROM
      Movie_Actors
      INNER JOIN Person
        ON Movie_Actors.person_id = Person.id
      WHERE Movie_Actors.movie_id = Movie.id
      ORDER BY Movie_Actors.credits_order
      FETCH FIRST 5 ROWS ONLY
   ) AS Actors
WHERE
  'Zendaya' IN (
    SELECT Person.name
    FROM
      Movie_Actors
      INNER JOIN Person
        ON Movie_Actors.person_id = Person.id
  )
select
  Movie {
    title,
    rating := math::mean(.ratings.score)
    actors: {
      name
    } order by @credits_order
      limit 5,
  }
filter
  "Zendaya" in .actors.name

See also[edit]

References[edit]

  1. ^ "EdgeDB 1.0 Alpha 1". edgedb.com.
  2. ^ "PEP 492 – Coroutines with async and await syntax". python.org.
  3. ^ "PEP 525 – Asynchronous Generators". python.org.
  4. ^ "PEP 530 – Asynchronous Comprehensions". python.org.
  5. ^ "PEP 567 – Context Variables". python.org.
  6. ^ "EdgeDB". dbdb.io (Database of Databases). 9 May 2023.
  7. ^ "EdgeDB wants to modernize databases for cutting-edge apps". techcrunch.com. 22 April 2022.
  8. ^ a b c "EdgeDB Seeks to Bring Relational Databases Out of the 1970s". datanami.com. 9 November 2022.
  9. ^ "1M rows/s from Postgres to Python". magic.io.
  10. ^ "EdgeDB raises $15M for open source graph-relational database". techtarget.com.
  11. ^ "Open Source Data Store Startup Crate Data Raises $1.5M From Sunstone And DFJ Esprit". accel.com.
  12. ^ a b "Graph-relational database startup EdgeDB raises $15M in early-stage funding". www.siliconangle.com. 7 November 2022.
  13. ^ "Beyond the mainstream database offerings". techcentral.ie. 26 March 2020.
  14. ^ "Client Libraries". edgedb.com.
  15. ^ "Datenbanken: EdgeDB 1.0 soll SQL Konkurrenz machen". heise.de. 14 February 2022.

External links[edit]