Speaker Interview: Tatsuro Yamada

AUTO PLAN TUNING USING FEEDBACK LOOP   Friday 10:50   Berlin

Company website: www.ntt.co.jp Company GitHub: ossc-db

Could you briefly introduce yourself?

I am working as a DB engineer at NTT Open Source Software Center in Japan and usually provide consultancy and support services for PostgreSQL to NTT group. I'm also continuing to develop extensions and PostgreSQL core about four years ago.

As a matter of fact, before joining PostgreSQL, I was a DBA specializing in Oracle and a consultant, and I have the experience of supporting NTT's communication infrastructure System. I liked the ornate atmosphere of Oracle, but I am attracted to PostgreSQL now, because it is possible to develop while talking with various people with different backgrounds and implement my own ideas and improve PostgreSQL.

How do you engage with the PostgreSQL Community?

From the development point of view, I contribute to the implementation of various push-down capabilities in oracle_fdw. Furthermore, in PostgreSQL development, I'm focusing on DBA and user assistance functions based on experience when I was a DBA.

Regarding conferences, I've spoken at various community conferences and corporate events in Japan organized by JPUG, PGEcons (PostgreSQL Enterprise Consortium), etc., and also in PGCon, Ottawa in 2016. I am involved in raising the PostgreSQL community in Asia as a member of organizer of PGConf.Asia held every year in Tokyo. I was in charge of the selection of keynote speakers last year.

Have you enjoyed previous pgconf.eu or FOSDEM conferences, either as attendee or as speaker?

I've only been to a PGConf.EU conference as attendee once (the one in Warsaw last year), which had a lot of interesting talks and friendly participants, not to mention the beautiful venue. I've also heard from my colleagues who have been to the previous PGConf.EU conferences that they were wonderful. If the company allows me, I'd like to participate in PGConf.EU every year. I would also like to emulate the organizer's excellent planning and management skills.

What will your talk be about, exactly? Why this topic?

In short, my presentation is an experiment and consideration concerning the automation of plan tuning which was carried out to obtain an efficient plan.

Specifically, we have created an extension named pg_plan_advsr that automatically corrects the estimated row number by incorporating the idea of feedback loop, and measured the effect with queries containing many joins. As a result, I succeeded in getting performance improvement of about 200%, so I will share all the mechanisms, usage, and expected merits for the development of the community.

I think that this talk will be of help to those who need plan tuning and who want to improve planner. Then, Automatic plan tuning can be useful those who are trying to realize autonomous database operation in their deployments.

I will be glad if after attending the talk, some of the attendees will be inspired to work with me on this topic.

What is the audience for your talk?

The following people are assumed.

  • People who wants to shorten the execution time of complex queries (Those who are interested in plan tuning, but struggling): By using automatic plan tuning, it may be possible to shorten its execution time!
  • Interested in planner's research and improvement: I consider plan after plan tuning as optimal plan, By comparing it with the plan before tuning, I think that it can be used to improve planner's cost calculation (row number estimation).
  • Those who are considering realization of autonomous DB: My automatic plan tuning is currently positioned as an advisor, but there is a possibility that it can develop into a mechanism that works autonomously by having a certain criterion.

What is the one feature in PostgreSQL 11 which you like most?

Dynamic partition pruning, partitionwise join/aggregate, because they're likely to improve the performance of analytic queries.

Which other talk at this year’s conference would you like to see?

GENERAL:

DBA:

DEVELOPER:

HACKER: