• Learn SRE

From The Viewpoint of an SRE

Why Google’s Infrastructure Matters

You might think: “I don’t work at Google. Their infrastructure is unique. Why should I care?”

Fair question. But Google’s production environment represents the extreme end of a spectrum that most modern companies are moving toward. If you understand Google’s challenges, you’ll recognize them in your own systems (often years behind, but the pattern is the same).

Plus, many of the tools and practices SREs use today originated at Google. Understanding the context they were built for helps you use them well.


The Scale Problem

Google serves approximately 8.5 billion people on Earth. At any given moment, millions of requests hit Google’s infrastructure:

This isn’t just “a lot of traffic.” It’s heterogeneous, globally distributed, and completely unpredictable.

What does this scale mean for SREs?

ChallengeImpact
Hardware failures are inevitableIn a system of 1 million servers, dozens fail every day. You can’t prevent them; you have to design for them.
Network links breakYou might have fiber cuts between datacenters, slow interconnects, or asymmetric routing. Your system must work when the network is partially broken.
Cascading failures spread fastOne overloaded service can trigger a chain reaction that brings down unrelated services.
Observability is criticalWith thousands of services interacting, you can’t debug issues by SSHing into machines. You need structured observability.
Geographic distribution is mandatoryTo serve users globally with low latency, your data and services must exist in multiple places. This introduces consistency and replication challenges.

Google’s Infrastructure Model: Borg and Beyond

Google’s internal infrastructure is built around a workload orchestration system called Borg (the spiritual predecessor to Kubernetes, which Google open-sourced).

Borg’s model (simplified):

  1. You describe your workload (how many replicas, CPU/memory needs, deployment constraints)
  2. Borg places it on servers that have capacity
  3. Borg manages the lifecycle (restarts crashes, scales based on load, handles updates)
  4. Borg handles failures (if a server dies, your job moves to another server)

Why this matters:

In a traditional data center, you might:

With Borg/Kubernetes:

This shift is fundamental to modern SRE. It means SREs design systems, not operate machines.


Multi-Region, Multi-Cluster Architecture

Google’s services run across multiple data centers in different regions:

Why multiple clusters per region?

Why multiple regions?

The SRE challenge: Managing this distributed system coherently. How do you:

Answer: Infrastructure automation and sophisticated observability.

Service Dependencies and Latency

A single Google request (say, a search query) might touch:

Each arrow is a network call. Each service has:

If even one service is slow, the entire request slows down. If one service fails, the entire request fails.

SRE implication: You can’t think about “my service in isolation.” You must understand:


The Hardware Reality

Google operates data centers with hundreds of thousands of servers. Hardware fails constantly:

You cannot prevent these failures. So Google’s systems are designed with the assumption that hardware will fail:

  1. No single point of failure. Every component is replicated.
  2. Graceful degradation. If one replica fails, others handle the load.
  3. Automatic recovery. Orchestration systems (Borg) automatically restart services on healthy hardware.
  4. Observable failure. Logs and metrics identify what failed so humans understand the pattern.

Example: If a database server fails:

This is designed reliability, not luck.


Modern Cloud-Native Environments

If you work at a startup or mid-sized company, you probably don’t own data centers. You use cloud providers (AWS, GCP, Azure).

The good news: Cloud providers abstract much of what Google manages internally.

But the challenges are the same:

The scale is smaller, but the principles are identical.


Observable Systems vs. Black Boxes

Here’s a critical difference between Google’s infrastructure and poorly-designed systems:

Black Box (no observability):

Input → [Mystery Box] → Output
You have no idea what's happening inside. When it breaks, you're flying blind.

Observable System (Google’s approach):

Input → [Service with logs, metrics, traces] → Output
You can see:
- How many requests came in
- How many succeeded/failed
- How long each step took
- Where errors occurred
- Resource usage
- Any unusual patterns

Google’s philosophy: If you can’t measure it, you can’t improve it. And if you can’t see what’s happening inside a system, you can’t debug it or predict its failures.

This is why SREs obsess over: