From Minutes to Sub-Second Query Latency at Pluto TV Using StarTree Cloud Powered by Apache Pinot
Pluto TV needs real-time analytics to help its team of platform engineers identify potential ad delivery problems before they cause degraded viewer experience and revenue loss.
- monthly users
- 50m
- OPEX savings
- 20%
- query latency
- Subsecond
Company
Pluto TV is a video streaming company with global operations. It offers more than 100,000 hours of content and reached 54 million monthly active users in September 2021.
Goal
The company needs real-time analytics to help its team of platform engineers identify potential ad delivery problems before they cause degraded viewer experience and revenue loss.
Projects
Leverage the fastest, most scalable OLAP platform available – Apache Pinot – and use it to deliver real-time insights using raw data from multiple different sources.
Results
- 20%+ OPEX savings with zero dropped ads
- Reduce query latency from minutes to sub-second
- Gain capabilities to generate analytics from both real-time and batch data
- Efficiently store and process large amounts of analytical data
- Receive managed Apache Pinot cloud service and support
Overview
Pluto TV is trying to do to cable television what Netflix did to Blockbuster: Render it obsolete by providing a more accessible, more affordable, generally better solution. Pluto TV provides viewers with a digital offering that’s more like broadcast television. The platform offers 100s of channels and 1,000s of movies for free. This can all be accessed from just about any device including smart TV, phone, Roku, Xbox, tablet, computer, and more.
50 million global monthly active users tune in from roughly 30 different countries. Each viewer can access localized content, thanks to Pluto TV’s relationships with more than 400 content partners from around the world. The content includes movies, shows, documentaries, and even live entertainment like news and sports. To provide all of this content to users at no cost, the platform must be powered by advertising.
To ensure the experience is enjoyable for users and that the company remains profitable, the delivery of ads must be effective. Just as the company works to provide premium content in all areas, it must show the right ads to the right audience. The Platform Reliability Operations (PRO) team at Pluto TV leverages data analytics to confirm that ad delivery contributes to the overall quality of each viewer’s experience.
Challenge
The PRO team at Pluto TV is tasked to solve challenges related to viewer experience. As such, they need real-time insight into viewership across many different devices. They have to be able to look at how ads are performing on all of the many types of devices to which they’re distributed.
This is achieved by running analytical queries against the data that is generated from various devices. Unfortunately, their queries were being processed too slowly to provide any sort of insight that resembled real-time. “I’d write a query, go get my coffee, come back, and the query would still be running,” says Santhi Swarup Kollipara, Lead Software Engineer at Pluto TV.
Because of this slow, delayed reporting, the team would often be flying blind for hours at a time.
The team would only know something was wrong if a viewer happened to tell them that a particular channel was down. It would take the actual reporting hours to confirm the user’s complaint and provide additional clarity. Without feedback from users, the delay would prevent the team from even knowing about a problem until it had already been persisting for quite some time. To prevent costly downtime, Pluto TV needed OLTP-type response times, but they were working with data at a massive scale that came from both real-time and batch sources.
Solution
The PRO team at Pluto TV had already used multiple data warehouse products and were aware that those technologies couldn’t help them with their real-time analytics needs. They started to evaluate modern OLAP platforms that could integrate with the existing data warehouses. Ultimately, after comprehensive research and testing, they picked the solution that could satisfy their unique need to query massive amounts of data and receive instant results.
Another thing that appealed to the team was Pinot’s ability to work with various data sources right out of the box. This allowed Pluto TV to pull data from both real-time and batch sources. This allowed them to look at their product from numerous directions, providing real-time data to everyone on the engineering team and accelerating time to insights. The pipeline starts with clients’ data being written into S3 bucket. That data is then processed by Apache Spark, put into Apache Kafka, and ultimately ingested into Apache Pinot.
Managing multiple open source platforms proved to be a lot for the PRO team to manage on top of their other work. This is where StarTree Cloud was able to come in and help Pluto TV get the most from Apache Pinot.
The StarTree Cloud environment simplifies the use of Apache Pinot clusters to reduce the time and effort required. StarTree Cloud allows Pluto TV to gain the benefits of Apache Pinot without the burden of deploying and operating it themselves. Users are also able to access key features on top of the open source software.
Pluto TV takes advantage of a BYOC edition of StarTree Cloud. With this approach, the user’s data stays secure in their own cloud environment, so there is no need to egress data and move it into another cloud service. The result is a fully-managed real-time OLAP cloud experience with Apache Pinot from which Pluto TV gains:
- Streamlined cloud infrastructure resource provisioning
- Managed sizing and scaling of highly-available and highly-optimized Apache Pinot clusters
- Automatic and Regular updates and upgrades
- Observability and alerts
The engagement quickly produced an impact on the bottom line at Pluto TV.
Results
Immediate ROI through Cost Savings
The PRO team at Pluto TV uses StarTree Cloud, powered by Apache Pinot to prevent viewer experience and revenue loss from ad delivery problems in production. Real-time analytics allow them to identify problems right away, start triaging immediately, and implement solutions faster. By catching and correcting problems more quickly, they’re able to have 20%+ OPEX savings with zero dropped ads.
Identify Trends with Both Real-Time and Batch Data
Not only is Pluto TV getting the data they need right now, they’re also able to hold a great deal of historical data and access it at any time (without ballooning costs) for analytics. The team can analyze it in a way that goes far beyond a normal 10-day or 30-day view. This allows them to root out regular problem areas, see how incidents recur, and correct root causes that might otherwise hurt viewer experience.
Run Queries Instantly, Regardless of the Data Source
Their old reporting solution would take dozens of minutes to run a query, assuming the query didn’t time out. With Pinot, the same type of query can be run with sub-second latency. With their old data pipeline, they couldn’t perform real-time analysis of raw data. Pinot can access the raw data in real time, so no time is wasted moving data around to run queries on it.
Maximize Operational Efficiency
All things considered, Pluto TV has used BYOC edition of StarTree Cloud to generate ROI in multiple ways as they improve efficiency across the board. Operating more efficiently reduces the human cost of wasted time. The team is more productive, so they can focus on higher value efforts. Problems are resolved more quickly, which prevents lost business.