Building plv8: from a binary archive to a compact Docker image
The plv8 extension is very underestimated, though it can help simplify development for a variety of tasks. It's been a year since we started using this extension in our projects. The main reason for its low popularity is the complexity of building. Moreover, building plv8 requires a lot of traffic and disc space for temporary files. That's why we decided to build plv8 and provide ready-made binaries freely to anyone interested, not just as an offering for our customers. First, we made the binaries available on GitHub. Then we created a Docker image for Postgres with pre-installed plv8 based on Debian. It looked too heavy to us, and we decided to check Alpine, however, building it for Alpine appeared to be more complicated than we expected. I'll explain what difficulties we faced and how we managed to overcome them. I will also list the tasks that can be solved with plv8 and provide advice on how to make the development process more convenient. I will also share the links to our Docker images for the latest Postgres 13 and Postgres 14 releases, that are compact and can be used for any types of tasks.
Слайды
Фадеев.pptxВидео
Видео доступно участникам мероприятия, выполнившим вход в личный кабинет
Другие доклады
-
Nikita Malakhov Postgres ProfessionalTeodor Sigaev Postgres Professional
Big values in PostgreSQL
A modern database should be capable of storing big values. Storing itself is not a big deal, however, operations with big values or fields are a non-trivial task. PostgreSQL has several options for storing big values, but none of them is perfect. How do we respond to this challenge? Our presentation answers this question, let's see how to store big and complex values in Postgres properly, and how operate with them.
-
Igor Kosenkov Postgres Professional
Disaster-tolerant cluster without data loss
Disaster-tolerant cluster implies minimal data loss in the event of the main data center disaster and switching to the backup data center. The data loss takes place due to the asynchronous replication between the main data center and the backup one. However, there's a solution that can resolve the existing problem and ensure zero data loss in the case of the main data center disaster. My talk covers this solution for zero data loss.
-
DDenis Volkov Яндекс
Introducing SPQR: Stateless Postgres Query Router
SPQR is a lightweight OLTP sharding solution written in Go. In this talk, I'm going to discuss design decisions that led us through FDW-based sharding, CustomNode-based sharding, C-implemented lightweight query routing, and finally to SPQR design.
-
Oleg Bartunov Postgres ProfessionalNNikita Glukhov Postgres Professional
SQL/JSON committed, what's next?
In this presentation, we'll talk about the newest SQL/JSON features committed to PostgreSQL 15. We'll explain how to use them, where they can help and why they make a difference. Is PostgreSQL JSON implementation fully compliant with SQL:2016? In the meantime, the next generation of the SQL standard is being developed. What will the new standard include, and how will Postgres respond to it?