How does storage work across Google data centers?

Google Cloud Tech
21 Jul 202104:30

Summary

TLDREn este video, se explora cómo Google maneja el almacenamiento a gran escala, separando el almacenamiento de los sistemas de producción y conectándolos a través de una red global de fibra óptica. Se destaca la importancia de la separación entre almacenamiento y cálculo, permitiendo una escalabilidad independiente y eficiencia en el procesamiento de solicitudes. Además, se menciona la arquitectura de almacenamiento distribuido, la replicación de datos y la seguridad a través del cifrado. Finalmente, se habla de las opciones de almacenamiento en Google Cloud, incluyendo SSD locales, discos persistentes zonales y regionales, y la importancia de la red de alta velocidad para garantizar un rendimiento óptimo.

Takeaways

  • 💾 Google separa el almacenamiento de los sistemas de producción y los sistemas de computación, lo que permite una escalabilidad independiente y una mayor eficiencia en el procesamiento de solicitudes.
  • 🌐 Los datos necesarios para una máquina no están necesariamente en la misma ubicación física, gracias a la robusta red global de fibra óptica de Google.
  • 🔐 La seguridad es inherente en los sistemas de almacenamiento de Google, con todo dato cifrado antes de ser escrito en el disco.
  • 🔄 Google organiza racks de almacenamiento y computación en filas, grupos y clústeres dentro de centros de datos, cada uno con su propia infraestructura de energía, enfriamiento y red.
  • 🏭 Google ha construido su propia máquina a escala de almacén utilizando cientos de miles de máquinas relativamente económicas.
  • 🔒 Los datos se distribuyen a través de múltiples máquinas y se comparten entre diferentes cargas de trabajo, lo que mejora la utilización de la capacidad de las máquinas y proporciona una mayor confiabilidad y rendimiento.
  • 🗂️ Se utilizan sistemas como 'D' y 'Colossus' para exponer y administrar el acceso a las unidades de disco duro y SSD en los clústeres, asegurando la máxima utilización de la capacidad.
  • 📚 El sistema de archivos Colossus, construido sobre 'D', es la base para servicios como Cloud Storage y Bigtable, y permite la replicación de datos a través de máquinas para una rápida recuperación y tolerancia a fallos.
  • 🌐 Los usuarios de Google Cloud tienen la opción de almacenar datos en diferentes tipos de discos SSD, como discos persistentes locales, zonales o regionales, lo que ofrece diferentes niveles de rendimiento y disponibilidad.
  • 🌐 La distribución de datos a través de diferentes clústeres y regiones protege los datos de fallos a nivel de zona y regional, asegurando la alta disponibilidad y resistencia.

Q & A

  • ¿Cómo se conectan las unidades de disco duro y las unidades de estado sólido en los sistemas de producción de Google?

    -Las unidades de disco duro (HDD) y las unidades de estado sólido (SSD) se despliegan por separado de las aplicaciones y se pueden almacenar en un soporte de almacenamiento dedicado, como un estante.

  • ¿Qué ventaja tiene separar el almacenamiento de la computación en Google?

    -La separación del almacenamiento de la computación permite escalar ambos recursos de manera independiente según la demanda, lo que mejora la eficiencia en el procesamiento de solicitudes.

  • ¿Cómo organizan Google los racks de almacenamiento y computación?

    -Google organiza los racks de almacenamiento y computación en filas de envoltura física, agrupando grupos de envoltura en clústeres y colocando múltiples clústeres en un solo centro de datos.

  • ¿Qué es una máquina de escala de almacén y cómo se construye Google la suya?

    -Una máquina de escala de almacén es una infraestructura de computación de gran escala. Google construye la suya a partir de cientos de miles de máquinas relativamente económicas.

  • ¿Cómo se comparte el almacenamiento en los centros de datos de Google?

    -En los centros de datos de Google, es raro dedicar un dispositivo de almacenamiento entero solo para los datos de un producto o servicio. En su lugar, se distribuye el trabajo de datos a través de múltiples máquinas y los trabajos comparten el acceso de red a ese almacenamiento.

  • ¿Qué rol juega el cifrado en los sistemas de almacenamiento de Google?

    -El cifrado es inherente en los sistemas de almacenamiento de Google, y todos los datos se cifran antes de ser escritos en el disco.

  • ¿Cómo garantiza Google la durabilidad de los datos a pesar de los fallos periódicos de máquinas, racks o edificios enteros?

    -Google construye software para hacer que los datos almacenados sean duraderos, de modo que en caso de fallo, no se pierda información.

  • ¿Qué es el sistema 'D' y cómo funciona en el nivel de máquina?

    -El sistema 'D' es un sistema que expone las unidades de disco duro y SSD conectadas a máquinas individuales a otros servicios en el clúster, gestionando el acceso a la capacidad del disco de cada máquina para maximizar la utilización.

  • ¿Qué es el sistema de archivos Colossus y cómo se relaciona con el sistema 'D'?

    -Colossus es un sistema de archivos construido por Google sobre el sistema 'D', que es la base para muchos servicios como Cloud Storage y Bigtable. Los archivos en Colossus se descomponen en un conjunto de trozos que se pueden almacenar en diferentes máquinas en el clúster.

  • ¿Cómo se asegura la seguridad y eficiencia en el almacenamiento de datos en Google Cloud Services?

    -La seguridad se asegura mediante el cifrado de cada trozo de datos, cada uno con una clave de cifrado única. La eficiencia se logra a través de la distribución de datos que mejora la utilización de la capacidad de las máquinas y proporciona una alta confiabilidad y rendimiento en los servicios de Google Cloud.

  • ¿Qué opciones de almacenamiento ofrece Google Cloud a sus usuarios?

    -Los usuarios de Google Cloud pueden almacenar datos en unidades de estado sólido locales, discos persistentes zonales que se asignan a clústeres en la misma región, discos persistentes regionales a través de regiones de nube, o incluso en buckets de almacenamiento.

