EdgeDB – A graph-relational database built on top of Postgres

  • Been using this for a toy project, and enjoying it so far!

    Something I haven't quite figured out is, when using the TypeScript library, how to have more than two filters, ie x == z and y == a and b == c, without some pretty nasty nesting using the .op function.

  • I love this project. But what they need before I'd use it in prod is, the equivalent of an EXPLAIN command.

    It's a pretty common problem for a developer to have: "this query looks like it should be fast, but actually it's slow. What's the DB doing?"

    I thought I saw somewhere that EXPLAIN was coming in EdgeDB 3.0(?)

  • Another query language? Why can't they just implement Cypher... I still have nightmares from trying to learn ArangoDB's AQL.

  • This is one of the projects that I’m really excited about. The thing that concerns me are it’s performance characteristics with it being written in Python. Vs something like PostgREST which is written in Haskell and blazing fast. Is there more info about performance and scaling of Edge?

  • How does this compare to graph databases like neo4j? Would anyone recommend using this for working with actual graph data structures?

  • How does recursion / recursive queries work, e.g. tree-like data structures? How are cycles represented and handled? Particularly around performance?

  • Previous discussions on HN:

    [1] Show HN: EdgeDB 1.0 (145 comments):

    https://news.ycombinator.com/item?id=30290225

    [2] EdgeDB 2.0 (323 comments):

    https://news.ycombinator.com/item?id=32267287

  • I think this is awesome. This is like higher level and more readable + hopefully more efficient version of SQL.

    BTW: In the nested-filters example, I don't understand how actor's `name` is being returned as `actor_name`. Where is `AS actor_name` being specified in EdgeDB's query?

  • > The post-SQL era has arrived

    Here we go again.

  • This is awesome and I really hope it succeeds but using it at my company means I’ll have to answer, “why can’t we just use SQL” a million times from every engineer who is dreading learning a new thing

  • No Java/Kotlin driver.

  • It's not as simple as it shows from basic examples.

    Complex stuff gets weird.