postgres-operator
pg_hint_plan
Our great sponsors
postgres-operator | pg_hint_plan | |
---|---|---|
36 | 12 | |
3,961 | 644 | |
2.7% | 29.3% | |
8.6 | 7.2 | |
6 days ago | 3 days ago | |
Go | C | |
MIT License | GNU General Public License v3.0 or later |
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
-
Modern SQL Databases Are Changing Web Development: Part 1
I personally like the Zalando operator better, you can add databases and users by updating the CRD, feature parity between the two on HA is pretty good
https://github.com/zalando/postgres-operator
- 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)
-
How to Deploy a PostgreSQL cluster on Kubernetes
git clone https://github.com/zalando/postgres-operator.git cd postgres-operator
-
[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.
-
How to deploy a high availability (HA) Postgres cluster in Kubernetes?
Here's an example of using the PostgreSQL Operator to deploy a high availability PostgreSQL cluster in Kubernetes. In this example, I'll be using the PostgreSQL Operator from Zalando [https://github.com/zalando/postgres-operator] to deploy a PostgreSQL cluster with two nodes.
-
Implementing postgres on a kubernetes cluster for production. Any guides, articles, checklist, etc?
Here's the operator for a postgres cluster: https://github.com/zalando/postgres-operator
-
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.
pg_hint_plan
-
Pg_hint_plan: Force PostgreSQL to execute query plans how you want
Okay so it isn't entirely clear to me, can the pg_hint_plan extension (linked in the OP) do the simple thing where we specify, for each table, which index to use?
I can't find it here
https://github.com/ossc-db/pg_hint_plan/blob/master/docs/hin...
Because, the mssql WITH(INDEX()) is simple and intuitive. This hint table stuff seems complicated, and it's unclear to me if they can do the simple thing
-
Postgres is eating the database world
pg_hint_plan —— Give PostgreSQL ability to manually force some decisions in execution plans. https://github.com/ossc-db/pg_hint_plan
-
10,000x Speedup for Postgres Queries: How to Make a Smart Optimizer More Stupid
I really wish the PostgreSQL core team would acknowledge that their stance on that hurts more than helps. Even Oracle with decades of engineering behind it doesn't get execution plans correct 100% of the time and provides a way to tune query execution via hints.
However, TIL that https://github.com/ossc-db/pg_hint_plan exists so that will probably become a standard thing I deploy.
- Features I'd Like in PostgreSQL
-
Predictable plans with pg_hint_plan full hinting
With PostgreSQL, the extension to do it, pg_hint_plan is really good, but not widely used because not included in the core, not even in contrib. The consequence is that people install it only when needing it, without the time to learn hot to hint properly, may think that "my hint is not used" and give up.
-
Build a PostgreSQL Docker image with pg_hint_plan and pg_stat_statements
cat > Dockerfile <<'DOCKERFILE' # install pg_hint_plan from rpm FROM docker.io/postgres:14 ADD https://github.com/ossc-db/pg_hint_plan/releases/download/REL14_1_4_0/pg_hint_plan14-1.4-1.el8.x86_64.rpm . RUN apt-get update -y ; apt-get install -y alien wget ; alien ./pg_hint_plan*.rpm ; dpkg -i pg-hint-plan*.deb # copy the minimal files to a postgres image FROM docker.io/postgres:14 COPY --from=0 /usr/pgsql-14/share/extension/pg_hint_plan.control /usr/share/postgresql/14/extension COPY --from=0 /usr/pgsql-14/share/extension/pg_hint_plan--1.4.sql /usr/share/postgresql/14/extension COPY --from=0 /usr/pgsql-14/lib/pg_hint_plan.so /usr/pgsql-14/lib/pg_hint_plan.so /usr/lib/postgresql/14/lib ENV PGPASSWORD=postgres CMD ["postgres","-c","shared_preload_libraries=pg_hint_plan,pg_stat_statements"] DOCKERFILE docker build -t pachot/pg_hint_plan --platform=linux/amd64 . docker push pachot/pg_hint_plan
-
How Postgres Chooses Which Index to Use for a Query
there is a maintained index hint extension: https://github.com/ossc-db/pg_hint_plan - at least as far as 13 (and likely 14).
if we're going to talk about index functionality that would be good and effective for Postgres, an index across all partitioned tables (both normal and unique) would be very much welcomed.
the problem is finding someone to maintain it for life.
- Pg_hint_plan – Use planner hints on PostgreSQL
- A hairy PostgreSQL incident
- pg_hint_plan
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.
pg_ivm - IVM (Incremental View Maintenance) implementation as a PostgreSQL extension
postgres-operator - Production PostgreSQL for Kubernetes, from high availability Postgres clusters to full-scale database-as-a-service.
pg_plan_guarantee - Postgres Query Optimizer Extension that guarantees your desired plan will not change
cloudnative-pg - CloudNativePG is a comprehensive platform designed to seamlessly manage PostgreSQL databases within Kubernetes environments, covering the entire operational lifecycle from initial deployment to ongoing maintenance
OpenLogReplicator - Open Source Oracle database CDC
helm-charts - A curated set of Helm charts brought to you by codecentric
gql-sql-pgq-pointers
bank-vaults - A Vault swiss-army knife: A CLI tool to init, unseal and configure Vault (auth methods, secret engines).
peripheral-emulator-web-app - Svelte-based web app for emulating electronic peripheral devices
postgres-operator - Postgres operator creates and manages PostgreSQL clusters running in Kubernetes
peripheral-emulator-bridge - Pico C++ "Bridge" for microcontroller-web app communication