A quick pg_stat_statements troubleshooting hack
By Kaarel Moppel How can I use pg_stat_statements for troubleshooting? First, an introductory story (with some slight “drama” added for fun) from those good old days of on-site consulting 🙂 So…I’m at a client where the database is not behaving nicely among other things…what a crappy DB product indeed I hear, it gets cranky every […]
What is fillfactor and how does it affect PostgreSQL performance?
By Kaarel Moppel Recently I was asked if there’s a rule of thumb / best practice for setting the fillfactor in Postgres – and the only answer I could give was to decrease it “a bit” if you do lots and lots of updates on some table. Good advice? Well, it could be better – […]
pgwatch2 v1.8.0 released
After exactly half a year (seems to be a pattern already) since the last major release of pgwatch2 Open Source PostgreSQL monitoring tool, I’m glad to announce that another set of useful features and improvements have found their way into the pgwatch2 code repository! The new version is incremented to v1.8.0 and content-wise, it’s mostly […]
Partition management – do you really need a tool for that?
By Kaarel Moppel The functionality of using table partitions to speed up queries and make tables more manageable as data amounts grow has been available in Postgres for a long time already. Nicer declarative support became available from v10 on – so in general it’s a known technique for developers. But what is not so […]
Series Forecasting with Recurrent Neural Networks (LSTM)
By Kevin Speyer – Hands-on time series forecasting with LSTM – This post will to teach you how to build your first Recurrent Neural Network (RNN) for series predictions. In particular, we are going to use the Long Short Term Memory (LSTM) RNN, which has gained a lot of attention in the last years. LSTM […]
7 things that could be improved in PostgreSQL
By Kaarel Moppel – UPDATED by Laurenz Albe 06.07.2023 – See what progress has been made What are PostgreSQL’s weaknesses? How can PostgreSQL be improved? Usually, in this blog I write about various fun topics around PostgreSQL – like perhaps new cool features, some tricky configuration parameters, performance of particular features or on some “life […]
Detailed look at the new PostgreSQL troubleshooting extension – pg_show_plans
By Kaarel Moppel 2 weeks ago we announced a new, long awaited, Postgres extension to look into execution plans for “live” running queries: pg_show_plans. This was not possible before in PostgreSQL yet, so it’s really a very cool piece of functionality and we’d like to echo out the message again. So here in this blogpost […]
Introduction to Time Series Forecasting
By Kevin Speyer – Time Series Forecast – This post shows you how to approach a time series problem using machine learning techniques. Predicting the behavior of a variable over time is a common problem that one encounters in many industries, from prices of assets on the stock market to the amount of transactions per […]
Performance differences between normal and generic audit triggers
What are the performance differences between normal and generic audit triggers? Recently I was talking in a more general way about some common auditing / change tracking approaches for PostgreSQL…but it also made me curious, how does it look from the performance side? To quickly recap the previous blog post: the most common approaches for […]
How to run a clustering algorithm within PostgreSQL
By Kevin Speyer – In this post, we will cover a step by step guide on how to implement a clustering algorithm within PostgreSQL. The clustering algorithm is the well-known k-means, which splits data into groups by minimising the sum of the squared distances of each point to the corresponding group average. This method belongs […]
Row change auditing options for PostgreSQL
By Kaarel Moppel Recently, I was asked for advice on how to reasonably implement a common task of table change tracking – meaning a so-called “audit trail” for all row changes over time was required. The keyword “compliance” might also ring a bell in this context, here for those who work in finance or for […]
pgwatch2 v1.7.0 released
It’s been exactly half a year since the last major release of the pgwatch2 Open Source PostgreSQL monitoring tool, and I’m glad to announce that another huge set of useful features and improvements have found their way into the pgwatch2 code repository! The new version is incremented to v1.7 and, continuing the naming tradition, I’m […]