Outlines

00:00

💾 Sistema de almacenamiento y producción de Google

La discusión comienza con la interconexión de discos duros y unidades de estado sólido en sistemas de producción de Google. Se destaca la separación entre almacenamiento y cálculo, donde los datos se almacenan en unidades físicas separadas y se accede a través de una red global de fibra óptica. Esto permite una escalabilidad independiente y una mayor eficiencia en el procesamiento de solicitudes. Además, se describe la organización en filas, grupos y clústeres dentro de los centros de datos, y cómo cada clúster tiene su propia infraestructura de energía, enfriamiento y red, diseñada para proteger y garantizar la confiabilidad de los datos a gran escala.

Mindmap

Keywords

💡Almacenamiento

El almacenamiento se refiere a la capacidad de guardar datos en dispositivos físicos como discos duros (HDD) o unidades de estado sólido (SSD). En el guion, se menciona que los datos se almacenan en HDDs o SSDs y se separan del proceso de cálculo, lo que permite una escalabilidad y eficiencia más altas en el manejo de datos a gran escala.

💡Separación de almacenamiento y cálculo

Esta técnica implica que los sistemas de almacenamiento y los sistemas de procesamiento de datos funcionan de manera independiente. En el guion, se destaca que en Google, el almacenamiento se separa del cálculo para permitir una expansión independiente y una mayor eficiencia en el procesamiento de solicitudes.

💡Red global de fibra óptica

La red global de fibra óptica es una infraestructura de alta velocidad que permite la comunicación entre diferentes ubicaciones físicas. En el guion, se menciona que las máquinas pueden acceder a datos en diferentes ubicaciones físicas a través de esta red, lo que es fundamental para la conectividad y la accesibilidad de los datos.

💡Escalabilidad

La escalabilidad es la capacidad de un sistema para manejar crecimiento en la cantidad de trabajo o usuarios. En el guion, se discute cómo la separación de almacenamiento y cálculo permite escalar estos recursos de manera independiente según la demanda, lo que es crucial para manejar la creciente cantidad de datos y solicitudes en Google.

💡Agrupación en filas y clusters

En el guion, se describe cómo se organizan los racks de almacenamiento y cálculo en filas y clusters dentro de los centros de datos. Esto facilita la administración y la expansión de la infraestructura, y es una parte importante del diseño para la protección de datos y confiabilidad a gran escala.

💡Máquinas de granja de gran escala

Las máquinas de granja de gran escala son sistemas informáticos que consisten en un gran número de máquinas relativamente económicas trabajando juntas. En el guion, se menciona que Google ha construido su propia infraestructura de este tipo, lo que permite una mayor eficiencia y escalabilidad en el manejo de datos.

💡Distribución de carga de trabajo

