Speaker
Abstract
For real-time analytics, you need systems that can provide ultra low latency (milliseconds) and extremely high throughput (hundreds of thousands of queries per second). One example of such a system is Apache Pinot, which is excellent for real-time analytics use cases like user-facing analytics and personalization.
The users of Pinot love the speed and experience of Pinot, and want to use Pinot for all their use cases - be it internal analytics, ad hoc analytics, reporting and much more. For such use cases, you typically need to store really long retention data.
You can of course do that today, but it can get expensive to store large amounts of data in a system like Pinot, because such systems have tightly coupled storage and compute. As the total data volume grows, more resources (compute + storage) need to be provisioned, whether or not the corresponding compute resources are utilized, resulting in a high cost to serve. Plus, the fresh and recent data is often more valuable than the historical data, and typically queried more frequently, so beyond a certain retention, users are often okay with trading off slightly higher latencies in exchange for reduced cost.
One option for users is to introduce decoupled systems for historical data analytics. Such systems use cloud object storage, which reduces the cost. But that will take your latencies to the 10s of seconds range and also introduce the overhead of maintaining and operating a new system and federating queries.
To address these challenges, we added Tiered Storage for Apache Pinot in StarTree Cloud, which gives you speed of Apache Pinot, at the cost of cloud storage! In this talk, we will dive deep into how we built an abstraction in Apache Pinot to make it agnostic of where the data is located. We'll talk about how we're able to query data on the cloud directly (not downloading the entire data like lazy-loading) with sub-seconds latencies, diving very deep into all the data fetch and optimization strategies, challenges faced and learnings. We'll talk about the various ways you can configure and customize which portion of your data resides locally as tightly-coupled and which moves to the cloud, giving the best of both worlds.
Topics
QCon London 2023 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
Monday 27 March
10:35 Mountbatten (6th Fl.) Session A New Era for Database Design with TigerBeetle Joran Greef Founder and CEO @TigerBeetle The pre-recorded video of this presentation will become available within the next few hours. 11:50 Windsor (5th Fl.) Session Apache Pinot Speed of Apache Pinot at the Cost of Cloud Object Storage with Tiered Storage Neha Pawar Founding Engineer @StarTree For real-time analytics, you need systems that can provide ultra low latency (milliseconds) and extremely high throughput (hundreds of thousands of queries per second). 13:40 Churchill (Ground Fl.) Session Microservices Change Data Capture for Microservices Gunnar Morling Senior Staff Software Engineer @Decodableco Microservices represent complex business domains in the form of loosely coupled systems, but these don't exist in isolation: services need to propagate data changes amongst each other, in a reliable and scalable way. 14:55 Mountbatten (6th Fl.) Session transactions Amazon DynamoDB Distributed Transactions at Scale Akshat Vig Senior Principal Engineer NoSQL databases @awscloud NoSQL databases are popular for their high availability, high scalability, and predictable performance. 16:10 Mountbatten (6th Fl.) Session raft Multi-Region Data Streaming with Redpanda Michał Maślanka Software Engineer @Redpanda Real time data streaming platforms such as Redpanda have become a mission critical component in enterprise infrastructure. Multi-region deployments of streaming applications can provide important benefits, such as improved resiliency, better performance and cost reduction. 17:25 Mountbatten (6th Fl.) Session processing techniques In-Process Analytical Data Management with DuckDB Hannes Mühleisen Co-founder and CEO @duckdblabs Analytical data management systems have long been monolithic monsters far removed from the action by ancient protocols. Redesigning them to move into the application process greatly streamlines data transfer, deployment, and management.