Tags: PostgreSQL
Happy 30th Birthday, PostgreSQL
July 08, 2026 in PostgreSQL

On July 8, 1996, the PostgreSQL community picked up the flame from Postgres95. Thirty years later, it has grown from a Berkeley research project into a default foundation of the global database ecosystem.
On July 8, 1996, the PostgreSQL community picked up the flame from Postgres95. Thirty years later, it has grown from a Berkeley research project into a default foundation of the global database ecosystem.
Extensions for Everyone
May 20, 2026 in PostgreSQL

A field report on the PostgreSQL extension ecosystem: 1,617 discovered projects, 511 deliverable extensions, and the shared delivery layer needed to make extensibility work for users, authors, vendors, and PostgreSQL hackers.
A field report on the PostgreSQL extension ecosystem: 1,617 discovered projects, 511 deliverable extensions, and the shared delivery layer needed to make extensibility work for users, authors, vendors, and PostgreSQL hackers.
504 Extensions: Expand the PostgreSQL Landscape
April 13, 2026 in PostgreSQL

One GitHub issue turned into an extension sprint. 32 new additions, 504 in total, say a lot about where PostgreSQL is headed.
One GitHub issue turned into an extension sprint. 32 new additions, 504 in total, say a lot about where PostgreSQL is headed.
Why PostgreSQL Won in the AI Era
April 11, 2026 in AI

Boring technology won the wildest era. A look at extensibility, agent choice, database cloning, and the future of the DBA.
Boring technology won the wildest era. A look at extensibility, agent choice, database cloning, and the future of the DBA.
The Agent Moat: Runtime
February 06, 2026 in Database

A mediocre local who knows the terrain beats a genius parachuted into unknown territory. Intelligence without context is idle. An agent without a runtime is vapor.
A mediocre local who knows the terrain beats a genius parachuted into unknown territory. Intelligence without context is idle. An agent without a runtime is vapor.
The Great Software Meltdown: When Translation Layers Get Squashed
January 31, 2026 in Database
SaaS and workflow software are dead. From APPs & GUIs to Agents, Databases, and CLI.
Agent OS: We're Building DOS Again
January 26, 2026 in Database

LLM = CPU. Context = RAM. Database = Disk. Agent = App. The mapping is surprisingly clean. And if OS history is any guide, we may know what comes next — and what's still missing.
LLM = CPU. Context = RAM. Database = Disk. Agent = App. The mapping is surprisingly clean. And if OS history is any guide, we may know what comes next — and what's still missing.
Git for Data: Instant PostgreSQL Database Cloning
December 27, 2025 in PostgreSQL

How to instantly clone a massive PostgreSQL database without consuming extra storage? PostgreSQL 18 and XFS can spark some serious magic.
How to instantly clone a massive PostgreSQL database without consuming extra storage? PostgreSQL 18 and XFS can spark some serious magic.
Data 2025: Year in Review with Mike Stonebraker
December 24, 2025 in Database

A conversation between Mike Stonebraker (Turing Award Winner, Creator of PostgreSQL), Andy Pavlo (Carnegie Mellon), and the DBOS team.
A conversation between Mike Stonebraker (Turing Award Winner, Creator of PostgreSQL), Andy Pavlo (Carnegie Mellon), and the DBOS team.
What Database Does AI Agent Need?
December 21, 2025 in Database

The bottleneck for AI agents isn't in database engines but in upper-layer integration. Muscle memory, associative memory, and trial-and-error courage will be key.
The bottleneck for AI agents isn't in database engines but in upper-layer integration. Muscle memory, associative memory, and trial-and-error courage will be key.
Why PostgreSQL Will Dominate the AI Era
December 01, 2025 in PostgreSQL

Context window economics, the polyglot persistence problem, and the triumph of zero-glue architecture make PostgreSQL the database king of the AI era.
Context window economics, the polyglot persistence problem, and the triumph of zero-glue architecture make PostgreSQL the database king of the AI era.
Forging a China-Rooted, Global PostgreSQL Distro
November 27, 2025 in PostgreSQL

PostgreSQL already won. The real battle is the distro layer. Will Chinese developers watch from the sideline or craft a PG “Ubuntu” for the world?
PostgreSQL already won. The real battle is the distro layer. Will Chinese developers watch from the sideline or craft a PG “Ubuntu” for the world?
Don't Run Docker Postgres for Production!
November 20, 2025 in Database

Tons of users running the official docker postgres image got burned during recent minor version upgrades. A friendly reminder: think twice before containerizing production databases.
Tons of users running the official docker postgres image got burned during recent minor version upgrades. A friendly reminder: think twice before containerizing production databases.
PG Extension Cloud: Unlocking PostgreSQL’s Entire Ecosystem
November 12, 2025 in PostgreSQL

Free, open, no VPN. Install PostgreSQL and 555 extensions on 14 Linux distros × 6 PG versions via native RPM/DEB—and a tiny CLI.
Free, open, no VPN. Install PostgreSQL and 555 extensions on 14 Linux distros × 6 PG versions via native RPM/DEB—and a tiny CLI.
The PostgreSQL 'Supply Cut' and Trust Issues in Software Supply Chain
August 15, 2025 in PostgreSQL

