Systems @Scale 2019 recap

Operating systems that serve millions (or even billions) of people can present unprecedented, complex engineering challenges. Last year, we launched the Systems @Scale conference to bring together …

9 min readadvanced
--
View Original

Overview

The article provides a recap of the Systems @Scale 2019 conference, highlighting discussions on engineering challenges faced by operating systems serving millions of users. It features insights from various speakers on topics such as distributed tracing, continuous deployment, and scalable storage solutions.

What You'll Learn

1

How to implement a low-dependency storage system for control plane applications

2

Why Apache Hive's enhancements are critical for enterprise data warehousing

3

How to leverage distributed tracing for microservices observability

4

When to apply preemption in cluster orchestration for heterogeneous workloads

Key Questions Answered

What are the key innovations in Apache Hive for big data warehousing?
Apache Hive has evolved from a batch tool to an enterprise-grade data warehousing system by adding row-level transactional capabilities, optimization techniques for view hierarchies, and runtime improvements for query latency. These enhancements maintain the original characteristics that made Hive popular while expanding its utility for modern data operations.
How does Delos improve storage for Facebook's control plane?
Delos is a low-dependency storage system designed for control plane applications at Facebook. It offers a rich API with features like transactions and secondary indices, while also being extensible to support new APIs and performance requirements, allowing for flexible adaptations without complete system rewrites.
What challenges does LinkedIn face with the PYMK recommendation service?
LinkedIn's People You May Know (PYMK) service encounters challenges in processing large volumes of data in real-time for accurate recommendations. The integration with Venice, a key-value store, is crucial for managing derived data efficiently, necessitating collaboration to enhance system architecture for scalability.
What strategies does Facebook use for disaster recovery at scale?
Facebook employs a multi-faceted approach to disaster recovery, addressing large-scale failures by distributing hardware across fault domains and implementing traffic shifting strategies. This proactive design ensures resilience against significant events that could impact data center operations.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Data Warehousing
Apache Hive
Used for enterprise-grade big data operations with enhancements for transactional capabilities.
Storage System
Delos
Provides low-dependency storage solutions for Facebook's control plane applications.
Key-value Store
Venice
Supports LinkedIn's PYMK service by managing derived data for real-time recommendations.
Observability
Jaeger
Used by Uber for distributed tracing to monitor microservices.
Observability
Canopy
Facebook's tracing system for detailed insights into web and mobile applications.

Key Actionable Insights

1
Implementing a low-dependency storage system like Delos can significantly enhance your control plane applications.
By adopting a system that supports flexible APIs and quorum-style guarantees, you can improve both availability and durability in your applications, leading to better performance and reliability.
2
Utilizing distributed tracing tools like Canopy and Jaeger can provide deep insights into microservices architectures.
These tools help identify failures and performance bottlenecks, enabling faster resolutions and improved system reliability, which is crucial for maintaining user satisfaction.
3
Continuous deployment practices are essential for scaling development processes in large organizations.
By automating the build, test, and deployment processes, teams can ensure that changes are delivered quickly and safely, which is vital for maintaining competitive advantage in fast-paced environments.

Common Pitfalls

1
Failing to account for the scale of data and user interactions can lead to performance bottlenecks.
Many systems are designed without considering the high volume of transactions and data processing required at scale, which can result in slow response times and user dissatisfaction.
2
Neglecting the importance of observability can hinder troubleshooting efforts.
Without proper monitoring and tracing systems, identifying the root cause of issues in complex microservices architectures becomes significantly more challenging, leading to prolonged downtimes.

Related Concepts

Distributed Systems Design
Microservices Architecture
Data Warehousing Techniques
Observability Best Practices