seegongsik
Mis palabras
Datos

Cómo funcionan los datos distribuidos

¿Qué pasa cuando la información sigue acumulándose? Hasta un almacén grande se llena algún día. Así que creces a varios almacenes y repartes la carga entre ellos. Además, para no perder la carga si un almacén se derrumba, copias la misma carga en otro almacén. Los datos son iguales. Cuando una máquina no da abasto, repartes entre varias, y copias en varias para que nada se rompa.

01

Una máquina deja de bastar

Antes aprendimos que una base de datos
es un almacén gigante.
Guardaba a salvo y hallaba rápido.
Pero la información se acumula sin parar.
Las personas crecen, los registros crecen,
fotos y videos también entran.
Por grande que sea un almacén,
algún día se llena y ya no cabe más.
Llega un momento en que una máquina no basta.

capacidad de una máquina
Toca para añadir mas datos
0 / 8

Toca para seguir añadiendo datos. Cuando pasa la capacidad de una máquina, ya no cabe más.

Una máquina quedó completamente llena.
Quieres añadir más pero no hay sitio.
Cambias por una computadora más grande
y hasta esa se llena otra vez algún día.
Hacer crecer una máquina sin fin
tiene un límite claro.
Así que conviene cambiar de enfoque.
En vez de hacer crecer una máquina,
¿y si crecemos a varias?

02

Lo repartimos entre varias máquinas

La forma es más simple de lo que crees.
Corta los datos en piezas
y espárcelas entre varias máquinas.
En vez de una máquina gimiendo bajo todo,
cada máquina toma solo una parte.
Por ejemplo, nombres de A a M en la máquina 1,
de N a Z en la máquina 2, ese tipo de reparto.
Trocear la carga y repartirla
se llama distribución.
También se llama sharding.

piezas a repartir
A
B
C
D
E
F
máquina 1
máquina 2
máquina 3
Toca para repartir piezas entre las máquinas

Toca una pieza para repartirla entre las máquinas. Cada una guarda solo parte del todo.

La carga se esparció entre las máquinas.
El peso que cargaba una máquina se aligeró.
Cuando los datos crecen más,
solo añades una máquina más.
Entonces las piezas nuevas van a la máquina nueva.
Como puedes seguir creciendo así,
puedes guardar datos muy grandes.
Pero asoma una preocupación.
¿Y si esa máquina muere de repente?

03

Guardamos una copia de lo mismo

Repartir tiene un punto débil.
Si muere la máquina que guarda una pieza,
esa pieza entera desaparece.
Así que copiamos los mismos datos
en varias máquinas.
Aunque muera una máquina,
otra con una copia toma el relevo.
Así los datos no se rompen.
Guardar lo mismo copiado entre máquinas
se llama replicación.

Copia primero, luego apaga una máquina

Toca copiar para poner los mismos datos en varias máquinas. Apaga una y otra sigue viva, así no se rompe.

Apagando una, siguió bien.
Gracias a la copia que aguardaba.
Aquí debemos distinguir dos cosas.
La distribución, que reparte, trocea piezas
y las reparte a máquinas distintas;
la replicación, que copia, guarda lo mismo
en varias máquinas, idéntico.
Distribución es repartir; replicación es copiar.
Se parecen pero son trabajos del todo distintos.

04

Un contenedor más suelto, NoSQL

Pero cuando los datos son enormes
y deben entrar y salir muy rápido,
una tabla estricta más bien estorba.
La regla de alinear las ranuras en orden
frena la velocidad.
Así que usamos un contenedor con reglas sueltas.
En vez de tabla, cuelga un valor de una clave
y mete y saca directo.
Es el hash que vimos antes, agrandado.
Ese contenedor suelto se llama NoSQL.

tabla estricta
-
clave-valor suelto (NoSQL)
-
Toca un test para comparar los dos contenedores

Toca para comparar una tabla estricta con un contenedor clave-valor suelto. El suelto conviene al manejo enorme y rápido.

El contenedor suelto,
con menos reglas, es libre y rápido.
No hace falta alinear ranuras como una tabla;
con solo una clave metes y sacas un valor.
A cambio, la pulcritud de las filas alineadas
la sueltas un poco.
Qué ganar y qué soltar,
lo eliges según el uso.
Para datos enormes y rápidos,
este contenedor suelto encaja bien.

05

Resumamos el área de datos

Hemos recorrido un largo camino hasta aquí.
Empezamos con un contenedor para valores,
vimos la base de datos que reúne esos contenedores,
y aprendimos a hallar la fila que quieres
rápido en una tabla gigante.
El índice que crea un atajo,
las relaciones que enlazan tablas,
y el manejo que sigue a salvo si se corta a medias.
Y hoy vimos, cuando una máquina queda corta,
cómo repartirla y guardar copias.

Toca en orden los grandes hilos del area de datos para cerrarla

Toca en orden los grandes hilos del área de datos para cerrarla. (contenedor -> base de datos -> búsqueda rápida -> índice -> relaciones -> manejo seguro -> repartir y copiar)

Reunido en una línea, es esto.
Cuando los datos superan a una máquina,
los cortas y repartes entre varias (distribución),
y copias en varias para que no se rompa (replicación).
Repartir y copiar son trabajos distintos.
Para el manejo enorme y rápido,
usas NoSQL, un contenedor que afloja la tabla.
Este es el hash agrandado,
así que es el puente hacia los datos enormes
de la inteligencia artificial que veremos después.

Ahora el panorama de manejar datos
se ve de un vistazo.
Desde un contenedor pequeño llegamos
hasta una operación enorme
que reparte y copia entre máquinas.
Guardar la información a salvo,
hallarla rápido y hacerla crecer,
este oficio se vuelve el suelo
que sostiene la siguiente área, la inteligencia artificial.
Donde se reúnen los datos,
crece una máquina que piensa.

En una líneaCuando los datos crecen demasiado para una máquina, los cortas en piezas y los repartes entre varias. Esto se llama distribución, o sharding. Cada máquina guarda solo parte del todo, así que juntas pueden guardar datos muy grandes. Y para que nada se rompa cuando una máquina muere, copias los mismos datos en varias máquinas. Esto se llama replicación. La distribución, que reparte, y la replicación, que copia, son ideas distintas. La distribución trocea la carga y la reparte; la replicación guarda la misma carga en varios sitios. Para este manejo enorme y rápido, un contenedor que afloja la forma estricta de la tabla se llama NoSQL. Es como una versión mucho mayor del contenedor de hash que mete y halla un valor directo por su clave, así que se vuelve un puente hacia los datos enormes que maneja la siguiente área, la inteligencia artificial.
Datos
¿Te fue útil? Apoyar seegongsik