PostgreSQL official repos cut off global mirror sync channels, open-source binaries supply disrupted, revealing the true colors of various database and cloud vendors.
PostgreSQL official repos cut off global mirror sync channels, open-source binaries supply disrupted, revealing the true colors of various database and cloud vendors.
PostgreSQL Dominates Database World, but Who Will Devour PG?
August 05, 2025 in PostgreSQL

The same forces that once led MongoDB and MySQL toward closure are now at work in the PostgreSQL ecosystem. The PG world needs a distribution that represents "software freedom" values.
The same forces that once led MongoDB and MySQL toward closure are now at work in the PostgreSQL ecosystem. The PG world needs a distribution that represents "software freedom" values.
PostgreSQL Has Dominated the Database World
July 31, 2025 in PostgreSQL

The 2025 SO global developer survey results are fresh out, and PostgreSQL has become the most popular, most loved, and most wanted database for the third consecutive year. Nothing can stop PostgreSQL from consolidating the entire database world!
The 2025 SO global developer survey results are fresh out, and PostgreSQL has become the most popular, most loved, and most wanted database for the third consecutive year. Nothing can stop PostgreSQL from consolidating the entire database world!
Dongchedi Just Exposed “Smart Driving.” Where’s Our Dongku-Di?
July 26, 2025 in Database

Imagine a “closed-course” shootout for domestic databases and clouds, the way Dongchedi just humiliated 30+ autonomous cars. This industry needs its own stress test.
Imagine a “closed-course” shootout for domestic databases and clouds, the way Dongchedi just humiliated 30+ autonomous cars. This industry needs its own stress test.
Google AI Toolbox: Production-Ready Database MCP is Here?
July 09, 2025 in Database
Google recently launched a database MCP toolbox, perhaps the first production-ready solution.
PGDG Cuts Off Mirror Sync Channel
July 07, 2025 in PostgreSQL

PGDG cuts off FTP rsync sync channels, global mirror sites universally disconnected - this time they really strangled global users' supply chain.
PGDG cuts off FTP rsync sync channels, global mirror sites universally disconnected - this time they really strangled global users' supply chain.
Stop Arguing, The AI Era Database Has Been Settled
June 03, 2025 in Database

The database for the AI era has been settled. Capital markets are making intensive moves on PostgreSQL targets, with PG having become the default database for the AI era.
The database for the AI era has been settled. Capital markets are making intensive moves on PostgreSQL targets, with PG having become the default database for the AI era.
Open Data Standards: Postgres, OTel, and Iceberg
May 27, 2025 in Database

Three emerging standards in the data world: Postgres, OpenTelemetry, and Iceberg. Postgres is already the de facto standard.
Three emerging standards in the data world: Postgres, OpenTelemetry, and Iceberg. Postgres is already the de facto standard.
Scaling Postgres to the Next Level at OpenAI
May 19, 2025 in Database
At PGConf.Dev 2025, Bohan Zhang from OpenAI shared a session titled Scaling Postgres to the next level at OpenAI, giving us a peek into the database usage of a top-tier unicorn. “At OpenAl, we’ve proven that PostgreSQL can scale to support massive …
At PGConf.Dev 2025, Bohan Zhang from OpenAI shared a session titled Scaling Postgres to the next level at OpenAI, giving us a peek into the database usage of a top-tier unicorn. “At OpenAl, we’ve proven that PostgreSQL can scale to support massive …
Scaling Postgres to the Next Level at OpenAI
May 19, 2025 in Featured

At PGConf.Dev 2025, Bohan Zhang from OpenAI shared how they scale PostgreSQL to support millions of queries per second using a single-primary, multi-replica architecture without sharding.
At PGConf.Dev 2025, Bohan Zhang from OpenAI shared how they scale PostgreSQL to support millions of queries per second using a single-primary, multi-replica architecture without sharding.
In the AI Era, Software Starts at the Database
April 27, 2025 in Database

Future software = Agent + Database. No middle tiers, just agents issuing CRUD. Database skills age well, and PostgreSQL is poised to be the agent-era default.
Future software = Agent + Database. No middle tiers, just agents issuing CRUD. Database skills age well, and PostgreSQL is poised to be the agent-era default.
MySQL vs. PostgreSQL @ 2025
April 17, 2025 in Database

A 2025 reality check on where PostgreSQL stands relative to MySQL across features, performance, quality, and ecosystem.
A 2025 reality check on where PostgreSQL stands relative to MySQL across features, performance, quality, and ecosystem.
Postgres Extension Day - See You There!
April 09, 2025 in PostgreSQL

The annual PostgreSQL developer conference will be held in Montreal in May. Like the first PG Con.Dev, there's also an additional dedicated event - Postgres Extensions Day
The annual PostgreSQL developer conference will be held in Montreal in May. Like the first PG Con.Dev, there's also an additional dedicated event - Postgres Extensions Day
OrioleDB is Coming! 4x Performance, Eliminates Pain Points, Storage-Compute Separation
April 06, 2025 in PostgreSQL

A PG kernel fork acquired by Supabase, claiming to solve PG's XID wraparound problem, eliminate table bloat issues, improve performance by 4x, and support cloud-native storage. Now part of the Pigsty family.
A PG kernel fork acquired by Supabase, claiming to solve PG's XID wraparound problem, eliminate table bloat issues, improve performance by 4x, and support cloud-native storage. Now part of the Pigsty family.
OpenHalo: MySQL Wire-Compatible PostgreSQL is Here!
April 03, 2025 in PostgreSQL

