---
title: "Tuning parameters vs tuning your queries"
publication: "Postgres Weekly"
issue: 560
published_at: "2024-06-26"
canonical_url: "https://postgresweekly.com/issues/560"
---

Plus more POSETTE talks worth watching, and a handful of useful Postgres tools too. |        

#​560 — June 26, 2024 

[Web Version](https://postgresweekly.com/issues/560)  

Together with [![Render logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,e_trim,w_500,h_100/e_make_transparent/co_white,e_outline:7/bil3olyaqqkao0fkbhis.png)](https://render.com?utm_source=cooperpress&utm_medium=cooperpress)   

Postgres Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/ihrht59lk1g6kbuuqgrd.jpg)](https://www.cybertec-postgresql.com/en/making-the-postgresql-visibility-map-visible/)  

[Making the Postgres Visibility Map Visible](https://www.cybertec-postgresql.com/en/making-the-postgresql-visibility-map-visible/) — If you’ve never gone far down the Postgres performance or transactions rabbit hole, you may have never encountered the [visibility map](https://www.postgresql.org/docs/current/storage-vm.html). It’s a mechanism by which Postgres tracks which pages of a table contain only tuples that are visible to all transactions. This has some performance implications. 

Laurenz Albe   

[A Mentoring Program for Postgres Contributors](https://www.postgresql.org/message-id/CA%2BTgmob1A9F0vP%2B9716JMRoHrw%3Ds2eA%3D%3DLnw3hpP_qmoAGz8JQ%40mail.gmail.com) — Prolific Postgres contributor Robert Haas is starting a mentoring program where people who want to contribute code to Postgres can be mentored by current committers. It’s only open to nine people so far, but this is a great opportunity for anyone interested. 

Robert Haas   [![\](https://copm.s3.amazonaws.com/ecbbf111.jpg)](https://render.com?utm_source=cooperpress&utm_medium=cooperpress) 

[Render Is Your Fastest Path to Production](https://render.com?utm_source=cooperpress&utm_medium=cooperpress) — Whatever your stack you can build, deploy quickly, update and confidently scale your apps with ease, from the first to the billionth user. Start building with Render for free — the modern cloud for devs. 

Render sponsor   

**QUICK BITS:** 

- EDB's Tomas Vondra has a nice [recap of the recent Prague PostgreSQL Developer Day event.](https://www.enterprisedb.com/blog/prague-postgresql-developer-day-2024-conference-recap)
- 🎧 The [Postgres FM](https://postgres.fm/) podcast has [celebrated reaching its 100th episode](https://postgres.fm/episodes/to-100tb-and-beyond) by talking to three engineers who've all scaled Postgres significantly.
- [Adyen's Derk van Veen](https://postgresql.life/post/derk_van_veen/) is this week's _PostgreSQL Person of the Week_interviewee.   

[Custom `ENUM` Type Columns and `ORDER BY`](https://bugfactory.io/articles/custom-enum-type-columns-and-order-by/) — [Enumerated types](https://www.postgresql.org/docs/current/datatype-enum.html) make it easy to enforce constraints on what can go in certain columns, but you might need to take care when _ordering_ them. 

Christoph Schiessl   

[A Post-Mortem of Some Postgres 'Out of Shared Memory' Errors](https://baida.dev/articles/post-mortem-postgres-out-of-shared-memory-error) — Too many locks spoil the broth. 

Andrea Baida       

▶️ POSETTE Talks Worth Watching 

Microsoft's _POSETTE_ event took place entirely online earlier this month and all the talks are already available on YouTube. I've been watching or skimming through as many as I can and some certainly jumped out, if you have some time...   

▶[Tuning Parameters vs. Tuning Your Queries](https://www.youtube.com/watch?v=phR2hKwgs8E) — It’s great to see a well known name in the Postgres space stepping forward to _debunk_ the idea that tuning configuration parameters can solve all your Postgres performance problems. She also walks through an example where tuning a query yields immense benefits. 
Henrietta Dombrovskaya   

▶[Postgres Performance Tips You Have Never Seen Before v2.0](https://www.youtube.com/watch?v=YDv18olF1ew) — Hans-Jürgen certainly knows how to title a talk to get attention! Luckily he delivers the goods too. It’s a real ‘grab bag’ of stuff but if you have 25 minutes, you’ll pick something up. 
Hans-Jürgen Schönig   

▶[Semantic Search with Django, Postgres, and pgvector](https://www.youtube.com/watch?v=4hl8LpDKRMw) — While this does cover the use of embeddings to create semantic search systems, the focus is otherwise entirely on Django. 
Paolo Melchiorre   

This isn't _everything_ worth watching, of course. You can find [the full playlist here](https://www.youtube.com/playlist?list=PLlrxD0HtieHg5ldHlEn3nMMpClX0RUntH) and we've linked to some of the other talks previously too.      

[An Introduction to Generated Columns in Postgres](https://hashrocket.com/blog/posts/generated-columns-in-postgresql) — In Postgres, generated columns are columns that are automatically populated based upon the result of a user-defined expression when rows are inserted or updated. 

Craig Hafer   

[Load from Postgres to Postgres Faster via DuckDB](https://dlthub.com/devel/examples/postgres_to_postgres) — How to export and import data from Postgres to Postgres in a fast way with ConnectorX and DuckDB. 

Simon Späti   

**💫 GOLDEN OLDIES:** 

A few older posts I come back to from time to time: 

📄 [Fuzzy Text Search: From Not So Fuzzy to Fuzziest](https://blog.brendanscullion.com/postgresql-text-search) Brendan Scullion 

📄 [Vectors are the New JSON in Postgres](https://jkatz05.com/post/postgres/vectors-json-postgresql/) Jonathan Katz 

📄 [An SQL Recipe: Comparing with Neighbors](https://antonz.org/sql-compare-neighbors/) Anton Zhiyanov 

📄 [Postgres Indexing: When Does BRIN Win?](https://www.crunchydata.com/blog/postgres-indexing-when-does-brin-win) Paul Ramsey      

📰 Classifieds   

Thinking about your career? [We reveal the big changes to the database landscape in 2024 and beyond](https://www.red-gate.com/solutions/entrypage/state-of-database-landscape-2024/overview?utm_source=postgresweekly&utm_medium=email&utm_campaign=mc-202401-t1-sodl-navigating-the-db-landscape-gc-all&utm_content=Mayad) - and what you can do to navigate them. 

--- 

🚀 Try [Rocketadmin’s](https://rocketadmin.com/?utm_campaign=postgres_weekly) seamlessly generated database admin panels and benefit from its smart record editing capabilities. [No coding required!](https://rocketadmin.com/?utm_campaign=postgres_weekly)      

🛠 Code and Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/fxzqxzecvcxahs3lclpm.jpg)](https://pgmodeler.io/)  

[pgModeler: A Postgres Database Modelling Tool](https://pgmodeler.io/) — An easy way to create and edit database models in a more visual way. It’s packaged up as a paid product but is also open source (GPLv3 – [repo here](https://github.com/pgmodeler/pgmodeler)) so you can build it yourself. 

Raphael Araújo e Silva   

[The Dalibo Postgres Execution Plan Visualizer](https://explain.dalibo.com/) — Give this the output from `EXPLAIN ANALYZE` and get a better view at what Postgres plans to do with your query. It’s also [open source](https://github.com/dalibo/pev2) if you want to use it locally or within an app. 

Dalibo   

[pg_squeeze: Extension to Automate Table Bloat Cleanup](https://github.com/cybertec-postgresql/pg_squeeze) — While it’s not a replacement for vacuuming, it’s a handy extension to go a step further and gain even more space improvements in-situ. 

CYBERTEC   

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/bou1pr65zgrgk3bq5ve8.jpg)](https://github.com/okbob/pspg)  

[pspg: A Unix Pager Designed for Postgres Tables](https://github.com/okbob/pspg) — If you use `psql` you probably use `less` as your pager, but it doesn’t directly support tabular data. This does. Nowadays, it also supports MySQL, CSV and TSV too. 

Pavel Stehule   

[pg_easy_replicate: Switch Databases with Minimal Downtime](https://github.com/shayonj/pg_easy_replicate) — A Ruby-powered orchestrator to simplify the task of setting up logical replication between two Postgres databases then letting you switch over to the newer one with minimal downtime. 

Shayon Mukherjee    

**Got a new email?** You can [change your address here](https://postgresweekly.com/edit_subscription/*|UID|*). 

--- 

**Bored of us?** [Click here to stop getting Postgres Weekly](https://postgresweekly.com/leave/*|UID|*). 

--- 

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

Postgres, PostgreSQL and the Slonik Logo are trademarks or registered trademarks of the PostgreSQL Community Association of Canada. 

[Stop getting this newsletter](https://postgresweekly.com/leave/*|UID|*).
