En esta página se describen las métricas de utilización del almacenamiento que proporciona Spanner.
De forma predeterminada, tus datos se almacenan en unidades de estado sólido (SSD). Puedes elegir si quieres almacenar tus datos en unidades de estado sólido (SSD) o en unidades de disco duro (HDD) mediante el almacenamiento por niveles. Para obtener más información, consulta el artículo Introducción al almacenamiento por niveles.
Métricas de almacenamiento
Spanner proporciona las siguientes métricas de almacenamiento:
- Almacenamiento total de la base de datos: la cantidad de datos almacenados en la base de datos o en las bases de datos de la instancia. Esto está sujeto al límite de almacenamiento.
- Almacenamiento total de copias de seguridad: la cantidad de datos almacenados en las copias de seguridad asociadas a la instancia o a la base de datos. El almacenamiento de copias de seguridad se almacena y se factura por separado, y no hay límite en la cantidad que puedes almacenar.
Puedes ver gráficos de estas métricas en la consola Google Cloud o en la consola de Cloud Monitoring.
Además, la utilización del almacenamiento de la base de datos se muestra en las páginas Instancias y Detalles de la instancia de la consola de Cloud.
Almacenamiento multiversión
Si usa las métricas de almacenamiento anteriores para comprobar el tamaño de sus datos con frecuencia, es posible que en ocasiones obtenga resultados que no se ajusten a sus expectativas. Por ejemplo, es posible que veas que el almacenamiento total registrado de tu base de datos se reduce en una cantidad considerable, aunque no hayas eliminado ningún dato recientemente. Por el contrario, es posible que su tamaño se mantenga relativamente igual justo después de eliminar una cantidad significativa de datos.
Estos efectos se deben a que Spanner admite el almacenamiento de varias versiones. El almacenamiento multiversión conserva todos los datos eliminados o sobrescritos en el almacenamiento y los mantiene disponibles durante un tiempo limitado para habilitar funciones que te permitan leer valores de datos anteriores, como las lecturas obsoletas y la recuperación a un momento dado. Si eliminas una gran cantidad de datos, esto no se reflejará inmediatamente en las métricas de almacenamiento de tu base de datos. Del mismo modo, si el tamaño total de una base de datos disminuye de forma aparentemente espontánea, es probable que el proceso de compactación de datos habitual de Spanner haya limpiado recientemente un gran conjunto de datos que se eliminaron o sobrescribieron hace varios días.
Spanner garantiza la disponibilidad continua de los datos eliminados o sobrescritos durante el intervalo definido por la opción version_retention_period
(una hora de forma predeterminada). Ejecuta automáticamente un proceso en segundo plano cada varios días que elimina permanentemente todos los datos obsoletos anteriores a este intervalo de conservación de versiones.
Efectos de la división
Durante los periodos de carga elevada o los puntos de acceso, Spanner usa la división como una técnica para distribuir de forma más uniforme la utilización de la CPU entre los recursos de computación aprovisionados. Un efecto secundario de la división es un aumento temporal del uso del almacenamiento. En el caso de los datos que se dividen, a lo largo del ciclo de compactación semanal, puede haber hasta dos copias del intervalo dividido original en un momento dado hasta que el ciclo haya tenido la oportunidad de reducir las divisiones y descartar las copias adicionales de los datos.
Estadísticas de almacenamiento
Todos los datos insertados en Spanner suelen aparecer en las estadísticas de almacenamiento en cuestión de minutos. Sin embargo, en algunos casos, aunque los datos se puedan leer (y sean duraderos gracias a técnicas como el registro anticipado de escritura), tardarán más en aparecer en las estadísticas de uso del almacenamiento (hasta varios días).
Esto ocurre porque todos los datos insertados (excepto una copia registrada durante la confirmación para garantizar la durabilidad y la recuperación) se almacenan temporalmente en la memoria antes de escribirse en el almacenamiento físico en segundo plano. La cantidad de datos que pueden y van a residir en la memoria, así como el tiempo que permanecerán en la memoria antes de escribirse en el almacenamiento físico, dependen del tamaño de tu proceso y del tamaño y el rendimiento de tu carga de trabajo.
Crear alertas de almacenamiento
Puedes crear alertas de almacenamiento en la consola de Cloud Monitoring. También ofrecemos una forma sencilla de crear una alerta de almacenamiento de base de datos directamente desde la consola Google Cloud . El enlace Crear política de alertas de los gráficos (consulta la captura de pantalla) te lleva a la página de creación de alertas de la consola de Cloud Monitoring y rellena automáticamente los campos correspondientes.
Recomendaciones para el uso del almacenamiento de bases de datos
Te recomendamos que el espacio de almacenamiento total de la base de datos no supere el límite de almacenamiento. De esta forma, Spanner tiene suficiente margen para funcionar con normalidad y realizar el mantenimiento rutinario de los datos.
Si te acercas al límite, es posible que Spanner te impida realizar operaciones que te hagan superarlo, como las siguientes:
- Restaurar una base de datos a partir de una copia de seguridad.
- Modificar el esquema de la base de datos (por ejemplo, añadir un índice).
- Reducir la capacidad de computación de tu instancia.
Si supera el límite de almacenamiento, Spanner intentará funcionar con normalidad, pero es posible que experimente un rendimiento inferior o un fallo debido a la presión de los recursos. Si te acercas o superas el máximo recomendado, la consola mostrará el mensaje de advertencia "La instancia ha alcanzado su capacidad de almacenamiento máxima y puede que su actividad se vea afectada" al mostrar la instancia en cuestión.Google Cloud
También puedes crear alertas en Cloud Monitoring para recibir notificaciones.
Reducir la utilización del almacenamiento de la base de datos
Para reducir la utilización del almacenamiento de la base de datos de una instancia, puedes hacer lo siguiente:
- Añadir más capacidad de computación.
- Eliminar una base de datos.
- Eliminar datos de una base de datos. Ten en cuenta que, aunque la eliminación de datos se aplica inmediatamente desde el punto de vista de la visibilidad, no afecta a la métrica de utilización del almacenamiento hasta que Spanner comprime los datos (normalmente en un plazo de 12 horas, aunque puede tardar más en algunos casos). Por lo tanto, es posible que observes un retraso entre el momento en que se eliminan los datos y el momento en que aparecen los cambios en la métrica.
En general, te recomendamos que añadas capacidad de computación a tu instancia como punto de partida. Después de añadir capacidad de computación, puedes investigar y abordar las causas principales de la alta utilización del almacenamiento.
Si quieres automatizar este proceso, puedes crear una aplicación que monitorice el uso del almacenamiento de la base de datos y, a continuación, añada y elimine capacidad de computación según sea necesario mediante el método UpdateInstance
.
Siguientes pasos
- Monitoriza tu instancia con la Google Cloud consola o la consola de Cloud Monitoring.
- Crea alertas para Spanner.
- Consulta cómo cambiar la capacidad de computación de una instancia de Spanner.