La distribución de carga de trabajo se refiere a la práctica de dividir la carga de trabajo entre múltiples máquinas. En el guion, se explica que en Google, los datos de una carga de trabajo se distribuyen entre varias máquinas y se comparte el acceso a dicho almacenamiento a través de la red, lo que mejora la eficiencia y la confiabilidad.

💡Encriptación

La encriptación es el proceso de convertir datos en un formato que solo puede ser leído con una clave específica. En el guion, se resalta que la encriptación es inherente en los sistemas de almacenamiento de Google y que todos los datos se encriptan antes de ser escritos en el disco, lo que garantiza la seguridad de los datos.

💡Durabilidad de datos

La durabilidad de datos se refiere a la capacidad de los datos para permanecer intactos a lo largo del tiempo y resistir fallos. En el guion, se discute cómo Google ha desarrollado software para hacer que los datos sean duraderos, lo que significa que en caso de fallos en máquinas o racks, los datos no se pierden.

💡Colossus

Colossus es el nombre del sistema de archivos que Google ha desarrollado para manejar grandes volúmenes de datos con alta durabilidad y requisitos de latencia. En el guion, se menciona que Colossus descompone los archivos en fragmentos que se almacenan en diferentes máquinas, lo que es clave para la recuperación rápida y la tolerancia a fallos en redes.

💡Replicación de datos

La replicación de datos es el proceso de crear copias de los datos en diferentes ubicaciones para protegerlos de la pérdida. En el guion, se explica que Colossus identifica en qué máquina se debe escribir cada fragmento de datos y se replica a través de máquinas, lo que es fundamental para la recuperación y la tolerancia a fallos.

Highlights

La discusión sobre el almacenamiento en Google es inseparable de la operación de sus sistemas de producción.

Los discos duros y las unidades de estado sólido se despliegan separadamente de las aplicaciones.

El almacenamiento se separa del cálculo para permitir una escalabilidad independiente según la demanda.

Las máquinas pueden acceder a datos en ubicaciones físicas diferentes a través de una red global de fibra óptica.

El almacenamiento y los racks de cálculo se organizan en filas y clusters dentro de un centro de datos.

Cada clúster depende de su propia infraestructura de alimentación, enfriamiento y red.

Google ha construido su propia máquina a escala de almacén utilizando cientos de miles de máquinas relativamente económicas.

Es raro en Google dedicar un dispositivo de almacenamiento completo solo para los datos de un producto o servicio.

El cifrado es inherente en los sistemas de almacenamiento de Google y todos los datos se cifran antes de ser escritos en el disco.

Google ha desarrollado software para hacer que los datos sean duraderos y resistentes a fallos de máquinas, racks o edificios.

Cada capa de la pila de almacenamiento, incluidos el sistema de archivos y la capa que escribe en los dispositivos de almacenamiento, es un servicio compartido.

El sistema 'D' expone las unidades de disco duros y SSD conectadas a máquinas individuales a otros servicios en el clúster.

El sistema de archivos Colossus, construido sobre 'D', es la base para servicios como Cloud Storage y Bigtable.

En Colossus, los archivos se descomponen en conjuntos de fragmentos que se pueden almacenar en diferentes máquinas del clúster.

La replicación de datos entre máquinas es clave para la recuperación rápida y la tolerancia a fallos.

Los servicios se adaptan constantemente al uso de recursos en función de la cantidad de servicios que se ejecutan en una sola máquina.

Los usuarios de Google Cloud pueden almacenar datos en diferentes tipos de discos SSD y opciones de almacenamiento en varias regiones.

El almacenamiento se distribuye en diferentes clústeres para proteger los datos de fallos a nivel de zona y regional.

El sistema 'D' y Colossus gestionan el acceso al almacenamiento, garantizan la seguridad de los datos y utilizan eficientemente el hardware.

La velocidad de la red de Google permite que todo esto sea posible, lo que se explorará en el próximo episodio.

Transcripts

play00:00

[MUSIC PLAYING]

play00:07

STEPHANIE WONG: You can't really talk about storage at Google

play00:10

without talking about how our production systems work.

play00:13

How are all the hard disks and flash

play00:15

drives on individual machines connected?

play00:17

Let's boil it down.

play00:19

Data is stored in hard disk drives or solid state drives.

play00:22

SSDs and HDDs are deployed separately

play00:25

from the applications.

play00:26

For example, they can be stored in a dedicated storage

