My experience at PGIbz 2024 by Jesús Espino

Tuesday, Sep 9, 2025| by José Espino | Tags: PGIBZ, postgresql, pgibz2024, reviews

This article has been published with explicit permission from Jesús Espino. It's a copy of a post originally published on his LinkedIn account on September 16, 2024.

This has been my first time talking at a Postgres conference, and it has been amazing. I must admit that I felt really small there, surrounded by speakers from projects like Omnigres, Timescale, OnGres, or Yugabyte. Still, I think there was value in my talk about understanding the inner workings of a SQL query inside Postgres.

One important thing to notice is that Ibiza is a great place for a conference. It is a gorgeous environment, very well connected internationally, and with a very relaxed vibe. It sounds like Ibiza is for a party, but I think that is a huge misrepresentation of what Ibiza is.

But let's jump into the conference itself. It was a relatively small conference regarding people—I would say less than 100 (I don't know the exact numbers). What was amazing was having more opportunity to talk with almost everybody. Also, the conference was a single-track conference with pros and cons, but I have to admit that I enjoyed almost every talk, so my main concern with single-track conferences is gone.

The first day

We started the conference with a quick introduction to the event by Álvaro Hernández Tortosa and 🎙Bart Farrell (Who was also the MC and photographer for the conference).

The first day of the conference started with Tania Ash and Andrei Zaichikov sharing their experience with massive migrations to PostgreSQL in big regulated organizations. They talked about the methodology they used there (Manada). They also discussed the technical problem and the organizational part and how important it is to tackle it all together.

The second one was from Mayuresh B., who discussed the possible tricky situations when migrating from Oracle to PostgreSQL. For example, Oracle RAC is not equivalent to Patroni. Or the fact that Oracle has some subquery caching that doesn't exist in PostgreSQL can catch you off-guard after what looks like a successful migration.

After a coffee break, it was the turn of 📊 Chin Hwee Ong talking about how to properly store our data when we need to preserve the history.

In the next one Guillermo Ruiz and Jorge Solórzano talked about a project where they built a Postgres cluster using StackGres (on top of kubernetes) using 63 Raspberry Pis. They walk us through the process, the challenges, and how they solved some of them.

After the beach break (where some of us spent some time at the beach) and lunch, we continued the talks.

Now, it was Pilar De Teodoro and Joaquim Oliveira's turn to talk about how they aim to store data in the PBs scale at ESA (European Space Agency) using Greenplum and how Greenplum's transition to closed-source has drastically affected their plans. They shared the options evaluated now, the restrictions, and the trade-offs they face.

In the next one, Chris Travers talks about how he is designing an architecture to store logs on the scale of petabytes in a scalable way. He prioritizes writes, allowing the system to quickly ingest logs.

To finish the first day, we had Yurii Rashkovskii talk about Postgres extensions, their problems, and some of the solutions Omnigres is developing for them, like better version control and dependency control.

The second day

I started the second day speaking about "Deep dive in a SQL query", an overview of how a query is executed in the PostgreSQL server. Explaining things like the parsing process and the rules system but with a lot of focus on the Optimizer and the execution of the query plan.

After my talk, Fabrízio de Royes Mello and Sven Klemm talked about how, at Timescale, they were able to get a drastic improvement in the query plans by taking advantage of the monotonic nature of the time and enforcing time-based filtering, making time "constant" in the queries.

After the coffee break, we were back to listen to Franck Pachot about isolation levels, explaining the difference between the theory around the standard SQL isolation levels and the reality in the databases about them. Also, Frank advised us to reach a similar isolation level to serializable if we properly use the locking features like "SELECT FOR UPDATE" that Postgres provides without jumping entirely into the serializable isolation level.

After Frank, it was Frits Hoogland's turn to discuss the importance of considering how the underneath layers of software can affect our performance. More specifically, Linux memory and IO management can affect PostgreSQL performance, and knowing how it works and configuring PostgreSQL accordingly can lead to important performance gains.

After lunch, we returned to the room to listen to Christoph Engelbert talking about PostgreSQL on Kubernetes with a lot of advice about what to consider when hosting PostgreSQL on your Kubernetes cluster.

The next one was David Hughes talking about containers, giving a walkthrough of their history with predecessors like chroot, FreeBSD Jails, Linux namespaces, and LXC containers. He also talked about the multiple libc implementations available and how that can affect PostgreSQL when you put it inside a container with those libc implementations.

And to close the day, we had Álvaro Hernández Tortosa talking about PGA. A way to simplify PostgreSQL's installation using containers under the hood. This tool not only simplify the installation, it also create entire contenirize clusters that can be even distributed in multiple machines with just some commands. Also, during the talk, he mentioned OnGres's vision on improving the security of the supply chain around PostgreSQL.

The third day

The third day was the unconference. We started the day by preparing, proposing, and selecting some topics, and then we split the group into two rooms.

During the open space, I was present while we discussed topics such as the usage of distributed databases, what we would change in PostgreSQL if we rewrote it from scratch, and how we could deliver a minimal PostgreSQL distribution (for example, using containers).

A lot of amazing conversations.

Summary

I enjoyed this conference a lot; the quality of the speakers and the talks were outstanding. There was almost 0 bullshit or spam (being a single-track event where you can't choose, that is something that I appreciate). The environment, the food, and the people was great, for sure, and event that I would love to come back.

logo