What? PostgreSQL can now be accessed using MySQL clients? That's right, openHalo, which was open-sourced on April Fool's Day, provides exactly this capability and has now joined the Pigsty kernel family.
What? PostgreSQL can now be accessed using MySQL clients? That's right, openHalo, which was open-sourced on April Fool's Day, provides exactly this capability and has now joined the Pigsty kernel family.
PGFS: Using Database as a Filesystem
March 21, 2025 in PostgreSQL
Leverage JuiceFS to turn PostgreSQL into a filesystem with PITR capabilities!
Database Planet Collision: When PG Falls for DuckDB
March 12, 2025 in Database

If you ask me, we’re on the brink of a cosmic collision in database-land, and Postgres + DuckDB is the meteor we should all be watching.
If you ask me, we’re on the brink of a cosmic collision in database-land, and Postgres + DuckDB is the meteor we should all be watching.
Alicloud’s rds_duckdb: Tribute or Rip-Off?
March 06, 2025 in Cloud

Does bolting DuckDB onto RDS suddenly make open-source Postgres ‘trash’? Business and open source should be symbiotic. If a vendor only extracts without giving back, the community will spit it out."
Does bolting DuckDB onto RDS suddenly make open-source Postgres ‘trash’? Business and open source should be symbiotic. If a vendor only extracts without giving back, the community will spit it out."
Comparing Oracle and PostgreSQL Transaction Systems
February 27, 2025 in Database

The PG community has started punching up: Cybertec’s Laurenz Albe breaks down how Oracle’s transaction system stacks against PostgreSQL.
The PG community has started punching up: Cybertec’s Laurenz Albe breaks down how Oracle’s transaction system stacks against PostgreSQL.
PostgreSQL Ecosystem Frontier Developments
January 24, 2025 in PostgreSQL
Sharing some interesting recent developments in the PG ecosystem.
Database as Business Architecture
January 22, 2025 in Database

Databases are the core of business architecture, but what happens if we go further and let databases become the business architecture itself?
Databases are the core of business architecture, but what happens if we go further and let databases become the business architecture itself?
Pig, The Postgres Extension Wizard
December 23, 2024 in PostgreSQL
Why would we need yet another package manager for PostgreSQL & extensions?
Solving Poker 24 with a Single SQL Query
December 03, 2024 in Database
An interesting but tricky puzzle: solving the 24 game with SQL. The PostgreSQL solution.
7 Databases in 7 Weeks (2025)
December 03, 2024 in Database

Is PostgreSQL the king of boring databases? Here are seven databases worth studying in 2025: PostgreSQL, SQLite, DuckDB, ClickHouse, FoundationDB, TigerBeetle, and CockroachDB—each deserving a week of deep exploration.
Is PostgreSQL the king of boring databases? Here are seven databases worth studying in 2025: PostgreSQL, SQLite, DuckDB, ClickHouse, FoundationDB, TigerBeetle, and CockroachDB—each deserving a week of deep exploration.
Self-Hosting Supabase on PostgreSQL
November 25, 2024 in Featured

Supabase is great, owning your own Supabase is even better! A comprehensive tutorial for self-hosting production-grade Supabase on local/cloud VMs with Pigsty.
Supabase is great, owning your own Supabase is even better! A comprehensive tutorial for self-hosting production-grade Supabase on local/cloud VMs with Pigsty.
Don't Upgrade! Released and Immediately Pulled - Even PostgreSQL Isn't Immune to Epic Fails
November 16, 2024 in PostgreSQL

Never deploy on Friday, or you'll be working all weekend! PostgreSQL minor releases were pulled on the day of release, requiring emergency rollback.
Never deploy on Friday, or you'll be working all weekend! PostgreSQL minor releases were pulled on the day of release, requiring emergency rollback.
PostgreSQL 12 End-of-Life, PG 17 Takes the Throne
November 14, 2024 in PostgreSQL

PG17 achieved extension ecosystem adaptation in half the time of PG16, with 300 available extensions ready for production use. PG 12 officially exits support lifecycle.
PG17 achieved extension ecosystem adaptation in half the time of PG16, with 300 available extensions ready for production use. PG 12 officially exits support lifecycle.
Can MySQL Still Catch Up with PostgreSQL?
November 05, 2024 in Database

Percona founder Peter Zaitsev discusses whether MySQL can still keep up with PostgreSQL. His views largely represent the MySQL communitys perspective.
Percona founder Peter Zaitsev discusses whether MySQL can still keep up with PostgreSQL. His views largely represent the MySQL communitys perspective.
The ideal way to deliver PostgreSQL Extensions
November 02, 2024 in PostgreSQL

PostgreSQL Is Eating the Database World through the power of extensibility. With 555 extensions powering PG, we may not say it's invincible, but it’s definitely getting much closer.
PostgreSQL Is Eating the Database World through the power of extensibility. With 555 extensions powering PG, we may not say it's invincible, but it’s definitely getting much closer.
PostgreSQL Convention 2024
October 09, 2024 in PostgreSQL
No rules, no standards. Some developer conventions for PostgreSQL 16.
PostgreSQL 17 Released: No More Pretending!
September 26, 2024 in PostgreSQL

