Preql
rfcs
Preql | rfcs | |
---|---|---|
16 | 5 | |
594 | 34 | |
- | - | |
0.0 | 4.6 | |
over 1 year ago | 5 days ago | |
Python | Python | |
GNU General Public License v3.0 or later | Apache License 2.0 |
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.
Preql
- Pql, a pipelined query language that compiles to SQL (written in Go)
-
PRQL, Pipelined Relational Query Language
Hm, I just realized there are two similar projects with very similar names: this one, and
https://github.com/erezsh/Preql
-
Oops, I wrote yet another SQLAlchemy alternative (looking for contributors!)
First, let me introduce myself. My name is Erez. You may know some of the Python libraries I wrote in the past: Lark, Preql and Data-diff.
-
Why don't SQL transpilers take off?
Example of language that implements this: https://github.com/erezsh/Preql
-
Even Babies fear … Fu**ing SQL
But what about PreQL?
-
Show HN: PRQL – A Proposal for a Better SQL
It seems people here are really interested in alternatives to SQL. So perhaps you'd also like to have a look at https://github.com/erezsh/Preql
(Same name, same goal, different approach, and already working)
-
Made a Programing language using python
There's also lark, which is used by a plethora of projects (I haven't used it, but I heard about PreQL on a podcast where they talk for a bit about what it's like to develop a new language in lark)
-
A primer on programming languages for data science
Just want to mention preql exists as an option - https://github.com/erezsh/Preql
- Ask HN: SQL tooling: REPL-likes, Intellisense, etc.
-
Against SQL
I share the author's point of view, which led me to start a new relational programming language that compiles to SQL. If that sounds interesting, you can find it here: https://github.com/erezsh/Preql
rfcs
-
Show HN: Starter.place – Gumroad for Starter Repos
Search it is! I could implement search that searches for exact tokens in the tools the author connected and the README, but I want to wait for anything more until EdgeDB releases its full-text search solution https://github.com/edgedb/rfcs/blob/master/text/1015-full-te...
I actually had a feature in mind where people could vote on starters they want and others could build them out and list them for free or a price. Do you think that would fit your needs and is there anything in particular you'd want to see in a feature like that?
-
Show HN: PRQL 0.2 – Releasing a better SQL
Replied on Twitter!
> I see EdgeDB as primarily focused on transactional queries, whereas PRQL is very focused on analytical queries.
That's true to an extent currently, but we actually envisioned EdgeQL to be a capable analytical query language too. We'll release EdgeDB 2.0 in a couple of weeks and it will feature a powerful GROUP BY statement (read more about it here [1]) and in 3.0 we might ship window functions (or some equivalent).
With all that said PRQL looks cool!
[1] https://github.com/edgedb/rfcs/blob/master/text/1009-group.r...
-
EdgeDB 1.0
>> We shall do better than SQL
> The EdgeQL language looks cool, and I'm sure querying via a graph structure makes certain problems easier in some use cases. However as much as people have complained about SQL, it's just so ubiquitous there needs to be a very good reason to switch away from it. Not having to write joins isn't really a good enough reason, in my opinion.
Oh, it goes much deeper than not writing joins. There's no single ORM out there that can implement a TypeScript query builder like ours, see the example in [1]. This is only possible because of EdgeQL composability, but that composability required us to rethink the entire relational foundation.
> > The true source of truth
> I'm not sure why this means EdgeDB is better. <..>
This section implies that EdgeDB's schema allows to specify a lot of meta / dynamically computed information in it. And soon your access control policies. Take a look at the work-in-progress RFC [2] [3] to see how this is more powerful, then say, Postgres' row level security.
> > Not just a database server
> It sounds like they have a solid client, which is awesome.
Also lightweight connections to the DB so that you can have thousands of concurrent ones without load balancers, built-in schema migrations engine, and many other things. In fact we have so much that it's challenging what to even highlight in a blog post like the 1.0 announcement.
> Cloud-ready database APIs
> This used to be true, but is definitely no longer true. Cloud-native databases are everywhere and incredibly common. See any major cloud, https://www.cockroachlabs.com/, or any of the tons of other database solutions.
Not to pick on CockroachDB (they have an amazing product and company, we love them), but you should benchmark local install of Postgres and Cockroach to see yourself that scalability still has a significant cost in performance.
[1] https://www.edgedb.com/blog/edgedb-1-0#not-just-a-database-s...
[2] https://github.com/edgedb/rfcs/pull/49
[3] https://github.com/edgedb/rfcs/pull/50/files
-
Show HN: PRQL – A Proposal for a Better SQL
EdgeQL is getting support for generic partitioning/aggregating `GROUP` very soon [1], so we are giving some love to the analytical side of things too :-)
We definitely need more collective effort put into "Better SQL", so PRQL is a welcome sight!
[1] https://github.com/edgedb/rfcs/blob/21e581a188715c6ff82944b6...
What are some alternatives?
prql - PRQL is a modern language for transforming data — a simple, powerful, pipelined SQL replacement
PyPika - PyPika is a python SQL query builder that exposes the full richness of the SQL language using a syntax that reflects the resulting query. PyPika excels at all sorts of SQL queries but is especially useful for data analysis.
partiql-lang-kotlin - PartiQL libraries and tools in Kotlin.
rel8 - Hey! Hey! Can u rel8?
malloy - Malloy is an experimental language for describing data relationships and transformations.
edgedb - A graph-relational database with declarative schema, built-in migration system, and a next-generation query language
db-benchmark - reproducible benchmark of database-like ops
imdbench - IMDBench — Realistic ORM benchmarking
prosto - Prosto is a data processing toolkit radically changing how data is processed by heavily relying on functions and operations with functions - an alternative to map-reduce and join-groupby
logica - Logica is a logic programming language that compiles to SQL. It runs on Google BigQuery, PostgreSQL and SQLite.