Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Calcule el tamaño del motor de Amazon RDS para una base de datos de Oracle mediante informes de AWR
Creado por Abhishek Verma (AWS) y Eduardo Valentim (AWS)
Resumen
Al migrar una base de datos de Oracle a Amazon Relational Database Service (Amazon RDS) o Amazon Aurora, el cálculo de la CPU, la memoria y las E/S del disco de la base de datos de destino es un requisito clave. Puede estimar la capacidad requerida de la base de datos de destino analizando los informes del repositorio automático de cargas de trabajo (AWR) de Oracle. Este patrón explica cómo utilizar los informes de AWR para estimar estos valores.
La base de datos Oracle de origen puede estar en las instalaciones o alojada en una instancia de Amazon Elastic Compute Cloud (Amazon EC2), o puede ser una instancia de base de datos de Amazon RDS for Oracle. La base de datos de destino puede ser cualquier base de datos de Amazon RDS o Aurora.
nota
Las estimaciones de capacidad serán más precisas si el motor de base de datos de destino es Oracle. En el caso de otras bases de datos de Amazon RDS, el tamaño del motor puede variar debido a las diferencias en la arquitectura de la base de datos.
Le recomendamos que realice la prueba de rendimiento antes de migrar la base de datos de Oracle.
Requisitos previos y limitaciones
Requisitos previos
Una licencia de Oracle Database Enterprise Edition y una licencia de Oracle Diagnostics Pack para descargar los informes de AWR.
Versiones de producto
Todas las ediciones de bases de datos de Oracle para las versiones 11g (versiones 11.2.0.3.v1 y posteriores) y hasta 12.2, 18c y 19c.
Este patrón no cubre Oracle Engineered Systems ni Oracle Cloud Infrastructure (OCI).
Arquitectura
Pila de tecnología de origen
Uno de los siguientes:
Una base de datos de Oracle en las instalaciones
Una base de datos Oracle en una EC2 instancia
Una instancia de base de datos de Amazon RDS para Oracle
Pila de tecnología de destino
Cualquier base de datos de Amazon RDS a Amazon Aurora.
Arquitectura de destino
Para obtener información sobre el proceso de migración completo, consulte el patrón Migración de una base de datos de Oracle a Aurora PostgreSQL mediante AWS DMS y AWS SCT.
Automatizar y escalar
Si tiene que migrar varias bases de datos de Oracle y desea utilizar métricas de rendimiento adicionales, puede automatizar el proceso siguiendo los pasos descritos en la entrada del blog Dimensionar correctamente las instancias de Amazon RDS a escala en función de las métricas de rendimiento de Oracle
Herramientas
El Repositorio automático de cargas de trabajo (AWR) de Oracle
es un repositorio integrado en las bases de datos de Oracle. Recopila y almacena periódicamente los datos de actividad y carga de trabajo del sistema, que luego son analizados por el Monitor de diagnóstico automático de bases de datos (ADDM). AWR toma instantáneas de los datos de rendimiento del sistema periódicamente (de forma predeterminada, cada 60 minutos) y almacena la información (de forma predeterminada, hasta 8 días). Puede utilizar las vistas y los informes de AWR para analizar estos datos.
Prácticas recomendadas
Para calcular las necesidades de recursos de la base de datos de destino, puede utilizar un único informe de AWR, varios informes de AWR o vistas de AWR dinámicas. Le recomendamos que utilice varios informes de AWR durante el período de máxima carga para estimar los recursos necesarios para gestionar esos picos de carga. Además, las vistas dinámicas proporcionan más puntos de datos que lo ayudan a calcular las necesidades de recursos con mayor precisión.
Debe estimar las IOPS solo para la base de datos que planea migrar, no para otras bases de datos y procesos que utilizan el disco.
Para calcular la cantidad de E/S que utiliza la base de datos, no utilice la información de la sección Perfil de carga del informe AWR. En su lugar, utilice la sección de perfiles de E/S, si está disponible, o vaya a la sección de estadísticas de actividad de la instancia y observe los valores totales de las operaciones físicas de lectura y escritura.
Cuando estime el uso de la CPU, le recomendamos que utilice el método de métricas de la base de datos en lugar de las estadísticas del sistema operativo (SO), ya que se basa en la CPU que utilizan únicamente las bases de datos. (Las estadísticas del sistema operativo también incluyen el uso de la CPU por parte de otros procesos). También debería consultar las recomendaciones relacionadas con la CPU en el informe de ADDM para mejorar el rendimiento tras la migración.
Tenga en cuenta los límites de rendimiento de E/S (rendimiento de Amazon Elastic Block Store (Amazon EBS) y rendimiento de red para el tamaño de instancia específico a la hora de determinar el tipo de instancia correcto.
Realice la prueba de rendimiento antes de la migración para validar el tamaño del motor.
Epics
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Habilite el informe AWR. | Para activar el informe, siga las instrucciones de la documentación de Oracle | Administrador de base de datos |
Compruebe el periodo de retención. | Para comprobar el periodo de retención del informe AWR, utilice la siguiente consulta.
| Administrador de base de datos |
Genere la instantánea. | Si el intervalo de instantáneas de AWR no es lo suficientemente detallado como para captar el pico de carga de trabajo, puede generar el informe de AWR manualmente. Para generar la instantánea de AWR manual, utilice la siguiente consulta.
| Administrador de base de datos |
Compruebe las instantáneas recientes. | Para comprobar las instantáneas de AWR recientes, utilice la siguiente consulta.
| Administrador de base de datos |
Tarea | Descripción | Habilidades requeridas | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Elija un método. | Las IOPS son la medida estándar de las operaciones de entrada y salida por segundo en un dispositivo de almacenamiento e incluyen las operaciones de lectura y escritura. Si va a migrar una base de datos en las instalaciones a AWS, debe determinar los picos de E/S de disco que utiliza la base de datos. Puede utilizar los siguientes métodos para estimar la E/S del disco de la base de datos de destino:
Estos cuatro métodos se describen en los siguientes pasos. | Administrador de base de datos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Opción 1: utilice el perfil de carga. | La siguiente tabla muestra un ejemplo de la sección Perfil de carga del informe AWR. importantePara obtener información más precisa, le recomendamos que utilice la opción 2 (perfiles de E/S) o la opción 3 (estadísticas de actividad de la instancia) en lugar del perfil de carga.
En función de esta información, puede calcular IOPs y procesar de la siguiente manera: IOPS = solicitudes de lectura de E/S: + solicitudes de escritura de E/S = 3586,8 + 574,7 = 4134,5 Rendimiento = lectura física (bloques) + escritura física (bloques) = 13 575,1 + 3467,3 = 17 042,4 Como el tamaño del bloque en Oracle es de 8 KB, puede calcular el rendimiento total de la siguiente manera: El rendimiento total en MB es 17 042,4 * 8 * 1024 / 1024 / 1024 = 133,2 MB avisoNo utilices el perfil de carga para estimar el tamaño de la instancia. No es tan preciso como las estadísticas de actividad de las instancias o los perfiles de E/S. | Administrador de base de datos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Opción 2: utilizar estadísticas de actividad de instancia. | Si utiliza una versión de la base de datos de Oracle anterior a la 12c, puede utilizar la sección de estadísticas de actividad de las instancias del informe AWR para estimar las IOPS y el rendimiento. En la tabla siguiente se muestra un ejemplo de esta sección.
En función de esta información, puede calcular el total de IOPS y el rendimiento de la siguiente manera: TIOPS totales = 3610,28 + 757,11 = 4367 Mbps totales = 114 482 426,26 + 36 165 631,84 = 150 648 058,1 / 1024 / 1024 = 143 Mbps | Administrador de base de datos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Opción 3: utilizar perfiles de E/S. | En la base de datos de Oracle 12c, el informe AWR incluye una sección de perfiles de E/S que presenta toda la información en una sola tabla y proporciona datos más precisos sobre el rendimiento de la base de datos. En la tabla siguiente se muestra un ejemplo de esta sección.
En esta tabla se proporcionan los siguientes valores de rendimiento e IOPS totales: Rendimiento = 143 MBPS (desde la quinta fila, denominada Total, segunda columna) IOPS = 4367,4 (desde la primera fila, denominada Solicitudes totales, segunda columna) | Administrador de base de datos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Opción 4: utilizar vistas AWR. | Puede ver la misma información de IOPS y rendimiento mediante las vistas de AWR. Para obtener esta información, utilice la siguiente consulta:
| Administrador de base de datos |
Tarea | Descripción | Habilidades requeridas | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Elija un método. | Puede estimar la CPU necesaria para la base de datos de destino de tres maneras:
Si está analizando los núcleos utilizados, le recomendamos que utilice el método de métricas de la base de datos en lugar de las estadísticas del sistema operativo, ya que se basa en la CPU que utilizan únicamente las bases de datos que planea migrar. (Las estadísticas del sistema operativo también incluyen el uso de la CPU por parte de otros procesos). También debería consultar las recomendaciones relacionadas con la CPU en el informe de ADDM para mejorar el rendimiento tras la migración. También puede estimar los requisitos en función de la generación de CPU. Si utiliza distintas generaciones de CPU, puede estimar la CPU necesaria para la base de datos de destino siguiendo las instrucciones del documento técnico Desmitificando el número de v para lograr un rendimiento óptimo de la carga | Administrador de base de datos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Opción 1: calcule los requisitos en función de los núcleos disponibles. | En informes AWR:
Puede estimar los núcleos disponibles de dos maneras:
Para estimar los núcleos disponibles mediante comandos del sistema operativo Utilice el siguiente comando para contar los núcleos del procesador.
Utilice el siguiente comando para contar los sockets del procesador.
notaNo recomendamos usar comandos del sistema operativo como nmon y sar para extraer el uso de la CPU. Esto se debe a que esos cálculos incluyen el uso de la CPU por parte de otros procesos y es posible que no reflejen la CPU real que utiliza la base de datos. Para estimar los núcleos disponibles mediante el informe AWR También puede deducir el uso de la CPU de la primera sección del informe de AWR. A continuación se muestra un extracto del informe.
En este ejemplo, el CPUs recuento es 80, lo que indica que son lógicos (virtuales). CPUs También puede ver que esta configuración tiene dos sockets, un procesador físico en cada socket (para un total de dos procesadores físicos) y 40 núcleos para cada socket o procesador físico. | Administrador de base de datos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Opción 2: Calcule el uso de la CPU mediante las estadísticas del sistema operativo. | Puede comprobar las estadísticas de uso de la CPU del sistema operativo directamente en el sistema operativo (mediante sar u otra utilidad del sistema operativo host) o revisando los valores de IDLE/(IDLE+BUSY) de la sección de estadísticas del sistema operativo del informe AWR. Puede ver los segundos de CPU consumidos directamente desde v$osstat. Los informes AWR y Statspack también muestran estos datos en la sección de estadísticas del sistema operativo. Si hay varias bases de datos en el mismo cuadro, todas tienen los mismos valores de v$osstat para BUSY_TIME.
Si no hay otros consumidores importantes de CPU en el sistema, utilice la siguiente fórmula para calcular el porcentaje de uso de la CPU: Utilización = tiempo de actividad / tiempo total Tiempo de actividad = requisitos = v$osstat.BUSY_TIME C = Tiempo total (actividad + inactivo) C = capacidad = v$ostat.BUSY_TIME + v$ostat.IDLE_TIME Utilización = BUSY_TIME / (BUSY_TIME + IDLE_TIME) = -1 305 569 937 / (1 305 569 937 + 4 312 718 839) = 23 % utilizado | Administrador de base de datos | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Opción 3: calcule el uso de la CPU mediante métricas de bases de datos. | Si hay varias bases de datos en ejecución en el sistema, puede utilizar las métricas de la base de datos que aparecen al principio del informe.
Para obtener las métricas de uso de la CPU, utilice esta fórmula: Uso de la CPU de la base de datos (% de la potencia de la CPU disponible) = tiempo de CPU / NUM_CPUS / tiempo transcurrido donde el uso de la CPU se describe mediante el tiempo de CPU y representa el tiempo dedicado a la CPU, no el tiempo de espera a la CPU. Este cálculo da como resultado: = 312 625,40 / 11 759,64/80 = Se está utilizando el 33 % de la CPU Número de núcleos (33 %) * 80 = 26,4 núcleos Núcleos totales = 26,4 * (120 %) = 31,68 núcleos Puede usar el mayor de estos dos valores para calcular la utilización de la CPU de la instancia de base de datos Amazon RDS o Aurora. notaEn IBM AIX, la utilización calculada no coincide con los valores del sistema operativo o de la base de datos. Estos valores coinciden en otros sistemas operativos. | Administrador de base de datos |
Tarea | Descripción | Habilidades requeridas | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Calcule los requisitos de memoria mediante estadísticas de memoria. | Puede usar el informe AWR para calcular la memoria de la base de datos de origen y compararla con la base de datos de destino. También debe comprobar el rendimiento de la base de datos existente y reducir los requisitos de memoria para ahorrar costos o aumentar los requisitos para mejorar el rendimiento. Esto requiere un análisis detallado del tiempo de respuesta del AWR y del acuerdo de nivel de servicio (SLA) de la aplicación. Utilice la suma del uso del área global del sistema (SGA) y del área global del programa (PGA) de Oracle como uso de memoria estimado para Oracle. Añada un 20 por ciento adicional para que el sistema operativo determine un requisito de tamaño de memoria objetivo. En el caso de Oracle RAC, utilice la suma de la utilización de memoria estimada en todos los nodos RAC y reduzca la memoria total, ya que se almacena en bloques comunes.
Memoria total de la instancia en uso = SGA + PGA = 220 GB + 45 GB = 265 GB Añada un 20 por ciento de búfer: Memoria total de la instancia = 1,2 * 265 GB = 318 GB Dado que SGA y PGA representan el 70 por ciento de la memoria del host, el requisito total de memoria es: Memoria total del host = 318/0,7 = 464 GB notaAl migrar a Amazon RDS for Oracle, el PGA y el SGA se calculan previamente en función de una fórmula predefinida. Asegúrese de que los valores precalculados se acerquen a sus estimaciones. | Administrador de base de datos |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Determine el tipo de instancia de base de datos en función de las estimaciones de E/S, CPU y memoria del disco. | Según las estimaciones de los pasos anteriores, la capacidad de la base de datos Amazon RDS o Aurora de destino debería ser:
En la base de datos Amazon RDS o Aurora de destino, puede asignar estos valores al tipo de instancia db.r5.16xlarge, que tiene una capacidad de 32 núcleos, 512 GB de RAM y 13 600 Mbps de rendimiento. Para obtener más información, consulte la publicación del blog de AWS en el Tamaño adecuado de instancias de Amazon RDS a escala en función de las métricas de rendimiento de Oracle | Administrador de base de datos |
Recursos relacionados
Clase de instancia de base de datos Aurora (documentación de Amazon Aurora)
Almacenamiento de instancias de base de datos de Amazon RDS (documentación de Amazon RDS)
Herramienta AWS Miner
(GitHub repositorio)