PostgreSQL is now the world's most advanced open-source database and has become the preferred open-source database for organizations of all sizes, matching or exceeding top commercial databases.
PostgreSQL is now the world's most advanced open-source database and has become the preferred open-source database for organizations of all sizes, matching or exceeding top commercial databases.
MongoDB Has No Future: Good Marketing Can't Save a Rotten Mango
September 04, 2024 in Database

MongoDB has a terrible track record on integrity, lackluster products and technology, gets beaten by PG in correctness, performance, and functionality, with collapsing developer reputation, declining popularity, stock price halving, and expanding losses. Provocative marketing against PG can't save it with "good marketing."
MongoDB has a terrible track record on integrity, lackluster products and technology, gets beaten by PG in correctness, performance, and functionality, with collapsing developer reputation, declining popularity, stock price halving, and expanding losses. Provocative marketing against PG can't save it with "good marketing."
Can PostgreSQL Replace Microsoft SQL Server?
September 02, 2024 in PostgreSQL

PostgreSQL can directly replace Oracle, SQL Server, and MongoDB at the kernel level. Of course, the most thorough replacement is SQL Server - AWS's Babelfish provides wire-protocol-level compatibility.
PostgreSQL can directly replace Oracle, SQL Server, and MongoDB at the kernel level. Of course, the most thorough replacement is SQL Server - AWS's Babelfish provides wire-protocol-level compatibility.
Whoever Integrates DuckDB Best Wins the OLAP World
August 13, 2024 in PostgreSQL

Just like the vector database extension race two years ago, the current PostgreSQL ecosystem extension competition has begun revolving around DuckDB. MotherDuck's official entry into the PostgreSQL extension space undoubtedly signals that competition has entered white-hot territory.
Just like the vector database extension race two years ago, the current PostgreSQL ecosystem extension competition has begun revolving around DuckDB. MotherDuck's official entry into the PostgreSQL extension space undoubtedly signals that competition has entered white-hot territory.
StackOverflow 2024 Survey: PostgreSQL Has Gone Completely Berserk
July 25, 2024 in PostgreSQL

The 2024 StackOverflow Global Developer Survey results are fresh out, and PostgreSQL has become the most popular, most loved, and most wanted database globally for the second consecutive year. Nothing can stop PostgreSQL from devouring the entire database world anymore!
The 2024 StackOverflow Global Developer Survey results are fresh out, and PostgreSQL has become the most popular, most loved, and most wanted database globally for the second consecutive year. Nothing can stop PostgreSQL from devouring the entire database world anymore!
MySQL is dead, Long live PostgreSQL!
July 08, 2024 in Database

This July, MySQL 9.0 was finally released—a full eight years after its last major version, 8.0 (@2016-09).
This July, MySQL 9.0 was finally released—a full eight years after its last major version, 8.0 (@2016-09).
Self-Hosting Dify with PG, PGVector, and Pigsty
June 22, 2024 in PostgreSQL

Dify is an open-source LLM app development platform. This article explains how to self-host Dify using Pigsty.
Dify is an open-source LLM app development platform. This article explains how to self-host Dify using Pigsty.
PGCon.Dev 2024, The conf that shutdown PG for a week
June 17, 2024 in PostgreSQL
Experience & Feeling on the PGCon.Dev 2024
PostgreSQL 17 Beta1 Released!
May 24, 2024 in PostgreSQL

The PostgreSQL Global Development Group announces PostgreSQL 17's first Beta version is now available. This time, PostgreSQL has truly burst the toothpaste tube!
The PostgreSQL Global Development Group announces PostgreSQL 17's first Beta version is now available. This time, PostgreSQL has truly burst the toothpaste tube!
Why PostgreSQL is the Future Standard?
May 16, 2024 in PostgreSQL

One of the biggest trends in software development today is PostgreSQL becoming the de facto database standard. This article explains why.
One of the biggest trends in software development today is PostgreSQL becoming the de facto database standard. This article explains why.
Will PostgreSQL Change Its License?
March 20, 2024 in PostgreSQL

PostgreSQL will not change its license. This article is a response from PostgreSQL core team members on this question.
PostgreSQL will not change its license. This article is a response from PostgreSQL core team members on this question.
Postgres is eating the database world
March 04, 2024 in PostgreSQL

PostgreSQL isn’t just a simple relational database; it’s a data management framework with the potential to engulf the entire database realm. The trend of “Using Postgres for Everything” is no longer limited to a few elite teams but is becoming a …
PostgreSQL isn’t just a simple relational database; it’s a data management framework with the potential to engulf the entire database realm. The trend of “Using Postgres for Everything” is no longer limited to a few elite teams but is becoming a …
PostgreSQL is Eating the Database World
March 04, 2024 in Featured

PostgreSQL is not just a simple relational database, but an abstract framework for data management with the power to devour the entire database world. "Just use Postgres for everything" has become a mainstream best practice.
PostgreSQL is not just a simple relational database, but an abstract framework for data management with the power to devour the entire database world. "Just use Postgres for everything" has become a mainstream best practice.
Technical Minimalism: Just Use PostgreSQL for Everything
February 19, 2024 in PostgreSQL

Whether **production databases** should be containerized remains a controversial topic. From a DBA's perspective, I believe that **currently**, putting production databases in Docker is still a bad idea.
Whether **production databases** should be containerized remains a controversial topic. From a DBA's perspective, I believe that **currently**, putting production databases in Docker is still a bad idea.
New PostgreSQL Ecosystem Player: ParadeDB
February 18, 2024 in PostgreSQL

