Opciones de almacenamiento en GCP
Tags: cloud, googlecloud, database, storage
Published: 2021-02-13 20:14:46



En la nube de Google existen tres tipos de almacenamiento:

![Tipos de almacenamiento de GCP](https://dev-to-uploads.s3.amazonaws.com/i/6lbroqv9i3ktfshjp6az.png "Tipos de almacenamiento de GCP")

## Storage

Cloud Storage es un tipo de almacenamiento de objetos. Cloud Storage encripta los datos en el servidor antes de escribirlos en el disco. Se organizan en depósitos. Es como un repositorio, cada objeto es inmutable. Cloud Storage mantiene un control de versiones.

Se le puede agregar unas políticas de control de versiones (eliminar los archivos que tengan mas de X días, solo guardar los dos últimos cambios de cualquier objeto, etc.).

Existen 3 clases de almacenamiento:

- **Almacenamiento de Objetos**: Es un tipo de almacenamiento que permite acceder a ella con una clave única y conserva un grupo arbitrario de bytes que se le proporciona.

- **Almacenamiento de bloques**: En donde el SO administra los datos como fragmentos de disco.

- **Almacenamiento de archivos**: En donde los datos se administran como una jerarquía de carpetas.

##  Clases de almacenamiento Storage disponibles

- **Standard**: Ideal para datos activos que se use con frecuencia, como sitios web, videos en streaming y apps.

- **Nearline**: De bajo costo. Ideal para datos que se puede almacenar por al menos 30 días, como backups y contenido multimedia de cola larga. *Acceso una vez por mes.*

- **Coldline**: De muy bajo costo. Ideal para datos que se puede almacenar por al menos 90 días, como backups ante desastres. *Acceso una vez por trimestre.*

- **Archive**: El costo más bajo. Ideal para datos que se puede almacenar por al menos 365 días, como archivos legales. *Acceso una vez por año.*

***Todas las clases son accesibles desde el API de Cloud Storage.***
 
## Base de datos

Existen diferentes servicios de base datos:

- **Cloud Spanner**: BD relacional con alta disponibilidad y escalamiento horizontal global. *Se usa cuando se requiere alta transaccionalidad con alto rendimiento.*

- **Cloud SQL**: DB relacional administrada con escalamiento vertical. *Se usa cuando se tiene datos estructurados que requieres una relación entre si y consistencia.* Se puede usar MySQL, SQL Server y PostgreSQL.

- **Cloud Firestore**: DB noSQL de tipo documental. *Se usa para datos que no requiere una relación fuerte. Consistencia eventual*

- **Cloud BigTable**: DB columnar para análisis de datos en tiempo real. *Se usa en análisis de series de tiempo, por ejemplo, en IoT*

## Analítica

- **BigQuery**: Datawarehouse completamente administrado, optimizado para soportar análisis sobre un gran volumen de datos.

## ¿Cómo elegir que tipo de almacenamiento de base de datos necesitas? 

![¿Cómo elegir que tipo de almacenamiento de base de datos necesitas?](https://dev-to-uploads.s3.amazonaws.com/i/3ye8gndnegwtqwprh4i8.png "¿Cómo elegir que tipo de almacenamiento de base de datos necesitas?")

Fuente: 
- (Cloud Study Jam LATAM - Opciones de Almacenamiento en GCP) [https://youtu.be/0SDaT5QEHow]
- (Clases de almacenamiento) [https://cloud.google.com/storage/docs/storage-classes?hl=es#archive]