The Accounter: Scaling Operational Throughput on Uber’s Stateful Platform

Jesper Borlum, Gianluca Mezzetti, Alexander Blazhenskikh
14 min readadvanced
--
View Original

Overview

The article discusses The Accounter, a global coordination system developed by Uber to enhance operational throughput and safety on its stateful platform, Odin. It details how The Accounter manages ongoing operations, enforces technology-specific policies, and allows for efficient execution of large-scale operations while maintaining cluster safety.

What You'll Learn

1

How to implement global operation coordination in a stateful platform

2

Why centralized operation management improves throughput and safety

3

When to apply technology-specific safety policies for operations

Prerequisites & Requirements

  • Understanding of stateful platforms and operational management
  • Familiarity with etcd and its transaction model(optional)

Key Questions Answered

How does The Accounter manage ongoing operations in Uber's stateful platform?
The Accounter acts as a central registry that tracks all ongoing operations, ensuring that new operations are only initiated when safe. It evaluates cluster health and ongoing operations to enforce technology-specific policies, allowing for efficient and safe execution of large-scale operations.
What are the performance metrics associated with The Accounter?
The Accounter processes over 300,000 claim evaluations and more than 7 million dry-run claim evaluations per hour, demonstrating its capability to handle high operational throughput effectively.
What are the key components of The Accounter's architecture?
The Accounter architecture includes a claim granting process that utilizes etcd for transactional operations, ensuring a consistent view of ongoing operations while allowing for high throughput and safety in managing storage clusters.
What safety policies does The Accounter implement?
The Accounter implements health and limit policies to determine whether operations can be performed safely on clusters. These policies help in managing concurrent operations and ensuring that operations do not compromise cluster health.

Key Statistics & Figures

Claim evaluations per hour
>300,000
This metric highlights the high volume of operations managed by The Accounter.
Dry-run claim evaluations per hour
>7 million
This statistic demonstrates the extensive testing capabilities of The Accounter before actual operations are executed.
Active operations
>2,000
This number reflects the current operational load managed by The Accounter.
Distinct groups
>700,000
This indicates the complexity and scale of operations being coordinated across various technologies.

Technologies & Tools

Database
Etcd
Used as a key-value store to persist operations and groups, enabling transactional operations.

Key Actionable Insights

1
Implementing a global coordination system like The Accounter can significantly enhance operational efficiency in managing stateful platforms.
By centralizing operation management, teams can focus on necessary operations without worrying about safety concerns, which streamlines processes and reduces the need for extensive planning.
2
Establishing technology-specific safety policies is crucial for maintaining cluster health during operations.
These policies ensure that operations are only initiated when the cluster is in a healthy state, preventing potential disruptions and maintaining system reliability.
3
Utilizing etcd for transactional operations allows for a consistent view of ongoing operations, which is essential for high throughput.
This approach minimizes the risk of operational conflicts and ensures that changes are committed safely, enhancing overall system performance.

Common Pitfalls

1
Overly conservative safety policies can hinder operational throughput.
When safety policies are too restrictive, they can block necessary operations, leading to inefficiencies in managing workloads and potentially causing delays in critical tasks.

Related Concepts

Stateful Platforms
Operational Management
Transaction Management
Safety Policies In Distributed Systems