ParadeDB aims to be an Elasticsearch alternative: "Modern Elasticsearch Alternative built on Postgres" — PostgreSQL for search and analytics.
ParadeDB aims to be an Elasticsearch alternative: "Modern Elasticsearch Alternative built on Postgres" — PostgreSQL for search and analytics.
PostgreSQL's Impressive Scalability
January 13, 2024 in PostgreSQL

This article describes how Cloudflare scaled to support 55 million requests per second using 15 PostgreSQL clusters, and PostgreSQL's scalability performance.
This article describes how Cloudflare scaled to support 55 million requests per second using 15 PostgreSQL clusters, and PostgreSQL's scalability performance.
PostgreSQL Wins 2024 Database of the Year Award! (Fifth Time)
January 05, 2024 in PostgreSQL

DB-Engines officially announced today that PostgreSQL has once again been crowned "Database of the Year." This is the fifth time PG has received this honor in the past seven years. If not for Snowflake stealing the spotlight for two years, the database world would have almost become a PostgreSQL solo show.
DB-Engines officially announced today that PostgreSQL has once again been crowned "Database of the Year." This is the fifth time PG has received this honor in the past seven years. If not for Snowflake stealing the spotlight for two years, the database world would have almost become a PostgreSQL solo show.
PostgreSQL Outlook for 2024
January 05, 2024 in PostgreSQL

PostgreSQL core team member Jonathan Katzs outlook for PostgreSQL in 2024, reviewing the progress made over the past few years.
PostgreSQL core team member Jonathan Katzs outlook for PostgreSQL in 2024, reviewing the progress made over the past few years.
PostgreSQL Macro Query Optimization with pg_stat_statements
October 26, 2023 in PostgreSQL

**Query optimization** is one of the core responsibilities of DBAs. This article introduces how to use metrics provided by `pg_stat_statements` for macro-level PostgreSQL query optimization.
**Query optimization** is one of the core responsibilities of DBAs. This article introduces how to use metrics provided by `pg_stat_statements` for macro-level PostgreSQL query optimization.
FerretDB: PostgreSQL Disguised as MongoDB
October 08, 2023 in PostgreSQL
FerretDB aims to provide a truly open-source MongoDB alternative based on PostgreSQL.
How to Use pg_filedump for Data Recovery?
September 27, 2023 in PostgreSQL

Backups are a DBA's lifeline — but what if your PostgreSQL database has already exploded and you have no backups? Maybe `pg_filedump` can help you!
Backups are a DBA's lifeline — but what if your PostgreSQL database has already exploded and you have no backups? Maybe `pg_filedump` can help you!
Vector is the New JSON
August 06, 2023 in PostgreSQL

Vectors will become a key element in building applications, just like JSON historically. PostgreSQL leads the AI era with vector extensions.
Vectors will become a key element in building applications, just like JSON historically. PostgreSQL leads the AI era with vector extensions.
PostgreSQL, The most successful database
June 28, 2023 in PostgreSQL

StackOverflow 2023 Survey shows PostgreSQL is the most popular, loved, and wanted database, solidifying its status as the 'Linux of Database'.
StackOverflow 2023 Survey shows PostgreSQL is the most popular, loved, and wanted database, solidifying its status as the 'Linux of Database'.
AI Large Models and Vector Database PGVector
May 10, 2023 in PostgreSQL

This article focuses on vector databases hyped by AI, introduces the basic principles of AI embeddings and vector storage/retrieval, and demonstrates the functionality, performance, acquisition, and application of the vector database extension PGVECTOR through a concrete knowledge base retrieval case study.
This article focuses on vector databases hyped by AI, introduces the basic principles of AI embeddings and vector storage/retrieval, and demonstrates the functionality, performance, acquisition, and application of the vector database extension PGVECTOR through a concrete knowledge base retrieval case study.
How Powerful is PostgreSQL Really?
August 22, 2022 in PostgreSQL

Let performance data speak: Why PostgreSQL is the world's most advanced open-source relational database, aka the world's most successful database. MySQL vs PostgreSQL performance showdown and distributed database reality check.
Let performance data speak: Why PostgreSQL is the world's most advanced open-source relational database, aka the world's most successful database. MySQL vs PostgreSQL performance showdown and distributed database reality check.
Why PostgreSQL is the Most Successful Database?
July 12, 2022 in PostgreSQL

Database users are developers, but what about developers' preferences, likes, and choices? Looking at StackOverflow survey results over the past six years, it's clear that in 2022, PostgreSQL has won all three categories, becoming literally the "most successful database"
Database users are developers, but what about developers' preferences, likes, and choices? Looking at StackOverflow survey results over the past six years, it's clear that in 2022, PostgreSQL has won all three categories, becoming literally the "most successful database"
Ready-to-Use PostgreSQL Distribution: Pigsty
May 24, 2021 in PostgreSQL

Yesterday I gave a live presentation in the PostgreSQL Chinese community, introducing the open-source PostgreSQL full-stack solution: Pigsty.
Yesterday I gave a live presentation in the PostgreSQL Chinese community, introducing the open-source PostgreSQL full-stack solution: Pigsty.
Why Does PostgreSQL Have a Bright Future?
May 08, 2021 in PostgreSQL

