Computación en la Nube · Ingeniería de Datos

Almacenamiento y cómputo elástico

Seleccionar primitivas de nube para datos —objetos, bloques, máquinas y autoescalado— y dimensionar cómputo elástico que crece y se encoge según la carga.

Almacenamiento y cómputo elástico

La primitiva sigue a la carga Un bucket de objetos guarda billones de archivos con una URL y sin servidor que cuidar; una máquina virtual con disco de bloque rinde para una base transaccional. La elasticidad añade o quita cómputo según la demanda real.

Almacenamiento de objetos

Guarda datos como objetos inmutables con metadatos en un espacio plano, accedidos por API. Es barato, duradero y escala casi sin límite: el lugar natural de un lago de datos, backups o ficheros servidos web.

Bloque y archivo

A la izquierda, servidores de tamaño creciente siguen una curva de demanda que sube; a la derecha, baldas con cubos de almacenamiento y uno de ellos baja a casilleros escarchados.
El cómputo crece con la carga y el dato viaja a niveles más fríos cuando envejece.

Máquinas y contenedores

El cómputo llega como máquinas virtuales, contenedores orquestados o funciones sin servidor. La elección va de control y arranque: la máquina da un entorno completo, la función arranca por evento y no paga ocioso.

Autoescalado

El autoescalado suma o retira instancias según métricas como uso de cpu o cola de mensajes. Convierte un pico de tráfico en capacidad extra durante un rato y luego la devuelve, afinando coste y rendimiento a la vez.

Escalar vertical y horizontal

Vertical añade potencia a una máquina, con techo físico y reinicios; horizontal añade máquinas iguales, más escalable pero que pide diseño sin estado o reparto de carga. Para datos, horizontal suele ganar.

Enfriar y recuperar

El ciclo de vida de objetos mueve datos fríos a almacenamiento barato y los recupera cuando hace falta. Poner reglas de transición y expiración es donde más se ahorra sin tocar arquitectura.

El coste de la pereza

Lo elástico no es gratis si se configura mal: instancias olvidadas, volúmenes huérfanos y transferencia entre regiones erosionan el ahorro. La elasticidad que no se vigila se convierte en factura.

Errores frecuentes

Ejemplo resuelto: dimensionar un pipeline con picos del lunes

Un flujo de datos se desborda cada lunes por la mañana y queda ocioso el resto de la semana. El diseño:

  1. Caracterizar la carga: escritura masiva concentrada y lecturas raras del histórico.
  2. Elegir objetos con nivel frío y ciclo de vida para el histórico que casi nadie lee.
  3. Dimensionar el cómputo con autoescalado horizontal activado por cola de mensajes.
  4. Fijar un máximo de instancias y una terminación rápida para no pagar la punta siempre.
  5. Guardar el resultado en bloque solo lo que una base consulta con frecuencia.

¿Para qué sirve en la realidad?

Toda carga irregular, de la telemetría al procesamiento mensual, vive de esta elección. La primitiva correcta y un autoescalado bien acotado convierten un pico temido en un coste marginal.

Un servicio necesita un repositorio barato para el histórico de telemetría que casi nunca se lee pero debe durar años. La primitiva más adecuada es:

El autoescalado horizontal consiste en añadir más potencia a una única máquina.

Elasticidad

Repositorio plano de objetos inmutables por API
bucket
Almacenamiento rápido tipo disco para bases
bloque
Sumar instancias según métricas es...
autoescalado
Añadir potencia a una máquina en vez de máquinas es escalar...
vertical
Reglas que mueven datos a niveles más baratos por edad son de ciclo de...
vida

Ordena las decisiones al dar de alta una carga de datos en la nube:

Carga
Primitiva
Computo
Ciclo

Almacenamiento de objetos
Cómo funciona el almacenamiento de objetos y sus casos frente al de bloque.

Une cada primitiva con su terreno natural.

La primitiva sigue a la carga

# Nube elástica
## Datos
### objeto masivo
### bloque veloz
### archivo compartido
## Cómputo
### máquina completa
### función por evento
## Escalar
### vertical con techo
### horizontal sin estado
## Ciclo de vida
### a frío por edad
### expirar lo muerto

Qué es el autoescalado
Explicación del escalado automático por demanda y sus políticas.

Tu pipeline de datos tiene picos cada lunes por la mañana y está casi ocioso el resto. ¿Qué configuración de cómputo y de ciclo de vida de objetos aplicas para no pagar la punta siempre?