edgedb VS uvloop

Compare edgedb vs uvloop and see what are their differences.

edgedb

A graph-relational database with declarative schema, built-in migration system, and a next-generation query language (by edgedb)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
edgedb uvloop
19 14
12,280 9,994
1.2% 1.4%
9.9 5.5
about 8 hours ago about 1 month ago
Python Cython
Apache License 2.0 Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

edgedb

Posts with mentions or reviews of edgedb. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-08-22.
  • EdgeDB – A graph-relational database with declarative schema
    1 project | news.ycombinator.com | 10 Feb 2024
  • Beyond SQL: A relational database for modern applications
    4 projects | news.ycombinator.com | 22 Aug 2023
    A new DB, with a new query language that's like "SQL done right"? This immediately reminded me of EdgeDB: https://edgedb.com/

    Is there anyone here who knows enough about these two products to do a compare/contrast?

  • EdgeDB 3.0
    2 projects | news.ycombinator.com | 22 Jun 2023
    The whole thing consists of these main parts:

    1. SQL parser: https://github.com/edgedb/edgedb/tree/master/edb/pgsql/parse...

  • DuckDB 0.8.0
    5 projects | news.ycombinator.com | 17 May 2023
    >relational no-sql

    Do you mean something like edgeDB?[0]

    Or do you mean some non-declarative language completely? I don't see the latter making much sense. The issue with SQL for me is the "natural language" which quickly loses all intended readabilty when you have SELECT col1, col2 FROM (SELECT * FROM ... WHERE 1=0 AND ... which is what edgeDB is trying to solve.

    [0]https://edgedb.com/

  • Question about custom properties querying with the query builder
    1 project | /r/edgedb | 28 Sep 2022
    We need to land #3747, then something like this should work
  • EdgeDB 2.0
    13 projects | news.ycombinator.com | 28 Jul 2022
  • GraphQL Is a Trap?
    18 projects | news.ycombinator.com | 6 May 2022
    You have to do your own optimiser to avoid, for instance, the N+1 query problem. (Just Google that, plenty of explanations around.) Many GraphQL frameworks have a “naive” subquery implementation that performs N individual subqueries. You either have to override this for each parent/child pairing, or bolt something on the back to delay all the “SELECT * FROM tbl_subquery WHERE id = ?” operations and convert them into one “… WHERE id IN (…)”. Sounds like a great use of your time.

    In the end you might think to yourself “why am I doing this, when my SQL database already has query optimisation?”. And it’s a fair question, you are onto it. Try one of those auto-GraphQL things instead. EdgeDB (https://edgedb.com) does it as we speak, runs atop Postgres. Save yourself the enormous effort if you’re only building a GraphQL API for a single RBDMS, and not as a façade for a cluster of microservices and databases and external requests.

    Or just nod to your boss and go back to what being a backend developer has always meant: laboriously building by hand completely ad hoc JSON versions of SQL RBDMS schemas, each terribly unhappy in its own way. In no way does doing it manually but presenting GraphQL deviate from this Sisyphean tradition.

    I read in the article that NOT having GraphQL exactly match your DB schema is a best practice. My response is “did a backend developer write this?”

  • How we sharded our test suite for 10x faster runs on GitHub Actions
    3 projects | /r/devops | 3 May 2022
    Same idea, yeah. Unfortunately, in our case we couldn't use pytest due to complicated test setup, so we used a customized unittest runner instead.
  • GraphQL is now available on Supabase
    14 projects | news.ycombinator.com | 29 Mar 2022
    EdgeDB [1] has indeed a rich GraphQL layer, but it's a very different project.

    While it also builds on top of Postgres, EdgeDB replaces the entire relational database front-end. EdgeDB features a SQL replacement language called EdgeQL (analytical capabilities of SQL married with deep-fetching in GraphQL), a higher-level data model (tables -> object types), integrated migrations engine, a custom protocol with great performance & great client APIs, and many other things. Read more here [2].

    (disclaimer: I'm EdgeDB co-founder)

    [1] https://github.com/edgedb/edgedb

    [2] https://www.edgedb.com/blog/edgedb-1-0

  • EdgeDB 1.0
    16 projects | news.ycombinator.com | 10 Feb 2022
    I'm curious how this squares up with what someone linked elsewhere: https://github.com/edgedb/edgedb/discussions/3403

    > EdgeDB does not treat Postgres as a simple standard SQL store. The opposite is true. To realize the full potential of the graph-relational model and EdgeQL efficiently, we must squeeze every last bit of functionality out of PostgreSQL's implementation of SQL and its schema.

    This would seem to be an opposing view of how coupled EdgeDB and PostgreSQL are. Which is it?

uvloop

Posts with mentions or reviews of uvloop. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-06.
  • APIs in Go with Huma 2.0
    6 projects | dev.to | 6 Dec 2023
    I wound up on a different team with pre-existing Python code so temporarily shelved my use of Go for a bit, and we used Sanic (an async Python framework built on top of the excellent uvloop & libuv that also powers Node.js) to build some APIs for live channel management & operations. We hand-wrote our OpenAPI and used it to generate documentation and a CLI, which was an improvement over what was there (or not) before. Other teams used the OpenAPI document to generate SDKs to interact with our service.
  • Python Is Easy. Go Is Simple. Simple = Easy
    5 projects | news.ycombinator.com | 27 Nov 2023
  • will requests-html library work as selenium
    5 projects | /r/Python | 13 Feb 2023
    If you're looking for maximum requests per second you can change the asyncio event loop with one like UVLoop.
  • Benchmark asyncio vs gevent vs native epoll
    1 project | dev.to | 13 Dec 2022
    An optional package uvloop can also be install if working on Linux:
  • A Look on Python Web Performance at the end of 2022
    10 projects | dev.to | 14 Nov 2022
    The source code from the project resides in the github, with more than 8.6k stars and 596 forks is a very popular github, but no new releases are made since 2018, looks pure much not maintained anymore, no PR's are accepted no Issues are closed, still without windows or macOS Silicon, or PyPy3 support. Japronto it self uses uvloop with more than 9k stars and 521 forks and different from japronto is seems to be well maintained.
  • Modern Python Performance Considerations
    8 projects | news.ycombinator.com | 5 May 2022
    If you are building server-side applications using Python 3 and async API and if you didn't use https://github.com/MagicStack/uvloop, you are missing out on performance big time.

    Also, if you happen to build microservices, don't forget to try PyPy, that's another easy performance booster (if it's compatible to your app).

  • So it begins.
    1 project | /r/ProgrammerHumor | 1 May 2022
    Not that bad actually, with a different event loop implementation (such as https://github.com/MagicStack/uvloop). Not sure how well it will perform in a browser though
  • SearX On Windows: A Short(ish) Tech Journey
    3 projects | /r/u_SyntaxAerror | 17 Apr 2022
    And so I did some searching, and found that SearX isn't officially supported on Windows. Not to be deterred, I did another quick search and found that with pip and/or docker, you should be able to install SearX straightforwardly on Windows. After trying this for a bit, I realized that uvloop, a (questionably optional dependency of SearX) is not supported on Windows. I tried a couple things to get it to work, but they didn't end up working for me either through user error, ignorance, or plain old not working.
  • EdgeDB 1.0
    16 projects | news.ycombinator.com | 10 Feb 2022
    they also wrote uvloop [0] which is fantastic and advances the cutting edge of what can be done with modern asyncio-based Python. I saw a ~3x improvement in the throughput of a microservice I wrote when I first tried it out years ago. currently at $dayjob we just use it by default in every Python service, whether or not we expect that service to be performance-critical.

    0: https://github.com/MagicStack/uvloop

  • How does asynchronous code work in programming languages?
    2 projects | /r/ProgrammingLanguages | 10 Jan 2022
    If you manage to grok how uvloop works as well as Python's default asyncio loop scheduler, you'll understand this style. It is not by itself a parallelism enabler, but network I/O the coroutines triggered would run in parallel nevertheless, though CPU bound computations would not by default.

What are some alternatives?

When comparing edgedb and uvloop you can also consider the following projects:

supabase - The open source Firebase alternative.

asyncio

cockroach - CockroachDB - the open source, cloud-native distributed SQL database.

trio - Trio – a friendly Python library for async concurrency and I/O

neon - Neon: Serverless Postgres. We separated storage and compute to offer autoscaling, branching, and bottomless storage.

Twisted - Event-driven networking engine written in Python.

Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB

uvicorn - An ASGI web server, for Python. 🦄

supabase-graphql-example - A HackerNews-like clone built with Supabase and pg_graphql

asyncio - asyncio is a c++20 library to write concurrent code using the async/await syntax.

edgedb-rust - The official Rust binding for EdgeDB

pyzmq - PyZMQ: Python bindings for zeromq