Navigating the Walled Gardens of PostgreSQL: Hidden Risks of Postgres Vendor...
These days there’s been a lot of talk about Postgres having an impact on “everything”. Whether it’s replacing legacy systems, creating a new greenfield project or even implementing it as a back-end to...
View ArticleDatabases, Data Lakes, And Encryption
The Evolution of Object StorageLet’s start by stating something really obvious; object storage has become the preeminent storage system in the world today. Initially created to satisfy a need to store...
View ArticlePerforming Standby Datacentre Promotions of a Patroni Cluster
Unlike the standard multi-node Postgres replication cluster, when managed by Patroni, all failovers are automatically executed. However, this is not the case when dealing with inter-datacentre...
View ArticleTroubleshooting PostgreSQL Logical Replication, Working with LSNs
PostgreSQL logical replication adoption is becoming more popular as significant advances continue to expand its range of capabilities. While quite a few blogs have described features, there seems to be...
View ArticleTransparent Data Encryption: The Best Way to Secure Your Data in PostgreSQL
Welcome to the open source implementation of PostgreSQL Transparent Data Encryption!This question was posed on the PostgreSQL forum, and the good news is that it’s actually pretty easy to do!Q: Is it...
View ArticlePostgreSQL Security Missteps and Tips
This post was originally written in 2020 and was updated in 2025. PostgreSQL security done right protects data, improves performance, keeps systems stable, and supports a healthier development cycle....
View ArticleMigrating from MySQL to PostgreSQL Using pgloader: A Practical Guide
This post was originally published in December 2023 and was updated in March 2025. These days, there’s significant industry interest in moving database systems to PostgreSQL. Often, these are...
View ArticlePerforming ELT Operations Using DOMAINs
First things first, a couple of definitions to clear up: ETL: Extract, Transform, Load. Transforms data before loading it into the target system extract raw data from various sources use a secondary...
View ArticleAdministering a Patroni Managed PostgreSQL Cluster
There are quite a number of methods these days for installing Patroni. I want to discuss the next step, which is how to start tuning a running system. The manner of updating a running Postgres server...
View ArticleManaging Time Series Data Using TimeScaleDB-Powered PostgreSQL
PostgreSQL extensions are great! Simply by adding an extension, one transforms what is an otherwise vanilla general-purpose database management system into one capable of processing data requirements...
View ArticleGrafana Dashboards: A PoC Implementing the PostgreSQL Extension pg_stat_monitor
This PoC demonstrates how to install and configure pg_stat_monitor in order to extract useful and actionable metrics from a PostgreSQL database and display them on a Grafana dashboard. About the...
View ArticleTransparent Data Encryption: The Best Way to Secure Your Data in PostgreSQL
Welcome to the open source implementation of PostgreSQL Transparent Data Encryption! This question was posed on the PostgreSQL forum, and the good news is that it’s actually pretty easy to do! Q: Is it...
View ArticlePerforming ELT Operations Using DOMAINs
First things first, a couple of definitions to clear up: ETL: Extract, Transform, Load. Transforms data before loading it into the target system extract raw data from various sources use a secondary...
View ArticleAdministering a Patroni Managed PostgreSQL Cluster
There are quite a number of methods these days for installing Patroni. I want to discuss the next step, which is how to start tuning a running system. The manner of updating a running Postgres server...
View ArticleManaging Time Series Data Using TimeScaleDB-Powered PostgreSQL
PostgreSQL extensions are great! Simply by adding an extension, one transforms what is an otherwise vanilla general-purpose database management system into one capable of processing data requirements...
View ArticleGrafana Dashboards: A PoC Implementing the PostgreSQL Extension pg_stat_monitor
This PoC demonstrates how to install and configure pg_stat_monitor in order to extract useful and actionable metrics from a PostgreSQL database and display them on a Grafana dashboard.About the...
View ArticleMigrating from MySQL to PostgreSQL Using pgloader
These days, there’s been a lot of talk in the industry about setting up one’s database system on PostgreSQL. Most times, these are Greenfield projects where the bulk of the effort is on its design and...
View ArticleHow To Scale a Single-Host PostgreSQL Database With Citus
When it comes to Citus, successfully building out and scaling a PostgreSQL cluster across multiple nodes and even across data centers can feel, at times, to be an art form because there are so many...
View ArticleData Redundancy With the PostgreSQL Citus Extension
Over the years, I’ve had the opportunity to architect all sorts of configurations using Postgres as a backend. I’ve always found it very cool and satisfying to implement sophisticated business rules,...
View ArticleConfiguring PostgreSQL and LDAP Using StartTLS
Effectively working with LDAP as an authentication mechanism for PostgreSQL typically requires extensive knowledge in both domains. While trying to be as complete yet succinct as possible, I’m...
View Article