Live data from Hacker News

Omnigres: Postgres as a Platform

github.com

71–77 of 77 posts

Re: Omnigres: Postgres as a Platform

#71
post #56

Having been an Oracle Apex developer I can't help but compare this to Apex. Does Omnigres have a UI editor?

It does not have any UI yet. Something we haven't thought much about yet. Technically, feasible, just need to have a good story to drive a good experience there.

Re: Omnigres: Postgres as a Platform

#72
post #4

Cool project! About a decade ago, I had a job that involved entering data into an Oracle-based equivalent of this. I wish I could remember what it was, called but perhaps it is better for such a monster to remain nothing more than a myth.

CouchDB also tries to do something similar (natively hosting webapps close to a DB good at replication between replicas). https://guide.couchdb.org/draft/standalone.html

That's very interesting, thanks for the link.

Re: Omnigres: Postgres as a Platform

#73
post #42

This is an interesting project, but I'd be unlikely to use it, for a couple of reasons: - In my experience the performance of the stateful DB server has been the biggest bottleneck when scaling - it's much easier to scale the stateless application servers which sit between end user requests and your DB in a traditional architecture. So usually I'm wanting to move as much work as possible away from the DB in order to…

These are good points, but I'd like to nuance some of them. Disclaimer: I work on an SQL web application builder [1] that shares a lot of the philosophy behind Omnigres. - about scaling: you have to get very far before saturating a single postgres server. A lot of applications certainly do get to that point, but most don't. And once you get there, scaling postgres is definitely more work than scaling a stateless serv…

Avoiding scaling the stateful part is also a path to hammer-nail syndrome - you start using less and less of the database system because you keep pulling things out since that's the only place you've established the ability to add CPU capacity and with that come a host of new and old issues.

Re: Omnigres: Postgres as a Platform

#74
post #64

Couple of questions (with notes): Yes, I'd really like to write code next to the db with more suitable (for task) languages like Python. But at the moment SQL alone is supported..? Could one connect with Jupyter notebook somehow and have a REPL like experience with Omnigres instance? Also, this [1] seems intriguing. How do containers connect to the db? What would the performance differences to the "internal" approach…

You can use any language Postgres supports or will support to write your logic. We are adding first-class Python support right now. It's already possible to extrsct stored functions from decorated functions and their type hunts and we're working on providing standard Python APIs like DBAPI, WSGI support, etc. We have a branch on which we ran Flask applications inside Postgres. As it matures, it will be merged and doc…

Thank you. I’ll be sure to check this one out when the Python supports lands.

Perhaps not same level as containers, but WASM runtime could be a powerful addition here. Or a container running said WASM code. I’m thinking more about untrusted client code for ad hoc data analysis and such.

One additional question: is Postgres foreign data wrappers going to be supported?

Re: Omnigres: Postgres as a Platform

#75
post #35
post #34

Earlier quoted context omitted.

The language probably won't be perceived as "sexy" enough compared to, i.e., full-stack JavaScript. Most people don't really like SQL and aren't that good at it. Hence the continued popularity of ORMs that support the often-seen pattern of bulk-loading everything into the application server for processing instead of using a simple UPDATE statement.

We're actually first-classing a number of languages and ecosystem support precisely so that people can use their languages of choice and not just SQL or Pl/pgSQL.

Sievert could use help getting quickjs working away from PLv8

Re: Omnigres: Postgres as a Platform

#76
post #35

Earlier quoted context omitted.

We're actually first-classing a number of languages and ecosystem support precisely so that people can use their languages of choice and not just SQL or Pl/pgSQL.

Sievert could use help getting quickjs working away from PLv8

We're experimenting with JSC.

Re: Omnigres: Postgres as a Platform

#77
post #24

Earlier quoted context omitted.

It's not currently spelled out in the readme, but our approach does lend for straightforward shipping of complete systems (data + code) to the edge because it's effectively just a replication of the database. We're working on further primitives that facilitate such an operational model. We believe that a practical edge [backend] requires the presence of data next to the code, which is precisely what Omnigres promotes…

Does this mean omnigres could be used offline on mobile devices? Similar to an sqlite instance?

We are primarily talking about the backend side of this story at this time.

We'll see what the future will bring, as the real edge of computing is in user's hands.

There's a keen interest to get there for Omnigres applications, but the shape of that is still somewhat vague.

Post reply on HN