Databases are the core component of information systems, relational databases are the absolute backbone of databases, and PostgreSQL is the world's most advanced open source relational database. With such favorable timing and positioning, how can it not achieve great success?
Databases are the core component of information systems, relational databases are the absolute backbone of databases, and PostgreSQL is the world's most advanced open source relational database. With such favorable timing and positioning, how can it not achieve great success?
Localization and Collation Rules in PostgreSQL
March 05, 2021 in PostgreSQL
What? Don't know what COLLATION is? Remember one thing: using C COLLATE is always the right choice!
Implementing Advanced Fuzzy Search
March 05, 2021 in PostgreSQL
How to implement relatively complex fuzzy search logic in PostgreSQL?
PostgreSQL Logical Replication Deep Dive
March 03, 2021 in PostgreSQL
This article introduces the principles and best practices of logical replication in PostgreSQL 13.
PG Replica Identity Explained
March 03, 2021 in PostgreSQL
Replica identity is important - it determines the success or failure of logical replication
A Methodology for Diagnosing PostgreSQL Slow Queries
February 23, 2021 in PostgreSQL

Slow queries are the sworn enemy of OLTP databases. Here’s how to identify, analyze, and fix them using metrics (Pigsty dashboards), pg_stat_statements, and logs.
Slow queries are the sworn enemy of OLTP databases. Here’s how to identify, analyze, and fix them using metrics (Pigsty dashboards), pg_stat_statements, and logs.
Incident-Report: Patroni Failure Due to Time Travel
February 22, 2021 in PostgreSQL

Machine restarted due to failure, NTP service corrected PG time after PG startup, causing Patroni to fail to start.
Machine restarted due to failure, NTP service corrected PG time after PG startup, causing Patroni to fail to start.
Online Primary Key Column Type Change
January 15, 2021 in PostgreSQL
How to change column types online, such as upgrading from INT to BIGINT?
Golden Monitoring Metrics: Errors, Latency, Throughput, Saturation
November 06, 2020 in PostgreSQL
Understanding the golden monitoring metrics in PostgreSQL
Database Cluster Management Concepts and Entity Naming Conventions
June 03, 2020 in PostgreSQL

Concepts and their naming are very important. Naming style reflects an engineer's understanding of system architecture. Poorly defined concepts lead to communication confusion, while carelessly set names create unexpected additional burden. Therefore, they need careful design.
Concepts and their naming are very important. Naming style reflects an engineer's understanding of system architecture. Poorly defined concepts lead to communication confusion, while carelessly set names create unexpected additional burden. Therefore, they need careful design.
PostgreSQL's KPI
May 29, 2020 in PostgreSQL

Managing databases is similar to managing people - both need KPIs (Key Performance Indicators). So what are database KPIs? This article introduces a way to measure PostgreSQL load: using a single horizontally comparable metric that is basically independent of workload type and machine type, called **PG Load**.
Managing databases is similar to managing people - both need KPIs (Key Performance Indicators). So what are database KPIs? This article introduces a way to measure PostgreSQL load: using a single horizontally comparable metric that is basically independent of workload type and machine type, called **PG Load**.
Online PostgreSQL Column Type Migration
January 30, 2020 in PostgreSQL
How to modify PostgreSQL column types online? A general approach
Transaction Isolation Level Considerations
November 12, 2019 in PostgreSQL

PostgreSQL actually has only two transaction isolation levels: **Read Committed** and **Serializable**
PostgreSQL actually has only two transaction isolation levels: **Read Committed** and **Serializable**
Frontend-Backend Communication Wire Protocol
November 12, 2019 in PostgreSQL

Understanding the TCP protocol used for communication between PostgreSQL server and client, and printing messages using Go
Understanding the TCP protocol used for communication between PostgreSQL server and client, and printing messages using Go
Incident: PostgreSQL Extension Installation Causes Connection Failure
June 13, 2019 in PostgreSQL

Today encountered an interesting case where a customer reported database connection issues caused by extensions.
Today encountered an interesting case where a customer reported database connection issues caused by extensions.
CDC Change Data Capture Mechanisms
June 12, 2019 in PostgreSQL
Change Data Capture is an interesting ETL alternative solution.
Locks in PostgreSQL
June 11, 2019 in PostgreSQL

Snapshot isolation does most of the heavy lifting in PG, but locks still matter. Here’s a practical guide to table locks, row locks, intention locks, and `pg_locks`.
Snapshot isolation does most of the heavy lifting in PG, but locks still matter. Here’s a practical guide to table locks, row locks, intention locks, and `pg_locks`.
O(n2) Complexity of GIN Search
April 12, 2019 in PostgreSQL

When GIN indexes are used to search with very long keyword lists, performance degrades significantly. This article explains why GIN index keyword search has O(n^2) time complexity.
When GIN indexes are used to search with very long keyword lists, performance degrades significantly. This article explains why GIN index keyword search has O(n^2) time complexity.
PostgreSQL Common Replication Topology Plans
March 29, 2019 in PostgreSQL
Replication is one of the core issues in system architecture.
Warm Standby: Using pg_receivewal
March 02, 2019 in PostgreSQL
There are various backup strategies. Physical backups can usually be divided into four types.
Incident-Report: Connection-Pool Contamination Caused by pg_dump
December 11, 2018 in PostgreSQL

