Solución de problemas de almacenamiento - Amazon Aurora

Solución de problemas de almacenamiento

Si la cantidad de memoria de trabajo que necesitan las operaciones de ordenación o creación de índices supera la cantidad asignada por el parámetro work_mem, Aurora PostgreSQL escribe los datos que sobran en archivos de disco temporales. Cuando escribe los datos, Aurora PostgreSQL usa el mismo espacio de almacenamiento que para almacenar los registros de errores y mensajes, es decir, el almacenamiento local. Cada instancia de su clúster de base de datos de Aurora PostgreSQL tiene una cantidad de almacenamiento local disponible. La cantidad de almacenamiento se basa en su clase de instancia de base de datos. Para aumentar la cantidad de almacenamiento local, debe modificar la instancia para usar una clase de instancia de base de datos más grande. Para ver las especificaciones de clase de instancia de base de datos, consulte Especificaciones de hardware para clases de instancia de base de datos para Aurora.

Puede supervisar el espacio de almacenamiento local de su clúster de base de datos de Aurora PostgreSQL observando la métrica de Amazon CloudWatch para FreeLocalStorage. Esta métrica indica la cantidad de almacenamiento disponible en cada instancia de base de datos para las tablas y los registros temporales del clúster de base de datos de Aurora. Para obtener más información, consulte Supervisión de métricas de Amazon Aurora con Amazon CloudWatch.

Las operaciones de ordenación, indexación y agrupación comienzan en la memoria de trabajo, pero a menudo deben descargarse al almacenamiento local. Si su clúster de base de datos de Aurora PostgreSQL se queda sin almacenamiento local debido a este tipo de operaciones, puede resolver el problema mediante una de las siguientes acciones.

  • Aumente la cantidad de memoria de trabajo. Esto reduce la necesidad de utilizar el almacenamiento local. De forma predeterminada, PostgreSQL asigna 4 MB para cada operación de ordenación, agrupación e indexado. Para comprobar el valor actual de la memoria de trabajo de la instancia de escritor de su clúster de base de datos de Aurora PostgreSQL, conéctese a la instancia utilizando psql y ejecute el siguiente comando.

    postgres=> SHOW work_mem; work_mem ---------- 4MB (1 row)

    Puede aumentar la memoria de trabajo a nivel de sesión antes de ordenar, agrupar y realizar otras operaciones, como se indica a continuación.

    SET work_mem TO '1 GB';

    Para obtener más información sobre la memoria de trabajo, consulte Consumo de recursos en la documentación de PostgreSQL.

  • Cambie el período de retención de registros para que los registros se almacenen durante períodos de tiempo más cortos. Para saber cómo hacerlo, consulte Archivos de registro de bases de datos de Aurora PostgreSQL.

Para clústeres de base de datos de Aurora PostgreSQL de más de 40 TB, no utilice las clases de instancia db.t2, db.t3 o db.t4g. Recomendamos que las clases de instancia de base de datos T se utilicen solo para los servidores de desarrollo y de pruebas, o para otros servidores que no se utilicen para la producción. Para obtener más información, consulte Tipos de clase de instancia de base de datos.