
Shinya Kato
Database Engineer @ NTT DATA Group Corporation
I am a database engineer at the NTT DATA Group Corporation. My primary responsibilities include support, research and development (R&D), and maintaining several extensions for PostgreSQL. In the support team, we handle over 100 inquiries annually. Our R&D work on PostgreSQL covers topics such as PostgreSQL on Kubernetes and Neon, a software solution for separating compute and storage in PostgreSQL.
POSETTE 2025 Talk
Can We Use Rust to Develop Extensions for PostgreSQL?
One of PostgreSQL's greatest strengths is its extensibility. Traditionally, extensions have been written in C, but in recent years, Rust has emerged as a powerful alternative for extension development. So, why should we consider Rust over the traditional C approach?
In this talk, we'll explore pgrx, a cutting-edge framework that simplifies PostgreSQL extension development in Rust. With features like safe Rust bindings for PostgreSQL's C API, a fully managed development environment, and automatic schema generation, pgrx makes it easier than ever to build robust and reliable extensions.
Drawing from my own experience implementing PostgreSQL extensions in Rust, I will share practical insights on getting started and discuss the pros and cons of using Rust. No prior knowledge of Rust is required—this talk is designed for anyone curious about modernizing PostgreSQL extension development.
Speaker
Interview
About the Speaker
-
Tell us about yourself: career, family, passions
My career started in 2020, and I've been working with PostgreSQL since then. I live with my wife in Tokyo. As for my passions, I'm really enthusiastic about contributing to open-source projects.
-
What is your icebreaker for PostgreSQL events?
What's the best PostgreSQL extension? I love pg_bulkload.
-
What would you say is your superpower?
I'm not sure if it's a superpower, but my strong curiosity about databases is a key motivator for me.
-
Which book are you reading right now and why did you choose it?
I'd like to write great Rust code, so I've started with Effective Rust.
-
What is your favorite hobby?
I love to travel all over the world, and my dream is to visit all the countries in the world!
About the Talk
-
Tell us about your talk? Why did you choose this topic?
In my talk, I will explain how we can develop PostgreSQL extensions with Rust, and pros & cons of the pgrx framework. When I was developing pg_bigmr which is a pg_bigm clone with Rust, I used pgrx but had a hard time using it because of its limited resources. This experience motivated me to choose this topic, as I want to share my learnings.
-
Who would benefit the most from your talk and why?
If you are passionate about PostgreSQL extension development or curious about how Rust fits into the picture, this talk is for you. By watching it, you will learn how to start developing PostgreSQL extensions in Rust.
-
What are you looking forward to, the most, during your talk?
During my talk, I'm most looking forward to seeing attendees get excited about the potential of Rust for accelerating PostgreSQL extension development.
-
What existing knowledge should an attendee have?
Attendees should have the ability to install PostgreSQL extensions and a keen interest in PostgreSQL extension development.
-
Which other talk at this year’s conference would you like to watch and why?
I'm looking forward to Vinod's talk "Designing for Document Databases in PostgreSQL". In this talk, I expect to learn about the architectural design choices for DocumentDB on top of PostgreSQL.
-
How do you balance technical depth with engaging storytelling in your conference presentations?
I aim to balance technical depth with engaging storytelling by making complex topics both relatable and digestible. In my talk, I'll combine a practical demo video with insights from my personal development journey. Additionally, I'll also discuss the pros and cons of five specific topics and frequently draw comparisons with traditional methods. This makes in-depth information more accessible and easier to follow. Ultimately, my goal is to deliver rich technical content in a way that is both informative and genuinely engaging.
About PostgreSQL
-
What inspired you to work with PostgreSQL?
PostgreSQL was the first RDBMS I encountered after graduating from university. During my university studies, I researched time-series databases. After graduating, while looking for a job in the database field, I came across PostgreSQL. I was immediately impressed by its robustness, its extensibility, and the strength of its open-source community. These aspects truly inspired me to dive deeper and specialize in it.
-
What is your favorite PostgreSQL feature?
My favorite PostgreSQL feature is its extensibility. We can build everything on PostgreSQL, such as a time-series database, a geographic database, a document database, a graph database and a full-text search database.
-
What is the single thing that you think differentiates PostgreSQL most from other databases?
The fact that PostgreSQL's community management doesn't depend on any specific company.
-
What is your favorite PostgreSQL extension or tool? And why?
I love pg_bulkload because it is essential to load massive data fast. And I maintain it :)
-
What advice would you give to someone starting their journey with PostgreSQL?
If they would like to start developing PostgreSQL, I recommend attending PGConf.dev because interacting with PostgreSQL committers is invaluable.
-
What are your favorite resources for learning about PostgreSQL?
My favorite resource is the PostgreSQL source code. From the source code, I can learn everything about PostgreSQL, even the details not covered in the documentation.
-
Could you share a memorable experience or challenge you faced while working with PostgreSQL?
A memorable challenge for me was submitting my first patch to PostgreSQL. I had experience developing on GitHub, but I had never worked with a mailing list based development process before, so I remember feeling quite confused at first.
-
In your opinion, what are the most common pitfalls or mistakes developers make when working with PostgreSQL?
I think a common pitfall is overlooking the necessity of VACUUM for garbage collection, which is driven by PostgreSQL's MultiVersion Concurrency Control (MVCC).
-
Which skills are a must-have for a PostgreSQL user/developer?
For a PostgreSQL user/developer, understanding at least the process architecture is a must-have. This provides foundational knowledge for effective troubleshooting and performance tuning.
-
What is the most overlooked thing about PostgreSQL?
The PostgreSQL community is built on several teams, such as the developer, packaging, and security teams.
-
PostgreSQL is opensource, did that ever help you in anyway and how?
Many times! I came across troubles which I couldn't resolve without reading the source code.
-
If you had a magic wand, what single thing would you change in PostgreSQL as it is today?
I'd like to make the transaction ID 64-bit to prevent transaction ID wraparound issues.
About POSETTE & Events
-
Have you enjoyed previous POSETTE (formerly Citus Con) conferences, either as an attendee or as a speaker? If so, what did you enjoy most about it?”
I haven't attended any previous POSETTE, so this is my first one.
-
What motivated you to speak at this year’s POSETTE: An Event for Postgres?
The key factors for me were the strong alignment of my proposed topic with the event's theme, and the fact that the talk time was exactly what I was hoping for. These elements solidified my decision to apply.
-
What other PostgreSQL events in 2025 are you excited about and why?
I'm looking forward to PGConf.dev because it is the best place to learn PostgreSQL internals.
-
What advice would you give to fellow speakers preparing for a PostgreSQL conference?
Practice over and over again to deliver a great talk to the audience.
-
What would be helpful to know for a first-time speaker?
I'd recommend checking out POSETTE speaker resources list; it's very helpful for writing attractive proposals.
-
Could you share a memorable moment from a previous PostgreSQL conference you attended or spoke at?
Postgres Ibiza 2023, where I participated as a speaker, is very memorable for me. Although it was a small conference, we were able to have some very in-depth discussions.
-
Is there anything you’d like to share with the Postgres community attending this year’s POSETTE: An Event for Postgres?
A big thank you to the POSETTE team!
Join the conversation
Use the hashtag #PosetteConf