PRQL, Pipelined Relational Query Language

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. prql

    PRQL is a modern language for transforming data — a simple, powerful, pipelined SQL replacement

    For me the examples on the website ([Title](https://prql-lang.org/)) are the biggest selling point for PRQL, in particular the SQL it generates. It looks clean, straightforward, something I would've written myself.

    In general, I like this slightly more careful take on modern database development. 10-15 years people would start a brand new database like Mongo, or Riak, or Influx, or whatever, and would try to convince application developers to select it for new projects. But recently we started getting more conservative options like EdgeDB, TimescaleDB, or even PRQL which all expect us to run Postgres with some addons and / or query preprocessors. Teach like this is so much easier to adopt!

    I'm really liking what Edge folks are doing with schemas and migrations, but I do find PRQL syntax much more intuitive. My application code is littered with data transformation pipelines already: all these map / filter chains in TYpeScript, iterators in Rust, enumerables in Ruby, streams in Java, LINQ in .net, Rx in dozens of languages etc. etc. So the concept is very, very familiar. Getting nice SQL queries out of PRQL that I can store, inspect later, see the query plans, add indices where necessary, is just great. It's such a good tool!

  2. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  3. ClickHouse

    ClickHouse® is a real-time analytics database management system

    We have recently merged PRQL support into ClickHouse: https://github.com/ClickHouse/ClickHouse/pull/50686

    It's currently more like an experiment - I'm not sure if it will be usable or useful. There are some concerns about Rust, although minor: https://github.com/ClickHouse/ClickHouse/issues/52053#issuec...

  4. dbt-prql

    dbt-prql allows writing PRQL in dbt models

    Totally agree. This was a high priority goal for us and @maximilianroos did a lot of work putting something together. In the end, I believe it was really fighting against how dbt is set up though as it is so tightly interwoven with Jinja2. Perhaps with the introduction of the Python dbt models, things might have changed now and it's worth taking another look.

    https://github.com/PRQL/dbt-prql

    (Disclaimer: I'm a PRQL contributor.)

  5. Preql

    An interpreted relational query language that compiles to SQL.

    Hm, I just realized there are two similar projects with very similar names: this one, and

    https://github.com/erezsh/Preql

  6. SQLPage

    Fast SQL-only data application builder. Automatically build a UI on top of SQL queries.

    I am currently building a SQL-only web framework [1], and I was contacted by the prql folks to include the language by default in sqlpage. I have to say, I have mixed feelings about it: on one hand, it indeed feels more natural to query data with a clean pipeline of operators. On the other hand, it makes me think of the famous xkcd comic about standards [2]: there were too many data querying languages, so we made a new one.

    [1] SQLPage: https://sql.ophir.dev

  7. ClickBench

    ClickBench: a Benchmark For Analytical Databases

    Here are examples of MongoDB aggregations: https://github.com/ClickHouse/ClickBench/blob/main/mongodb/q...

    They are painful to write compared to SQL queries.

    Although the commercial version of MongoDB has support for SQL, it's not available for general MongoDB users.

  8. duckdb-prql

    PRQL as a DuckDB extension

    Not quite what you're asking for but DuckDB has both PRQL [1] and Postgres [2] extensions, so you could probably query your Postgres database with PRQL from there.

    There's also a DBeaver plugin [3] which we still need to document better and simplify the usage of but you could potentially also use that to query Postgres with PRQL.

    Finally there is pyprql [4] with which you could query Postgres from a Jupyter notebook.

    [1]: https://github.com/ywelsch/duckdb-prql

    [2]: https://duckdb.org/docs/extensions/postgres_scanner.html

    [3]: https://github.com/PRQL/prql/issues/1643

    [4]: https://github.com/PRQL/pyprql

    (Disclaimer: I'm a PRQL contributor.)

  9. pyprql

    Python extensions for PRQL

    Not quite what you're asking for but DuckDB has both PRQL [1] and Postgres [2] extensions, so you could probably query your Postgres database with PRQL from there.

    There's also a DBeaver plugin [3] which we still need to document better and simplify the usage of but you could potentially also use that to query Postgres with PRQL.

    Finally there is pyprql [4] with which you could query Postgres from a Jupyter notebook.

    [1]: https://github.com/ywelsch/duckdb-prql

    [2]: https://duckdb.org/docs/extensions/postgres_scanner.html

    [3]: https://github.com/PRQL/prql/issues/1643

    [4]: https://github.com/PRQL/pyprql

    (Disclaimer: I'm a PRQL contributor.)

  10. chdb

    chDB is an in-process OLAP SQL Engine 🚀 powered by ClickHouse

    > Can you embed it in Python as a library?

    https://github.com/chdb-io/chdb

        pip install chdb

  11. Kusto-Query-Language

    Kusto Query Language is a simple and productive language for querying Big Data.

    Note that Kusto Query language is open source see https://github.com/microsoft/Kusto-Query-Language

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Should You Ditch Spark for DuckDB or Polars?

    3 projects | news.ycombinator.com | 15 Dec 2024
  • Ask HN: How did you scale your analytics workloads (Postgres)?

    1 project | news.ycombinator.com | 1 Dec 2024
  • All Hacker News posts dataset on Google BigQuery

    1 project | news.ycombinator.com | 27 Nov 2024
  • Show HN: BemiDB – Postgres read replica optimized for analytics

    12 projects | news.ycombinator.com | 7 Nov 2024
  • SQL-92 in TPC Benchmarks: Are They Still Relevant?

    1 project | dev.to | 25 Oct 2024

Did you know that C++ is
the 7th most popular programming language
based on number of references?