play00:29

tray like this one.

play00:30

In other words, we separate Storage from Compute.

play00:34

Data needed by a machine is typically

play00:36

not even in the same rack because machines

play00:38

can access data in a different physical location

play00:41

through our robust global fiber network.

play00:44

Splitting Storage and Compute lets us scale them

play00:46

independently as demand grows.

play00:48

And machines can process requests much more efficiently.

play00:51

We organize Storage and Compute racks

play00:53

into rows of physical enclosures,

play00:56

organizing groups of enclosures into clusters,

play00:58

and putting multiple clusters in a single data center.

play01:02

Each cluster depends on their own power, cooling, and network

play01:05

infrastructure, a deliberate part

play01:07

of how we design for data protection and reliability

play01:10

at scale.

play01:12

We've built our own warehouse-scale machine out

play01:14

of hundreds of thousands of relatively inexpensive

play01:17

machines.

play01:18

At Google, it's rare to dedicate an entire storage

play01:21

appliance in our data center for storing only one

play01:24

product or service's data.

play01:25

Instead, we spread a workload's data across multiple machines,

play01:29

and workloads share network access to that storage.

play01:32

Encryption is inherent in our storage systems,

play01:35

and all data is encrypted prior to being written to disk.

play01:38

But how does Google make storage accessible and scalable

play01:42

across a global fleet of machines?

play01:44

Remember, at planetary scale, it's

play01:46

not unusual for individual machines, racks,

play01:49

or even entire buildings to periodically fail,

play01:52

so we need to build software to make the data stored on them

play01:55

durable.

play01:56

That way, when they fail, no data is lost.

play01:59

Every layer of our storage stack,

play02:01

down to the file system and the layer that writes to storage

play02:04

devices, is a shared service.

play02:07

Services like Search, Photos, and Gmail

play02:10

workloads share machines at the data centers.

play02:13

Resources within each machine, like Compute and Memory,

play02:16

are allocated to each service.

play02:19

At a machine level, disk, or D for short,

play02:22

is a system that exposes the hard disk and SSD drives

play02:25

attached to individual machines to other services

play02:27

in the cluster.

play02:29

It manages access to each machine's disk capacity

play02:31

to maximize utilization.

play02:34

At the cluster level, most data we store

play02:36

has high durability and latency requirements,

play02:39

so we built a file system called Colossus on top of D, which

play02:43

is the foundation for many services like Cloud Storage

play02:46

and Bigtable.

play02:48

At the Colossus level, files are broken down

play02:50

into a set of chunks that can be stored on different machines

play02:53

in the cluster.

play02:55

This data replication across machines

play02:57

is the key to fast recovery and fault

play02:59

tolerance against things like network failures.

play03:03

For a given chunk, Colossus identifies a machine

play03:06

to write the chunk to, and the client sends the chunk

play03:08

to the D service that runs on the target machine

play03:11

to perform the write.

play03:13

Security is ensured through the encryption of each chunk,

play03:16

and each chunk has a unique encryption key.

play03:19

Because a single machine can be running multiple services,

play03:22

and conversely, a service can be running on many machines,

play03:26

services are constantly adapting to the amount

play03:28

of resources they use.

play03:30

Now you can see how distributed data better utilizes

play03:32

our machine capacity and gives Google Cloud Services higher

play03:36

reliability and performance.

play03:38

For Google Cloud users, you have the option

play03:40

to store data on local solid state drives,

play03:43

zonal persistent disks that map to clusters across zones

play03:46

in the same region, or regional persistent disks

play03:50

across cloud regions or even storage buckets.

play03:52

You can store data in a single region for high performance,

play03:55

dual region for high performance and high availability,

play03:58

and multiple regions for the highest availability.

play04:01

Your data maps to different clusters

play04:03

and protects it from zonal and regional failures.

play04:06

D and Colossus manage access to the storage, store data safely

play04:10

and securely, and efficiently use our hardware

play04:13

so you get the best performance possible.

play04:15

All of this is possible because of the speed of our network

play04:18

fabric.

play04:19

More on that next time on Discovering Data Centers.

play04:22

[MUSIC PLAYING]

Rate This

5.0 / 5 (0 votes)

相关标签
AlmacenamientoGoogleEscalabilidadRed GlobalSeguridadDistribuidoColossusDurabilidadCloudHardware
您是否需要英文摘要?