postgres-operator
pg_jsonschema
Our great sponsors
postgres-operator | pg_jsonschema | |
---|---|---|
36 | 15 | |
3,912 | 910 | |
2.8% | 3.2% | |
8.6 | 6.2 | |
10 days ago | 24 days ago | |
Go | Rust | |
MIT License | 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.
postgres-operator
-
Run PostgreSQL. The Kubernetes Way
yes, precisely. It's UI part that's broken, which cannot list snapshots. Issue is here, no fix since 2020, sadly: https://github.com/zalando/postgres-operator/issues/937
- Deploying Postgres on Kubernetes in production
-
Why PostgreSQL High Availability Matters and How to Achieve It
one of the solutions which made it pretty simple for us to run postgresql in a ha environment (mostly in k8s, but works standalone as well) is zalandos patroni: https://github.com/zalando/patroni it's really solid and worked for us for a few years already.
or for k8s their operator: https://github.com/zalando/postgres-operator (docker image: https://github.com/zalando/spilo) we've also tried other operators which were easier to get started, but they failed miserably (crunchyrolls operator is basically based on the zalando one)
-
[Kubernetes] Comment déployez-vous un cluster Postgres sur Kubernetes en 2022?
Zalando / Postgres-Operator
-
What are you using to run Postgres?
Somewhere between here and here i found out about that.
-
Databases on Kubernetes is fundamentally same as a database on a VM
And that repo you linked to has 1846 issues, 161 open. Which doesn't seem extraordinary based on my limited exposure to k8s.
Another example: https://github.com/zalando/postgres-operator/issues with 445 open issues. Why?
Maybe I'm wrong and this is all a good sign of progress, but my impression is that the entire k8s ecosystem is held together with reused duct tape.
-
Features I'd Like in PostgreSQL
In Kubernetes a service call end an operator watches for CRD specifying databases to be created and manages upgrade and backs for those databases.
-
Any self hostable postgres clustering, replication and fail over system?
You could fire-up `k3s` or `microk8s` or something of that ilk and run https://github.com/zalando/postgres-operator
-
Just Use Postgres for Everything
My favorite route right now is running a postgres operator on Kubernetes & letting it do all the work for me.
Zalando's operator use Patroni under the hood, to create a cluster over streaming replication. It also has Spilo, which orchestrates pg_basebackup or WAL-E for point-in-time backup. https://github.com/zalando/postgres-operator#postgresql-feat...
CrunchyData operator seems to have built their own streaming replication system coordinated by Raft. https://access.crunchydata.com/documentation/postgres-operat...
-
Best way for high-available database at home?
I don't have much experience with HA databases, so I can't really decide which way I should go. I found a postgres-operator to be run on a kubernetes cluster: https://github.com/zalando/postgres-operator. And a guide to setup postgres HA with patroni: https://arctype.com/blog/postgres-patroni/
pg_jsonschema
-
Introducing pgzx: create PostgreSQL extensions using Zig
And lots of interesting extensions use it, like
https://github.com/tembo-io/pgmq
-
Beyond SQL: A relational database for modern applications
> In other words, there is still a (lossy) translation layer, it just happens to be in the RDBMS rather than in-app.
It's not lossy if your application can guarantee a json <-> datatype roundtrip and the json is validated with jsonschema (generated by your application)
In Rust it's something like this
https://serde.rs/ to do the data type <-> json mapping
https://docs.rs/schemars/latest/schemars/ to generate jsonschema from your types
https://github.com/supabase/pg_jsonschema to validate jsonschema in your database (postgres). with this setup it's interesting (but not required) to also use https://docs.rs/jsonschema/latest/jsonschema/ to validate the schema in your application
-
FerretDB, a truly open-source MongoDB alternative
Pretty exciting!
What about optionally validating some columns with jsonschema? Perhaps using https://github.com/supabase/pg_jsonschema - is using other postgres extensions supported in FerretDB? (if not, maybe it's feasible to incorporate the code of pg_jsonschema in FerretDB?)
- Type Constraints in 65 lines of SQL
-
Ask HN: Do you use JSON Schema? Help us shape its future stability guarantees
I'm not currently using it, but I'm strongly considering validating json in postgres with https://github.com/supabase/pg_jsonschema - which uses the https://docs.rs/jsonschema/latest/jsonschema/ Rust crate
So I'm not sure if my feedback is valid but, I sure hope that the jsonschema crate follows the spec! Otherwise I'll never use jsonschema but instead something-not-exactly-jsonschema. In other words.. you better not break anything.
-
Features I'd Like in PostgreSQL
Sounds dumb, but I want JSON field schema validation. I added a JSON column for flexible data, and although I'm happy with its flexibility, I kinda hope I can validate the JSON data structure. Recently I just found an extension [1] and will try soon.
-
Dynamic JSON schema validation, how can I do that in Postgres?
https://github.com/supabase/pg_jsonschema is new and looks good
-
Supabase Beta July 2022
Born as an excuse to play with pgx, pg_jsonschema is a solution we're exploring to allow enforcing more structure on json and jsonb typed postgres columns. Only 10 lines of code 😎
- GitHub - supabase/pg_jsonschema: PostgreSQL extension providing JSON Schema validation
-
Show HN: Pg_jsonschema – A Postgres extension for JSON validation
author here:
pg_jsonschema is a solution we're exploring to allow enforcing more structure on json and jsonb typed postgres columns.
We initially wrote the extension as an excuse to play with pgx, the rust framework for writing postgres extensions. That let us lean on existing rust libs for validation (jsonschema), so the extension's implementation is only 10 lines of code :)
https://github.com/supabase/pg_jsonschema/blob/fb7ab09bf6050...
happy to answer any questions!
What are some alternatives?
kubegres - Kubegres is a Kubernetes operator allowing to deploy one or many clusters of PostgreSql instances and manage databases replication, failover and backup.
postgres-operator - Production PostgreSQL for Kubernetes, from high availability Postgres clusters to full-scale database-as-a-service.
cloudnative-pg - CloudNativePG is a Kubernetes operator that covers the full lifecycle of a PostgreSQL database cluster with a primary/standby architecture, using native streaming replication
helm-charts - A curated set of Helm charts brought to you by codecentric
bank-vaults - A Vault swiss-army knife: A CLI tool to init, unseal and configure Vault (auth methods, secret engines).
postgres-operator - Postgres operator creates and manages PostgreSQL clusters running in Kubernetes
longhorn - Cloud-Native distributed storage built on and for Kubernetes
postgres - Unmodified Postgres with some useful plugins
percona-postgresql-operator - Percona Operator for PostgreSQL
chaos-mesh - A Chaos Engineering Platform for Kubernetes.
windmill - Open-source developer platform to turn scripts into workflows and UIs. Fastest workflow engine (5x vs Airflow). Open-source alternative to Airplane and Retool.
operator-sdk - SDK for building Kubernetes applications. Provides high level APIs, useful abstractions, and project scaffolding.