Administración del rendimiento y el escalado para Amazon Aurora MySQL
Escalado de las instancias de base de datos Aurora MySQL
Puede escalar las instancias de base de datos Aurora MySQL de dos formas, mediante el escalado de instancia y mediante el escalado de lectura. Para obtener más información acerca del escalado de lectura, consulte Escalado de lectura.
Para escalar el clúster de bases de datos de Aurora MySQL, modifique la clase de instancia de base de datos para cada instancia de base de datos del clúster de bases de datos. Aurora MySQL admite varias clases de instancia de base de datos optimizadas para Aurora. No utilice las clases de instancia db.t2 o db.t3 con clústeres de Aurora que tengan más de 40 TB. Para obtener especificaciones de las clases de instancia de base de datos admitidas por Aurora MySQL, consulte Clases de instancia de base de datos de Amazon Aurora.
nota
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 sobre las clases de instancia T, consulte Utilización de clases de instancia T para el desarrollo y la prueba.
Número máximo de conexiones a una instancia de base de datos Aurora MySQL
El número máximo de conexiones permitidas a una instancia de base de datos Aurora MySQL viene determinado por el parámetro max_connections
del grupo de parámetros de nivel de instancia para la instancia de base de datos.
En la siguiente tabla se indica el valor resultante predeterminado de max_connections
para cada clase de instancia de base de datos disponible para Aurora MySQL. Puede aumentar el número máximo de conexiones de la instancia de base de datos Aurora MySQL escalando la instancia hasta una clase de instancia de base de datos con más memoria o definiendo un valor más grande para el parámetro max_connections
en el grupo de parámetros de base de datos de la instancia, hasta un máximo de 16 000.
sugerencia
Si sus aplicaciones abren y cierran conexiones con frecuencia, o mantienen abierto un gran número de conexiones de larga duración, le recomendamos que utilice Amazon RDS Proxy. El RDS Proxy es un proxy de base de datos totalmente administrado y de alta disponibilidad que utiliza agrupación de conexiones para compartir conexiones de base de datos de forma segura y eficiente. Para obtener más información acerca de RDS Proxy, consulteUso de Amazon RDS Proxy para Aurora.
Para obtener más información acerca de cómo las instancias de Aurora Serverless v2 manejan este parámetro, consulte Número máximo de conexiones para Aurora Serverless v2.
Clase de instancia | Valor predeterminado de max_connections |
---|---|
db.t2.small |
45 |
db.t2.medium |
90 |
db.t3.small |
45 |
db.t3.medium |
90 |
db.t3.large |
135 |
db.t4g.medium |
90 |
db.t4g.large |
135 |
db.r3.large |
1 000 |
db.r3.xlarge |
2000 |
db.r3.2xlarge |
3 000 |
db.r3.4xlarge |
4000 |
db.r3.8xlarge |
5000 |
db.r4.large |
1 000 |
db.r4.xlarge |
2000 |
db.r4.2xlarge |
3 000 |
db.r4.4xlarge |
4000 |
db.r4.8xlarge |
5000 |
db.r4.16xlarge |
6000 |
db.r5.large |
1 000 |
db.r5.xlarge |
2000 |
db.r5.2xlarge |
3 000 |
db.r5.4xlarge |
4000 |
db.r5.8xlarge |
5000 |
db.r5.12xlarge |
6000 |
db.r5.16xlarge |
6000 |
db.r5.24xlarge |
7000 |
db.r6g.large | 1 000 |
db.r6g.xlarge | 2000 |
db.r6g.2xlarge | 3 000 |
db.r6g.4xlarge | 4000 |
db.r6g.8xlarge | 5000 |
db.r6g.12xlarge | 6000 |
db.r6g.16xlarge | 6000 |
db.r6i.large | 1 000 |
db.r6i.xlarge | 2000 |
db.r6i.2xlarge | 3 000 |
db.r6i.4xlarge | 4000 |
db.r6i.8xlarge | 5000 |
db.r6g.12xlarge | 6000 |
db.r6i.16xlarge | 6000 |
db.r6i.24xlarge | 7000 |
db.r6i.32xlarge | 7000 |
db.r7g.large | 1 000 |
db.r7g.xlarge | 2000 |
db.r7g.2xlarge | 3 000 |
db.r7g.4xlarge | 4000 |
db.r7g.8xlarge | 5000 |
db.r7g.12xlarge | 6000 |
db.r7g.16xlarge | 6000 |
db.x2g.large | 2000 |
db.x2g.xlarge | 3 000 |
db.x2g.2xlarge | 4000 |
db.x2g.4xlarge | 5000 |
db.x2g.8xlarge | 6000 |
db.x2g.12xlarge | 7000 |
db.x2g.16xlarge | 7000 |
Si crea un nuevo grupo de parámetros para personalizar su propio límite de conexión predeterminado, verá que el límite de conexión predeterminado se obtiene mediante una fórmula basada en el valor DBInstanceClassMemory
. Como se muestra en la tabla anterior, la fórmula produce límites de conexión que aumentan en 1000 a medida que la memoria se duplica entre instancias R3, R4 y R5 cada vez más grandes, y en 45 para diferentes tamaños de memoria de instancias T2 y T3.
Consulte Especificación de parámetros de base de datos para obtener más información sobre cómo se calcula DBInstanceClassMemory
.
Las instancias de base de datos de RDS para MySQL y Aurora MySQL tienen distintas cantidades de sobrecarga de memoria. Por lo tanto, el valor max_connections
puede ser diferente para las instancias de base de datos de RDS for MySQL y Aurora MySQL que utilizan la misma clase de instancia. Los valores de la tabla sólo se aplican a instancias de base de datos de Aurora MySQL.
nota
Los límites de conectividad mucho más bajos para las instancias T2 y T3 se deben a que en Aurora esas clases de instancias están pensadas solo para escenarios de desarrollo y pruebas, no para cargas de trabajo de producción.
Los límites de conexión predeterminados se ajustan para los sistemas que utilizan los valores predeterminados para otros consumidores de memoria importantes, como el grupo del búfer y la caché de consultas. Si cambia esas otras configuraciones para el clúster, considere ajustar el límite de conexión para tener en cuenta el aumento o la disminución de la memoria disponible en las instancias de base de datos.
Límites de almacenamiento temporal de Aurora MySQL
Aurora MySQL almacena tablas e índices en el subsistema de almacenamiento de Aurora. Aurora MySQL utiliza almacenamiento local o temporal independiente para archivos temporales no persistentes y tablas temporales distintas de InnoDB. El almacenamiento local incluye también archivos que se utilizan para fines tales como ordenar conjuntos de datos grandes durante el procesamiento de consultas o para operaciones de creación de índices. No incluye tablas temporales de InnoDB.
Para obtener más información sobre las tablas temporales de la versión 3 de Aurora MySQL, consulte Nuevo comportamiento de tabla temporal en Aurora MySQL versión 3. Para obtener más información sobre las tablas temporales de la versión 2, consulte Comportamiento de los espacios de tabla temporales en Aurora MySQL versión 2.
Los datos y los archivos temporales de estos volúmenes se pierden al iniciar y detener la instancia de base de datos y durante la sustitución del host.
Estos volúmenes de almacenamiento local están respaldados por Amazon Elastic Block Store (EBS) y pueden ampliarse utilizando una clase de instancia de base de datos mayor. Para obtener más información acerca del almacenamiento, consulte Almacenamiento de Amazon Aurora.
El almacenamiento local también se utiliza para importar datos de Amazon S3 mediante LOAD DATA FROM
S3
o LOAD XML FROM S3
y para exportar datos a S3 mediante SELECT INTO OUTFILE S3. Para obtener más información acerca de la importación y la exportación a S3, consulte lo siguiente:
Aurora MySQL utiliza un almacenamiento permanente independiente para los registros de errores, los registros generales, los registros de consultas lentas y los registros de auditoría para la mayoría de las clases de instancias de base de datos de Aurora MySQL (sin incluir los tipos de clases de instancias de rendimiento ampliable, como db.t2, db.t3 y db.t4g). Los datos de este volumen se retienen al iniciar y detener la instancia de base de datos y durante la sustitución del host.
Este volumen de almacenamiento permanente también está respaldado por Amazon EBS y tiene un tamaño fijo según la clase de instancia de base de datos. No puede ampliarse utilizando una clase de instancia de base de datos mayor.
En la siguiente tabla se muestra la cantidad máxima de almacenamiento temporal y permanente disponible para cada clase de instancia de base de datos de Aurora MySQL. Para obtener más información sobre la compatibilidad de la clase de instancia de la base de datos con Aurora, consulte Clases de instancia de base de datos de Amazon Aurora.
Clase de instancia de base de datos | Almacenamiento temporal/local máximo disponible (GiB) | Almacenamiento máximo adicional disponible para archivos de registro (GiB) |
---|---|---|
db.x2g.16xlarge | 1 280 | 500 |
db.x2g.12xlarge | 960 | 500 |
db.x2g.8xlarge | 640 | 500 |
db.x2g.4xlarge | 320 | 500 |
db.x2g.2xlarge | 160 | 60 |
db.x2g.xlarge | 80 | 60 |
db.x2g.large | 40 | 60 |
db.r7g.16xlarge | 1 280 | 500 |
db.r7g.12xlarge | 960 | 500 |
db.r7g.8xlarge | 640 | 500 |
db.r7g.4xlarge | 320 | 500 |
db.r7g.2xlarge | 160 | 60 |
db.r7g.xlarge | 80 | 60 |
db.r7g.large | 32 | 60 |
db.r6i.32xlarge | 2560 | 500 |
db.r6i.24xlarge | 1920 | 500 |
db.r6i.16xlarge | 1 280 | 500 |
db.r6g.12xlarge | 960 | 500 |
db.r6i.8xlarge | 640 | 500 |
db.r6i.4xlarge | 320 | 500 |
db.r6i.2xlarge | 160 | 60 |
db.r6i.xlarge | 80 | 60 |
db.r6i.large | 32 | 60 |
db.r6g.16xlarge | 1 280 | 500 |
db.r6g.12xlarge | 960 | 500 |
db.r6g.8xlarge | 640 | 500 |
db.r6g.4xlarge | 320 | 500 |
db.r6g.2xlarge | 160 | 60 |
db.r6g.xlarge | 80 | 60 |
db.r6g.large | 32 | 60 |
db.r5.24xlarge | 1920 | 500 |
db.r5.16xlarge | 1 280 | 500 |
db.r5.12xlarge | 960 | 500 |
db.r5.8xlarge | 640 | 500 |
db.r5.4xlarge | 320 | 500 |
db.r5.2xlarge | 160 | 60 |
db.r5.xlarge | 80 | 60 |
db.r5.large | 32 | 60 |
db.r4.16xlarge | 1 280 | 500 |
db.r4.8xlarge | 640 | 500 |
db.r4.4xlarge | 320 | 500 |
db.r4.2xlarge | 160 | 60 |
db.r4.xlarge | 80 | 60 |
db.r4.large | 32 | 60 |
db.t4g.large | 32 | – |
db.t4g.medium | 32 | – |
db.t3.large | 32 | – |
db.t3.medium | 32 | – |
db.t3.small | 32 | – |
db.t2.medium | 32 | – |
db.t2.small | 32 | – |
importante
Estos valores representan la cantidad máxima teórica de almacenamiento gratuito en cada instancia de base de datos. El almacenamiento local real disponible para usted puede ser inferior. Aurora utiliza un poco de almacenamiento local para sus procesos de administración, y la instancia de base de datos utiliza algo de almacenamiento local incluso antes de cargar datos. Puede monitorear el almacenamiento temporal disponible para una instancia de base de datos específica con la métrica FreeLocalStorage
de CloudWatch, descrita en Métricas de Amazon CloudWatch para Amazon Aurora. Puede verificar la cantidad de almacenamiento gratuito en este momento. También puede representar un gráfico de la cantidad de almacenamiento gratuito a lo largo del tiempo. La monitorización del almacenamiento gratuito a lo largo del tiempo lo ayuda a determinar si el valor aumenta o disminuye, o a encontrar los valores mínimos, máximos o medios.
(Esto no se aplica a .)