Speaker
Abstract
RocksDB, a key-value store built on the foundation of Log-Structured Merge-Tree data structures and originally open-sourced by Facebook, has played a significant role in shaping data systems over the past decades. However, it hasn’t seen widespread adoption in analytics databases, mainly due to the absence of native support for tight columnar encoding formats.
This talk will explore a journey of building a modern analytical database, Rockset, on top of RocksDB. We’ll discuss a key insight that enabled us to bring columnar encoding into RocksDB, achieving not only performance parity with column-oriented databases, but also allowing real-time updates. Additionally, we will highlight the architectural advantages of deploying RocksDB in the cloud, showing how we achieved compute-storage and compute-compute separation by utilizing cloud object storage for durability and multi-tenant hot storage layer for performance. Finally, we will share learnings from operating Rockset and RocksDB in production.
Interview
I am an engineer at Rockset, a search and analytics database, and my primary responsibility these days is query performance. My work ranges from low-level optimizations of hot inner loops to thinking about the performance of the system on a higher level and, finally, building tooling that helps us debug performance issues more quickly.
There are a number of challenges that we solved while building Rockset that I am happy to share with the audience. We picked RocksDB as our underlying key-value store, which brings important architectural advantages when deployed in the cloud and makes it easy to build compute-storage and compute-compute separation. However, off-the-shelf RocksDB is not performant for analytical queries due to lack of tight columnar encodings. This talk will explore both aspects - why RocksDB is great for the cloud, and how we made it perform well for analytical workloads.
This talk will be technical and will assume attendees have good knowledge of the architecture and design of data-intensive systems. The target audience will be builders and people who spend a lot of their time thinking about data, systems, and performance.
I hope they'll gain new insights into how to build data-intensive systems in the cloud, a deeper understanding of RocksDB and some tricks on how to use it as a building block of a system where performance matters.
Topics
QCon London 2024 is a three day conference for senior software engineers, architects and team leads. An international program committee of working engineers selects every session. Patterns and practices, not products and pitches.
From the same track
Tuesday 9 April
10:35 Windsor (5th Fl.) Session database Powering User Experiences with Streaming Dataflow Alana Marzoev Founder & CEO @ReadySet Streaming dataflow provides a unique solution to scaling OLTP applications by allowing for an efficient cache implementation that does not diverge from the relational model of the underlying data store. 11:45 Windsor (5th Fl.) Session ML Feature Store The Harsh Reality of Building a Realtime ML Feature Platform Ivan Burmistrov Principal Software Engineer @ShareChat In a world where AI and ML are rapidly evolving, the need for efficient Realtime Feature Platforms has never been greater. But the journey to create one is far from straightforward. 13:35 Windsor (5th Fl.) Session architecture High Performance Time-Series Database Design With QuestDB Vlad Ilyushchenko Co-Founder & CTO @QuestDB, OG Author of PSY-Probe, Geek In this talk we will explore the world of time series and unique set of problems time series present to the developers. We will discuss the engineering principles behind QuestDB's design, focusing on high performance. 14:45 Whittle (3rd Fl.) Session architecture Improving Developer Experience Using Automated Data CI/CD Pipelines Noémi Ványi, Simona Pencea Validating your code against actual production data can be challenging. We have all been at least once on the receiving end of a "test1" email subject because somebody somewhere did a test with the production database. 15:55 Windsor (5th Fl.) Session Building Databases Rockset - Building a Modern Analytics Database on Top of RocksDB Igor Canadi Founding Engineer and Architect @Rockset, Previously at RocksDB and Facebook RocksDB, a key-value store built on the foundation of Log-Structured Merge-Tree data structures and originally open-sourced by Facebook, has played a significant role in shaping data systems over the past decades. 17:05 Rutherford (4th Fl.) Unconference Unconference: Innovations in Data Engineering An unconference is a participant-driven meeting. Attendees come together, bringing their challenges and relying on the experience and know-how of their peers for solutions.