Postgres Container Apps (beta)(blog.crunchydata.com)
blog.crunchydata.com
Postgres Container Apps (beta)
https://blog.crunchydata.com/blog/announcing-postgres-container-apps-easy-deploy-postgres-apps
25 comments
Sounds like the Emacs of database systems.
To help others who also don’t know all of the terms:
1. FDW: foreign data wrappers
https://wiki.postgresql.org/wiki/Foreign_data_wrappers
2. PL/Python: language-specific procedural language
https://www.postgresql.org/docs/10/plpython.html
Essentially, this (as I understand it) is highlighting the ways that Postgres can expose data from outside of its default table structure context via these types of functions.
https://wiki.postgresql.org/wiki/Foreign_data_wrappers
2. PL/Python: language-specific procedural language
https://www.postgresql.org/docs/10/plpython.html
Essentially, this (as I understand it) is highlighting the ways that Postgres can expose data from outside of its default table structure context via these types of functions.
I love Postgresql, but I don't want it to end up like oracle, where it is the center of thr focus.
That being said, I like the idea of Postgres as a platform for more than data tables storage and database engine. It proved quite powerful and useful.
That being said, I like the idea of Postgres as a platform for more than data tables storage and database engine. It proved quite powerful and useful.
The killer reason for "Postgres as a platform" is that Postgres has a robust* security model (there are edge cases, but for a subset of statements, it works well)
That is true, and most DBAs are fully aware that the security model is only as good as the extensions they load and docker integration is very likely low on the list of necessities.
Is it April 1st yet? Or simply technology creating a problem, because it really couldn't find the problem for itself?
My biggest regret of this launch is actually not launching it on April 1. The best April fools jokes turn out to be real things.
Aside - this is a great example that shows how bad Google search has become. Seeing only the comments here, I tried to search for "pgpodman" not realizing that it's from this very article. Google only returns stuff about podman. Searching for "postgres pgpodman" only gets articles about pgAdmin.
DuckDuckGo gets this article as the first hit - top 4-5 links are all relevant.
DuckDuckGo gets this article as the first hit - top 4-5 links are all relevant.
I feel like the whole programmer community is literally running out of things to try. And this is the result.
And somehow I find it really intriguing.
Next PaaS prediction: hosted Postgres with PL/v8, pgpodman, pg_graphql and PostgREST. Run everything inside your DB!
And somehow I find it really intriguing.
Next PaaS prediction: hosted Postgres with PL/v8, pgpodman, pg_graphql and PostgREST. Run everything inside your DB!
Evidently it is smooshing:
https://redmonk.com/jgovernor/2022/03/31/on-postgres-contain...
https://redmonk.com/jgovernor/2022/03/31/on-postgres-contain...
Forth-like VM inside PL/pgSQL.
https://notes.eatonphil.com/exploring-plpgsql-forth-like.htm...
https://notes.eatonphil.com/exploring-plpgsql-forth-like.htm...
that's basically supabase.io
I think the use cases in this announcement are well-laid out. There's not _a ton_ that I think fits well for these container apps, but pganalyze or New Relic monitoring etc are great examples. Some of this stuff being just _a little bit easier_ to maintain and manage is a big help to smaller teams.
Thanks! There is definitely a full range, from being a "science project" running things like varnish or Redis from inside PG. The turnkey apps are maybe really easy and useful in certain cases. But you nailed it with some that are really just simple but practical like pganalyze. For us it's a lot of fun because you have practical, but then can do the absolute crazy things because sometimes software engineering should be fun.
vis: https://couchapp.readthedocs.io/en/latest/intro/what-is-couc...
CouchDB supports "select index.html && index.js from my_couchdb.some_app" so you can have a UI bundled with your DB Blob. Additionally, since the UI is "just some documents", technically they can update + sync to other distributed DB's.
It's a very interesting concept to make apps more cohesive by including (not just HTML+JS), but also a full docker container that could talk to the datastore w/o any intermediaries.
We're finally coming full circle with PHP5's bundling of SQLite, and are instead having Postgres effectively bundling PHP. :-P
CouchDB supports "select index.html && index.js from my_couchdb.some_app" so you can have a UI bundled with your DB Blob. Additionally, since the UI is "just some documents", technically they can update + sync to other distributed DB's.
It's a very interesting concept to make apps more cohesive by including (not just HTML+JS), but also a full docker container that could talk to the datastore w/o any intermediaries.
We're finally coming full circle with PHP5's bundling of SQLite, and are instead having Postgres effectively bundling PHP. :-P
Does this run the containers on the DB host itself? How’s that work with replication?
And what’s an actual end user application / use case for this? The post lists some examples but I don’t understand what it means to run them in a container on the DB.
And what’s an actual end user application / use case for this? The post lists some examples but I don’t understand what it means to run them in a container on the DB.
> Start a container with SELECT run_container('<container command>');
> Stop a container SELECT stop_container('<container_id>');
This physically hurts me.
Heck being able to run a Docker container alongside your DB on the same server is probably useful, but why make it so gimmicky?
> Stop a container SELECT stop_container('<container_id>');
This physically hurts me.
Heck being able to run a Docker container alongside your DB on the same server is probably useful, but why make it so gimmicky?
Aside— I can’t get your pricing page to work. Every aws config just says contact sales. Maybe it’s just a mobile thing.
I appreciate the heads up. You are trying this page (https://www.crunchydata.com/products/crunchy-bridge/pricing/) and it isnt working for you?
Yes. I just dug deeper now and saw that you can get to the prices if you scroll to the right on mobile. It wasn’t obvious to me that there was more content to the right
Can postgres run DOOM?
Is there is a Github repo for this?
* Use FDW connections to pull in data from all kinds of sources! Multiple databases, file formats, HTTP buckets, you name it!
* Custom behaviours in multiple languages! PL/Python, PL/Perl, PL/R!
* Read and write to web services! (PL/Python, pgsql-http)
* And now string together arbitrary containers! (pgpodman)
The way the extension system and the type system play together, it really is a very generic place to build weird integrated systems.