<img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=2826169&amp;fmt=gif">
Start  trial

    Start trial

      img-badge-people-learning-with-teacher-and-students-01I had the pleasure of speaking at PGConf.dev in Montreal, where I delivered a session on Columnar Data Store—a topic that’s quietly transforming the way we handle large-scale analytics in PostgreSQL. In this post, I’ll walk you through the core ideas from my talk and explain why columnar storage isn’t just a performance boost—it’s a game changer for modern data workloads.

      See how Vertical Clustered Index (VCI) for PostgreSQL can enhance real-time data analysis while maintaining update performance.

      What is PostgreSQL Development Conference (PGConf.dev)?

      PGConf.dev is an international conference where PostgreSQL developers and community organizers gather once a year to deliver various presentations and discuss features under development. While numerous PostgreSQL conferences of varying sizes are held worldwide, one distinguishing feature of the PGConf.dev I attended is the significant participation of developers and organizers from local PostgreSQL communities. This conference serves as a crucial platform for lively discussions on new features and functional improvements for future versions, thereby determining the future direction of PostgreSQL.

      Furthermore, this year's PGConf.dev was preceded by the Extension Ecosystem Summit, an event focused on the development of extensions, held at the same venue. This demonstrates the community's dedication to developing extensions for the ecosystem, aiming to make PostgreSQL more user-friendly.

      Fujitsu's participation and presentations

      Eight members from Fujitsu participated in this conference—Hayato Kuroda, Ajin Cherian, Zhijie Hou, Gary Evans, Nishchay Kothari, Tim Steward, Marcos Figueiredo, and myself. That is an impressive turnout that once again demonstrates Fujitsu's commitment to the PostgreSQL community.

      Regarding the presentations, Hou and Ajin spoke about logical replication, while Gary and Nishchay presented on learned indexes:

      Presentation content: A journey toward the Columnar Data Store

      In my presentation, I discussed the Vertical Clustered Index (VCI), a columnar indexing feature.

      Specifically, I explained implementation ideas for achieving columnar search capabilities while maintaining update speeds, presented performance measurement results, and outlined features that require future development and consideration within the community.

      Analyzing business data and utilizing the results for decision-making has become essential in many industries in recent years. For example, in e-commerce businesses that sell products and services online, sales data is used to optimize inventory. To leverage business data for information analysis in this way, features that can achieve high search performance, such as columnar store functionality, are necessary.

      Business data is constantly generated in operations. General columnar store features often have update performance as a bottleneck. Therefore, the linkage between RDBMS, where data is frequently rewritten, and columnar data is performed periodically. This means that even if RDBMS data is updated, there is a time lag until it is converted into columnar data.

      VCI can address the demand for real-time data analysis, including data that has just been generated. By using VCI, it is possible to maintain update performance while achieving high-speed columnar searches using the latest data.

      Real-time utilization of business data

      Implementation of Vertical Clustered Index

      VCI achieves high-speed data retrieval using a columnar store while maintaining update performance by combining two storage structures: Write Optimized Storage (WOS) specialized for writing and Read Optimized Storage (ROS) for the columnar store part.

      There are two key innovations in this design. First, to prevent degradation of OLTP update performance, the conversion of generated data to columnar format is performed asynchronously. Second, there is a mechanism to make all data, including newly updated data, searchable. Since the conversion to columnar format is executed asynchronously, there may be updated data that does not yet exist in the columnar store depending on the timing. VCI's scan mechanism scans both data that is already in columnar format and data that has just been updated.

      Vertical Clustered Index mechanism

      In the presentation, I explained the process step-by-step, covering index creation, searching within tables, updating data within tables, searching after updates, and asynchronous data reflection.

      Effects of Vertical Clustered Index

      I also explained the effects of VCI using performance measurement results. In TPC-H measurements, when comparing VCI scans with OSS parallel scans, VCI scans were found to be approximately 4.4 times faster than OSS parallel scans.

      Performance measurement by TPC-H Scan

      Furthermore, we compared the difference in update processing performance between cases where VCI was configured and where it was not. As a result, it was confirmed that there was almost no performance difference between the two. Although configuring VCI slightly increases internal processing, meaning there is not zero degradation, the performance impact on OLTP is minimal even when VCI is configured.

      Performance difference in update processing

      After the presentation, I received numerous questions. Many of them were technical, reaffirming that PostgreSQL developers have a strong interest in VCI and columnar features. Furthermore, regarding the concept of the feature, I received positive comments from many developers, including committers.

      In addition to the presentation, I participated in an Advanced Patch Feedback Session, where I received direct feedback from committers on the patches I submitted, gaining specific advice on how to proceed with committing the VCI patch. I was also able to deepen discussions about VCI with developers knowledgeable in columnar features, and received valuable advice and feedback on the feature from many developers, including committers.

      Diving in

      Below, I share the slides from my presentation at PGConf.dev 2025:

       

      Side by sideClick to view the slides side by side
      Top to bottomClick to view the slides in vertical orientation

      Conclusion

      Presentations at PGConf.dev are only given by titles selected by the review committee from among those submitted through the Call for Papers. At this year's PGConf.dev, three sessions were presented by Fujitsu members. We intend to continue contributing to the PostgreSQL community consistently and enthusiastically.

      Regarding VCI, development is currently underway within the community, and we are confident that once completed, it will be a feature that enhances the value of PostgreSQL and significantly contributes to the entire community, including users. Development of VCI is progressing in this thread, so if you are interested, please join us in development.

      You can watch my presentation alongside presentation materials here.

      Subscribe to be notified of future blog posts
      If you would like to be notified of my next blog posts and other PostgreSQL-related articles, fill the form here.
      We also have a series of technical articles for PostgreSQL enthusiasts of all stripes, with tips and how-to's.

       

      Explore PostgreSQL Insider >

      Topics: PostgreSQL, Vertical Clustered Index, PostgreSQL event, PGConf.dev

      Receive our blog

      Search by topic

      see all >

      Read our latest blogs

      Read our most recent articles regarding all aspects of PostgreSQL and Fujitsu Enterprise Postgres.

      Receive our blog

      Fill the form to receive notifications of future posts

      Search by topic

      see all >