Sometimes, interactions between components manifest in subtle ways. For example, using pg_dump to export data from a connection pool can cause connection pool contamination issues.
Sometimes, interactions between components manifest in subtle ways. For example, using pg_dump to export data from a connection pool can cause connection pool contamination issues.
PostgreSQL Data Page Corruption Repair
November 29, 2018 in PostgreSQL

Using binary editing to repair PostgreSQL data pages, and how to make a primary key query return two records.
Using binary editing to repair PostgreSQL data pages, and how to make a primary key query return two records.
Relation Bloat Monitoring and Management
October 06, 2018 in PostgreSQL

PostgreSQL uses MVCC as its primary concurrency control technology. While it has many benefits, it also brings other effects, such as relation bloat.
PostgreSQL uses MVCC as its primary concurrency control technology. While it has many benefits, it also brings other effects, such as relation bloat.
TimescaleDB Quick Start
September 07, 2018 in PostgreSQL
TimescaleDB is a PostgreSQL extension plugin that provides time-series database functionality.
Getting Started with PipelineDB
September 07, 2018 in PostgreSQL

PipelineDB is a PostgreSQL extension for streaming analytics. Here’s how to install it and build continuous views over live data.
PipelineDB is a PostgreSQL extension for streaming analytics. Here’s how to install it and build continuous views over live data.
Incident-Report: PostgreSQL Transaction ID Wraparound
July 20, 2018 in PostgreSQL
XID WrapAround is perhaps a unique type of failure specific to PostgreSQL
Incident-Report: Integer Overflow from Rapid Sequence Number Consumption
July 20, 2018 in PostgreSQL
If you use Integer sequences on tables, you should consider potential overflow scenarios.
PostgreSQL Trigger Usage Considerations
July 07, 2018 in PostgreSQL
Detailed understanding of trigger management and usage in PostgreSQL
GeoIP Geographic Reverse Lookup Optimization
July 07, 2018 in PostgreSQL

A common requirement in application development is GeoIP conversion - converting source IP addresses to geographic coordinates or administrative divisions (country-state-city-county-town-village)
A common requirement in application development is GeoIP conversion - converting source IP addresses to geographic coordinates or administrative divisions (country-state-city-county-town-village)
PostgreSQL Development Convention (2018 Edition)
June 20, 2018 in PostgreSQL

Without rules, there can be no order. This article compiles a development specification for PostgreSQL database principles and features, which can reduce confusion encountered when using PostgreSQL.
Without rules, there can be no order. This article compiles a development specification for PostgreSQL database principles and features, which can reduce confusion encountered when using PostgreSQL.
What Are PostgreSQL's Advantages?
June 10, 2018 in PostgreSQL

PostgreSQL's slogan is "The World's Most Advanced Open-Source Relational Database," but I think the most vivid characterization should be: The Full-Stack Database That Does It All - one tool to rule them all.
PostgreSQL's slogan is "The World's Most Advanced Open-Source Relational Database," but I think the most vivid characterization should be: The Full-Stack Database That Does It All - one tool to rule them all.
KNN Ultimate Optimization: From RDS to PostGIS
June 06, 2018 in PostgreSQL
Ultimate optimization of KNN problems, from traditional relational design to PostGIS
Efficient Administrative Region Lookup with PostGIS
June 06, 2018 in PostgreSQL

How to efficiently solve the typical reverse geocoding problem: determining administrative regions based on user coordinates.
How to efficiently solve the typical reverse geocoding problem: determining administrative regions based on user coordinates.
Monitoring Table Size in PostgreSQL
May 14, 2018 in PostgreSQL

Tables in PostgreSQL correspond to many physical files. This article explains how to calculate the actual size of a table in PostgreSQL.
Tables in PostgreSQL correspond to many physical files. This article explains how to calculate the actual size of a table in PostgreSQL.
PgAdmin Installation and Configuration
April 14, 2018 in PostgreSQL

PgAdmin is a GUI program for managing PostgreSQL, written in Python, but it's quite dated and requires some additional configuration.
PgAdmin is a GUI program for managing PostgreSQL, written in Python, but it's quite dated and requires some additional configuration.
Incident-Report: Uneven Load Avalanche
April 08, 2018 in PostgreSQL

Recently there was a perplexing incident where a database had half its data volume and load migrated away, but ended up being overwhelmed due to increased load.
Recently there was a perplexing incident where a database had half its data volume and load migrated away, but ended up being overwhelmed due to increased load.
Bash and psql Tips
April 07, 2018 in PostgreSQL
Some tips for interacting between PostgreSQL and Bash.
Implementing Mutual Exclusion Constraints with Exclude
April 06, 2018 in PostgreSQL

Exclude constraint is a PostgreSQL extension that can implement more advanced and sophisticated database constraints.
Exclude constraint is a PostgreSQL extension that can implement more advanced and sophisticated database constraints.
Function Volatility Classification Levels
April 06, 2018 in PostgreSQL

PostgreSQL functions have three volatility levels by default. Proper use can significantly improve performance.
PostgreSQL functions have three volatility levels by default. Proper use can significantly improve performance.
Distinct On: Remove Duplicate Data
April 06, 2018 in PostgreSQL
Use Distinct On extension clause to quickly find records with maximum/minimum values within groups
PostgreSQL Routine Maintenance
February 10, 2018 in PostgreSQL

