Interview with Tembo
Any views or opinions represented or expressed in this interview belong solely to the interviewee and do not necessarily represent those of the PGConf.EU 2023 organization, PostgreSQL Europe, or the wider PostgreSQL community, unless explicitly stated.
- Which of your company's contributions to the PostgreSQL Project (code/community/conference) are you most proud of?
Our proudest contribution to the Postgres community to date is the Trunk package manager and registry for Postgres extensions. While it began as an internal project, we quickly made it open source because of the value we felt it offered the community.
The Postgres extension ecosystem is alive and flourishing. With frameworks such as PGXS and PGRX, for developing C and Rust-based extensions, respectively, the options available to users are becoming more numerous, nuanced, and excitingly complex. In response, there is an increasing need for streamlining extension discoverability and use. Trunk lowers this bar by offering a platform where users can navigate developer-centric categories to a given extension page; a metadata-enriched space where developers can showcase their work.
Trunk-hosted extensions are made possible in part by its companion CLI. By leveraging the tool’s current command suite, its users can build, publish, and install extensions. In addition to expanding the CLI’s capabilities even further, our vision is for Trunk to continue supporting more Postgres versions and computer architectures. Visit Trunk at http://pgt.dev/ to learn more!
- In which areas do you expect PostgreSQL to grow most and how does your company contribute to and benefit from that growth?
Postgres’ open model and extensibility create a very robust and fertile foundation for innovation and collaboration. We believe that Postgres can enable any workload with the right set of extensions.
You might have noticed that extensions are a big theme for us at Tembo. We are building Trunk and we believe that it is going to enable a renaissance for extensions on Postgres, by providing an environment where it is easy to distribute, install and use them. Imagination is the limit for the different use cases that can thrive when extensions become clear, seamless, and easily integrated.Some exciting ones:
- Hydra enabling fast columnar storage on Postgres: http://github.com/hydradatabase/hydra
- The endless ML-driven use cases with pg_vector and postgresml: http://github.com/postgresml/postgresml
- ML was always about the data, and what better space to innovate than Postgres for this?
- The broad functionality enabled by Supabase’s various extensions: http://github.com/supabase/supabase
- Message queues on Postgres - our own pgmq extension: http://github.com/tembo-io/pgmq
These are only a few well-known examples, but we are most excited about the ones that we have not imagined yet.
- What is your PostgreSQL centered product?
At Tembo, our main product is called ‘Stacks’ - these are pre-configured, use-case-specific auto-tuned Postgres instances for different use cases. Stacks are 100% Postgres and fully open source with PostgreSQL License. We believe that often users end up with databases, systems, and “solutions” they actually don’t need simply because they don’t know how to use Postgres to solve their current problem. By giving them a clear, optimized Postgres solution designed for their specific need, Stacks help our users avoid the pains associated with learning, managing and deploying other database systems.
Currently, we have Stacks designed for OLTP, Message Queue, Data Warehouse, Enterprise LLM, and Document Store use cases, and we are continuing to add more to the list. A stack is expressed as a spec file that includes Docker base image, curated set of extensions, hardware profile best suited for the workload, optimized configs, metrics and monitoring.
If you are curious to try a use-case optimized Postgres instance, check out Tembo Cloud at http://cloud.tembo.io or from our Github repository at http://github.com/tembo-io/tembo-stacks. Any feedback and contributions are welcome!