Selecciona e implementa una estrategia de almacenamiento

Last reviewed 2023-07-17 UTC

En este documento de Google Cloud Architecture Framework , se proporcionan prácticas recomendadas para implementar un sistema en función de tu almacenamiento. Aprenderás a seleccionar una estrategia de almacenamiento y a administrar el almacenamiento, los patrones de acceso y las cargas de trabajo.

Para facilitar el intercambio de datos y crear copias de seguridad y almacenar datos de forma segura, las organizaciones deben elegir un plan de almacenamiento según la carga de trabajo, las operaciones de entrada y salida por segundo (IOPS), la latencia, la frecuencia de recuperación, la ubicación, la capacidad y el formato (bloque, archivo y objeto).

Cloud Storage proporciona servicios de almacenamiento de objetos confiables y seguros, que incluyen los siguientes:

En Google Cloud, la cantidad de IOPS se escala según el espacio de almacenamiento aprovisionado. Algunos tipos de almacenamiento, como Persistent Disk, requieren replicación manual y copia de seguridad porque son zonales o regionales. En contraposición, el almacenamiento de objetos tiene alta disponibilidad y replica datos automáticamente en una sola región o entre varias regiones.

Tipo de almacenamiento

En esta sección, se proporcionan prácticas recomendadas para elegir un tipo de almacenamiento compatible con tu sistema.

Evalúe las opciones para sus necesidades de almacenamiento de alto rendimiento

Considera los discos persistentes o las unidades de estado sólido (SSD) locales para las aplicaciones de procesamiento que requieran almacenamiento de alto rendimiento. Cloud Storage es un almacén de objetos inmutable con control de versiones. El uso de Cloud Storage con Cloud CDN ayuda a optimizar los costos, en especial para los objetos estáticos a los que se accede con frecuencia.

Filestore admite aplicaciones con múltiples operaciones de escritura que necesitan un espacio compartido de alto rendimiento. Filestore también admite aplicaciones heredadas y modernas que requieren operaciones de archivo similares a POSIX, a través de activaciones de Network File System (NFS).

Cloud Storage es útil para casos de uso como la creación de data lakes y el cumplimiento de requisitos de archivo. Es necesario evaluar las características y los costos de las distintas clases de almacenamiento de Cloud Storage, ya que los costos del acceso y de la recuperación varían. Esto es especialmente importante a la hora de configurar las políticas de retención. Si quieres obtener más información, consulta Diseña una estrategia de almacenamiento óptima para tu carga de trabajo en la nube.

De forma predeterminada, todas las opciones de almacenamiento se encriptan en reposo y en tránsito mediante claves administradas por Google. Para los tipos de almacenamiento como Persistent Disk y Cloud Storage, puedes proporcionar tu propia clave o administrarlos a través de Cloud Key Management Service (Cloud KMS). Define una estrategia para manejar esas claves antes de emplearlas en datos de producción.

Elige los servicios de Google Cloud para admitir el diseño de almacenamiento

Para obtener información sobre los servicios de Google Cloud que admiten el diseño de almacenamiento, usa la siguiente tabla:

Servicio de Google Cloud Descripción
Cloud Storage Ofrece almacenamiento y recuperación de cualquier cantidad de datos en todo el mundo y en cualquier momento. Cloud Storage puede usarse para diversos tipos de situaciones, como la entrega de contenido de sitios web, el almacenamiento de datos para el archivado y la recuperación ante desastres, o la distribución de objetos de datos grandes a los usuarios a través de descargas directas.

Para obtener más información, consulta lo siguiente:
Persistent Disk Almacenamiento en bloque de alto rendimiento para Google Cloud. Persistent Disk proporciona almacenamiento SSD y unidad de disco duro (HDD) que puedes adjuntar a las instancias que se ejecutan en Compute Engine o Google Kubernetes Engine (GKE).
  • Los discos regionales proporcionan almacenamiento duradero y replicación de datos entre dos zonas en la misma región. Si necesitas IOPS más altas y baja latencia, Google Cloud ofrece Filestore.
  • Las SSD locales están conectadas físicamente al servidor que aloja tu instancia de máquina virtual. Puedes usar las SSD locales como espacio temporal en el disco.
Filestore Un servicio de almacenamiento de archivos administrado para aplicaciones que requieren una interfaz de sistema de archivos y un sistema de archivos compartido para los datos. Filestore brinda a los usuarios una experiencia sin interrupciones para combinar el almacenamiento conectado a la red (NAS) administrado con sus instancias de Compute Engine y Google Kubernetes Engine.
Cloud Storage para Firebase Creado para desarrolladores de apps que necesitan almacenar y entregar contenido generado por los usuarios, como fotos o videos. Todos los archivos se almacenan en buckets de Cloud Storage, por lo que son accesibles tanto desde Firebase como desde Google Cloud.

Elige una estrategia de almacenamiento

Para seleccionar una estrategia de almacenamiento que cumpla con los requisitos de tu aplicación, usa la siguiente tabla:

Caso práctico Recomendaciones
Quieres almacenar datos a gran escala al menor costo y el rendimiento de acceso no es un problema. Cloud Storage
Ejecutas aplicaciones de procesamiento que necesitan almacenamiento inmediato.

Para obtener más información, consulta Optimiza el rendimiento de Persistent Disk y los SSD locales.
Persistent Disk o SSD local
Ejecutas cargas de trabajo de alto rendimiento que necesitan acceso de lectura y escritura al espacio compartido. Filestore
Tienes casos de uso de computación de alto rendimiento (HPC) o de computación de alta capacidad de procesamiento (HTC). Usa clústeres para computación técnica a gran escala en la nube

Elija entre almacenamiento activo o de archivos según sus necesidades de acceso al almacenamiento

Una clase de almacenamiento es una parte de los metadatos que usa cada objeto. Para los datos que se entregan a una velocidad alta con alta disponibilidad, usa la clase de almacenamiento Standard Storage. Para los datos a los que se accede con poca frecuencia y que pueden tolerar una disponibilidad un poco menor, usa la clase Nearline Storage, Coldline Storage o Archive Storage. Si deseas obtener más información sobre las consideraciones de costos para elegir una clase de almacenamiento, consulta Precios de Cloud Storage.

Evalúa las necesidades de protección de datos y ubicación de almacenamiento para Cloud Storage

En un bucket de Cloud Storage ubicado en una región, los datos que contiene se replican de forma automática en las zonas dentro de la región. La replicación de datos entre distintas zonas protege los datos si hay una falla zonal dentro de una región.

Cloud Storage también ofrece ubicaciones redundantes en todas las regiones, lo que significa que los datos se replican en varios centros de datos separados a nivel geográfico. Para obtener más información, consulte Ubicaciones de depósitos.

Use Cloud CDN para mejorar la entrega de objetos estáticos

Para optimizar el costo de recuperación de objetos y minimizar la latencia de acceso, usa Cloud CDN. Cloud CDN usa el balanceador de cargas de aplicaciones externo de Cloud Load Balancing para proporcionar enrutamiento, verificaciones de estado y asistencia de direcciones IP Anycast. Para obtener más información, consulte cómo configurar Cloud CDN con buckets.

Patrón de acceso al almacenamiento y tipo de carga de trabajo

En esta sección, se proporcionan prácticas recomendadas para elegir patrones de acceso de almacenamiento y tipos de cargas de trabajo a fin de que sean compatibles con tu sistema.

Usa Persistent Disk para admitir el acceso de almacenamiento de alto rendimiento

Los patrones de acceso a los datos dependen de cómo se diseñe el rendimiento del sistema. Cloud Storage proporciona almacenamiento escalable, pero no es una opción ideal cuando se ejecutan cargas de trabajo que requieren mucha capacidad de procesamiento necesitan acceso de alta capacidad a grandes cantidades de datos. Para el acceso a almacenamiento de alto rendimiento, usa Persistent Disk.

Use la retirada exponencial cuando implemente la lógica de reintentos

Use la retirada exponencial cuando implemente la lógica de reintento para manejar errores 5XX, 408 y 429. Cada bucket de Cloud Storage se aprovisiona con capacidad de E/S inicial. Para obtener más información, consulte los lineamientos de distribución de acceso y porcentaje de solicitudes. Planifique un incremento gradual para las solicitudes de reintento.

Administración de almacenamiento

En esta sección, se proporcionan prácticas recomendadas para que la administración del almacenamiento sea compatible con tu sistema.

Asigne un nombre único a cada bucket

Haga que cada nombre de bucket sea único en el espacio de nombres de Cloud Storage. No incluya información sensible en el nombre de un bucket. Elige nombres de buckets y objetos que sean difíciles de adivinar. Si deseas obtener más información, consulta los lineamientos para asignar nombres a buckets y los lineamientos a fin de asignar nombres a objetos.

Mantenga los buckets de Cloud Storage privados

A menos que haya un motivo relacionado con la empresa, asegúrate de que el bucket de Cloud Storage no sea accesible de forma anónima o pública. Para obtener más información, consulta Descripción general del control de acceso.

Asigne nombres aleatorios a los objetos a fin de distribuir la carga de manera pareja

Asigna nombres aleatorios a los objetos para facilitar el rendimiento y evitar la generación de hotspots. Use un prefijo aleatorizado para los objetos siempre que sea posible. Para obtener más información, consulta Usa una convención de nombres que distribuya las cargas de manera uniforme entre los rangos de claves.

Usa la prevención de acceso público

A fin de evitar accesos indeseados a nivel de la organización, las carpetas, los proyectos o los buckets, usa la prevención de acceso público. Para obtener más información, consulta Usa la prevención de acceso público.

¿Qué sigue?

Obtén información sobre los servicios de base de datos de Google Cloud y las prácticas recomendadas, incluidos los siguientes:

Explora otras categorías en el framework de arquitectura, como la confiabilidad, la excelencia operativa y la seguridad, la privacidad y el cumplimiento.