Cars need oil changes, databases need maintenance. For PG, three important maintenance tasks: backup, repack, vacuum
Cars need oil changes, databases need maintenance. For PG, three important maintenance tasks: backup, repack, vacuum
Backup and Recovery Methods Overview
February 09, 2018 in PostgreSQL
Backup is the foundation of a DBA's livelihood. With backups, there's no need to panic.
Pgbouncer Quick Start
February 07, 2018 in PostgreSQL

Pgbouncer is a lightweight database connection pool. This guide covers basic Pgbouncer configuration, management, and usage.
Pgbouncer is a lightweight database connection pool. This guide covers basic Pgbouncer configuration, management, and usage.
PgBackRest2 Documentation
February 07, 2018 in PostgreSQL
PgBackRest is a set of PostgreSQL backup tools written in Perl
Changing Engines Mid-Flight — PostgreSQL Zero-Downtime Data Migration
February 06, 2018 in PostgreSQL

Data migration typically involves stopping services for updates. Zero-downtime data migration is a relatively advanced operation.
Data migration typically involves stopping services for updates. Zero-downtime data migration is a relatively advanced operation.
Using sysbench to Test PostgreSQL Performance
February 06, 2018 in PostgreSQL
Although PostgreSQL provides pgbench, sometimes you need sysbench to outperform MySQL.
Testing Disk Performance with FIO
February 06, 2018 in PostgreSQL
FIO is a convenient tool for testing disk I/O performance
PostgreSQL Server Log Regular Configuration
February 06, 2018 in PostgreSQL

It's recommended to configure PostgreSQL's log format as CSV for easy analysis, and it can be directly imported into PostgreSQL data tables.
It's recommended to configure PostgreSQL's log format as CSV for easy analysis, and it can be directly imported into PostgreSQL data tables.
Finding Unused Indexes
February 04, 2018 in PostgreSQL

Indexes are useful, but they're not free. Unused indexes are a waste. Use these methods to identify unused indexes.
Indexes are useful, but they're not free. Unused indexes are a waste. Use these methods to identify unused indexes.
Batch Configure SSH Passwordless Login
January 07, 2018 in PostgreSQL
Quick configuration for passwordless login to all machines
Wireshark Packet Capture Protocol Analysis
January 05, 2018 in PostgreSQL

Wireshark is a very useful tool, especially suitable for analyzing network protocols. Here's a simple introduction to using Wireshark for packet capture and PostgreSQL protocol analysis.
Wireshark is a very useful tool, especially suitable for analyzing network protocols. Here's a simple introduction to using Wireshark for packet capture and PostgreSQL protocol analysis.
The Versatile file_fdw — Reading System Information from Your Database
December 01, 2017 in PostgreSQL

With `file_fdw`, you can easily view operating system information, fetch network data, and feed various data sources into your database for unified viewing and management.
With `file_fdw`, you can easily view operating system information, fetch network data, and feed various data sources into your database for unified viewing and management.
Installing PostGIS from Source
September 07, 2017 in PostgreSQL
PostGIS is PostgreSQL's killer extension, but compiling and installing it isn't easy.
Common Linux Statistics CLI Tools
September 07, 2017 in PostgreSQL
top, free, vmstat, iostat: Quick reference for four commonly used CLI tools
Go Database Tutorial: database/sql
August 24, 2017 in PostgreSQL

Similar to JDBC, Go also has a standard database access interface. This article details how to use database/sql in Go and important considerations.
Similar to JDBC, Go also has a standard database access interface. This article details how to use database/sql in Go and important considerations.
Implementing Cache Synchronization with Go and PostgreSQL
August 03, 2017 in PostgreSQL

Cleverly utilizing PostgreSQL's Notify feature, you can conveniently notify applications of metadata changes and implement trigger-based logical replication.
Cleverly utilizing PostgreSQL's Notify feature, you can conveniently notify applications of metadata changes and implement trigger-based logical replication.
Auditing Data Changes with Triggers
June 09, 2017 in PostgreSQL

Sometimes we want to record important metadata changes for audit purposes. PostgreSQL triggers can conveniently solve this need automatically.
Sometimes we want to record important metadata changes for audit purposes. PostgreSQL triggers can conveniently solve this need automatically.
Building an ItemCF Recommender in Pure SQL
April 05, 2017 in PostgreSQL

Five minutes, PostgreSQL, and the MovieLens dataset—that’s all you need to implement a classic item-based collaborative filtering recommender.
Five minutes, PostgreSQL, and the MovieLens dataset—that’s all you need to implement a classic item-based collaborative filtering recommender.
UUID Properties, Principles and Applications
November 06, 2016 in PostgreSQL

UUID properties, principles and applications, and how to manipulate UUIDs using PostgreSQL stored procedures.
UUID properties, principles and applications, and how to manipulate UUIDs using PostgreSQL stored procedures.
PostgreSQL MongoFDW Installation and Deployment
May 28, 2016 in PostgreSQL

Recently had business requirements to access MongoDB through PostgreSQL FDW, but compiling MongoDB FDW is really a nightmare.
Recently had business requirements to access MongoDB through PostgreSQL FDW, but compiling MongoDB FDW is really a nightmare.
































