Blog de Amazon Web Services (AWS)

Amazon RDS Custom para SQL Server es compatible con SQL Server 2022

Por Jose A. Ramirez y Kalyan Banala

Amazon Relational Database Service (Amazon RDS) Custom para SQL Server ahora es compatible con Microsoft SQL Server 2022 para ediciones Web, Standard, Enterprise y Developer (a través de BYOM). Puede utilizar funciones de SQL Server 2022 como recuperación acelerada de bases de datos, procesamiento inteligente de consultas, rendimiento inteligente, mejoras de monitoreo y creaciones de índices en línea reanudables. Además, SQL Server 2022 cuenta con soporte nativo para Amazon S3. Consulte Copia de seguridad y restauración nativas con integración de Amazon S3 en Amazon RDS Custom para SQL Server 2022 para obtener más detalles.

En este post, te mostramos cómo lanzar una nueva instancia de RDS Custom para SQL Server 2022 y realizar una actualización de versión mayor de SQL Server 2019 a SQL Server 2022. También discutimos algunas características clave de SQL Server 2022.

Puede elegir entre dos opciones para crear y actualizar su instancia de RDS Custom para SQL Server: AWS Management Console o AWS Command Line Interface (AWS CLI). Proporcionamos instrucciones para ambas opciones en este post.

Prerrequisitos

Antes de crear y conectarse a su instancia de base de datos RDS Custom para SQL Server, debe configurar algunos requisitos previos, como un rol de AWS Identity and Access Management (IAM) y un VPC, entre otros. Para simplificar la configuración, puede utilizar una plantilla de AWS CloudFormation para crear una pila de CloudFormation.

Si necesita configurar los requisitos previos de su entorno con AWS CloudFormation (recomendado), consulte Configuración de su entorno para Amazon RDS Custom para SQL Server.

Inicie RDS Custom para SQL Server con SQL Server 2022

En esta sección, te mostramos cómo crear una nueva instancia RDS Custom con SQL Server 2022 usando la consola. Para obtener más información, consulte Creación y conexión a una instancia de base de datos para Amazon RDS Custom for SQL Server.

Complete los siguientes pasos:

  1. En la consola de Amazon RDS, elija Bases de datos en el panel de navegación.
  2. Elija Crear base de datos.
  3. Seleccione Crear estándar.
  4. Para Opciones del motor, seleccione Microsoft SQL Server.
  5. Para Tipo de administración de bases de datos, seleccione Amazon RDS Custom.
  6. Para Edición, seleccione su edición de SQL Server.
  7. Para la versión del motor, elija la versión más reciente de SQL Server 2022.
  8. Selecciona la plantilla que quieres usar para tu entorno.
  9. Para Identificador de instancia de base de datos, ingresa un nombre para tu instancia.
  10. Ingresa tu nombre de usuario maestro y contraseña.
    Alternativamente, puede seleccionar Generar una contraseña automática, disponible a través de AWS Secrets Manager.
  11. Selecciona el tipo de instancia que prefieras. En este ejemplo, utilizamos una clase estándar db.m5.xlarge.
  12. Elija un tipo de almacenamiento y asigne valores para Almacenamiento asignado e IOPS aprovisionadas.
  13. Seleccione su preferencia para la implementación Multi-AZ:
    1. Si está utilizando la última plantilla de CloudFormation, su entorno admitirá Multi-AZ para RDS Custom y puede seleccionar Crear una instancia en espera.
    2. Si no está seguro, seleccione No crear una instancia en espera. Puede modificar esta configuración más adelante.
  14. En Recurso de computación, seleccione No se conecte a un recurso informático EC2.
  15. Elija el VPC para alojar su RDS Custom para SQL Server.
  16. Elija el grupo de subredes de base de datos adecuado.
  17. Para Acceso público, seleccione No.
  18. Para el grupo de seguridad de VPC (firewall), seleccione Elegir existente y, a continuación, elija el grupo de seguridad correspondiente.  
  19. Tiene la opción de cambiar el puerto de la base de datos en Configuración adicional.
  20. En la sección Seguridad personalizada de RDS, elija el perfil de instancia de IAM creado para RDS Custom y la clave de AWS KMS.
  21. Deja los valores restantes por defecto.
  22. Si tu entorno cumple con todos los requisitos previos, elige Estoy listo.
  23. Elija Crear base de datos.

Alternativamente,  puede crear una instancia de base de datos personalizada de RDS mediante el comando CLI create-db-instance en la consola de AWS:

aws rds create-db-instance \
--db-instance-identifier <<rds-cli-sql-2022-01>> \
--engine custom-sqlserver-ee \
--kms-key-id <<id de clave KMS>> \
--engine-version 16.00.4085.2.v1 \
--master-username admin \
--master-user-password <<su contraseña>> \
--db-instance-class db.m5.2xlarge \
--allocated-storage 100 \
--storage-type gp3 \
--backup-retention-period 0 \
--region <<su region>> \ 
--custom-iam-instance-profile <<Perfil de IAM personalizado de RDS>> \ 
--db-subnet-group <<rdscustom-db-subnet-group>> \ 
--vpc-security-group-ids <<sg-009999999f99d9f99>> 

Después de crear la instancia de base de datos RDS Custom, puede conectarse a ella mediante Session Manager, una capacidad de AWS Systems Manager o un cliente RDP. Para obtener instrucciones, consulte Conectar a su instancia de Windows. Asegúrese de que el grupo de seguridad de VPC asociado a su instancia de base de datos permita conexiones entrantes en el puerto 3389 para que TCP habilite las conexiones RDP.

Necesita el contenido de la clave privada asociada con la instancia para conectarse a la instancia de RDS Custom a través de RDP. RDS Custom crea la clave privada por usted. El nombre de la clave privada usa el prefijo do-not-delete-rds-custom-DBInanceIdentifier. Secrets Manager almacena tu clave privada como secreto. Elija el secreto que tenga el mismo nombre que su par de claves y recupere el valor secreto para descifrar la contraseña más tarde.

Para lanzar la instancia de base de datos SQL Server 2022 utilizando una versión de motor personalizada (CEV) en RDS Custom, debe preparar un CEV basado en una imagen de AWS Windows EC2 AMI (Amazon Machine Image) mediante un SQL Server 2022 CU9 (LI) preinstalado o a través de traer su propio medio (BYOM). Después de personalizar las configuraciones del SO y SQL Server, la AMI se guarda como una imagen dorada. Esta imagen dorada se usa luego para crear un CEV, que posteriormente se puede usar para crear nuevas instancias de base de datos RDS Custom para SQL Server 2022.

Realizar una actualización de versión principal de SQL Server 2019 a SQL Server 2022

En esta sección, te mostramos cómo actualizar tu instancia usando la consola. Complete los siguientes pasos:

  1. En la consola de Amazon RDS, elija Bases de datos en el panel de navegación.
  2. Selecciona tu base de datos y elige Modificar.
  3. Para la versión del motor de base de datos, elija la versión del motor de base de datos para SQL Server 2022.
  4. Elija Continuar.
  5. Lea atentamente el mensaje antes de continuar y revise la sección Resumen de modificaciones.
  6. Seleccione la opción para aplicar inmediatamente o durante la siguiente ventana de mantenimiento programado.
  7. Elija Modificar instancia de base de datos.

Este proceso requiere tiempo de inactividad porque la actualización cerrará los servicios de SQL Server. En configuraciones Multi-AZ, el proceso comienza una actualización continua, que comienza con la instancia secundaria, luego falla sobre la instancia primaria a la instancia actualizada, minimizando así el tiempo de inactividad.

Alternativamente, puede actualizar una instancia de base de datos personalizada de RDS mediante el comando modify-db-instance en la CLI de AWS:

aws rds modify-db-instance \
--db-instance-identifier <<rds-qhog-sql-2019-01>> \
--engine-version <<16.00.4085.2.v1>> \
--allow-major-version-upgrade \
--region <<su region>> \
--apply-immediately 

Para realizar una actualización de la versión principal de una instancia de base de datos CEV de SQL Server 2019 existente, primero debe crear una AMI dorada utilizando un SQL Server 2022 (LI) o BYOM preinstalado. Esta AMI dorada se utiliza para crear un nuevo CEV y luego modificar la instancia de base de datos CEV de SQL Server 2019 existente especificando –engine-version en el CEV recién creado.

Características clave de SQL Server 2022

En esta sección, discutimos algunas características importantes que puede explorar en SQL Server 2022 mientras continúa aprovechando RDS Custom.

Backup nativo en Amazon S3 e integración con almacenamiento de objetos S3

Con SQL Server 2022, la función de respaldo en URL ahora admite el almacenamiento de objetos compatible con Amazon S3. La compatibilidad con Amazon S3 significa que la solución de almacenamiento utiliza la API de Amazon S3 para proporcionar una interfaz compatible con Amazon S3. Puede utilizar la función Backup a URL utilizando el Amazon S3-compatible object como destino de su backup. Esto le permite almacenar sus backups de SQL Server en una interfaz compatible con Amazon S3, proporcionando una solución de almacenamiento escalable y duradera.

Esta característica ofrece los siguientes beneficios:

  • Almacenamiento rentable: Amazon S3 ofrece una opción rentable para almacenar copias de backup, ya que solo paga por el almacenamiento que usa.
  • Escalabilidad: puede escalar su almacenamiento de copia de seguridad con facilidad utilizando la escalabilidad del almacenamiento de Amazon S3.
  • Durabilidad: Amazon S3 proporciona una alta durabilidad, lo que garantiza que las copias de seguridad estén protegidas contra la pérdida de datos. Replica datos en múltiples zonas de disponibilidad, ofreciendo una solución de almacenamiento de respaldo confiable.
  • Integración con flujos de trabajo existentes: puede integrar sin problemas la función de copia de seguridad en URL con sus flujos de trabajo de copia de seguridad y restauración existentes para realizar copias de seguridad y restauraciones hacia y desde el almacenamiento de objetos compatible con Amazon S3.

Mejoras en el rendimiento de TempDB

En SQL Server 2022, se abordaron varios temas relacionados con TempDB para mejorar su rendimiento y escalabilidad. Las siguientes son las mejoras clave:

  • Actualizaciones simultáneas de GAM y SGAM: SQL Server 2022 introdujo actualizaciones simultáneas en las páginas Mapa de Asignación Global (GAM) y Mapa de Asignación Global Compartido (SGAM) en TempDB. Esto permite que los hilos paralelos modifiquen estas páginas simultáneamente, reduciendo la contención y mejorando el rendimiento.
  • Contención de metadatos — SQL Server 2022 mejoró el manejo de la contención de metadatos en TempDB. Las versiones anteriores introdujeron el almacenamiento en caché de tablas temporales y tablas de metadatos TempDB optimizadas para la memoria para reducir la contención de metadatos. SQL Server 2022 mejora aún más estas características para minimizar la contención y mejorar el rendimiento.
  • Contienda de asignación de objetos: la mejor práctica de tener múltiples archivos de datos de igual tamaño para que TempDB distribuya la asignación de objetos entre archivos sigue siendo relevante en SQL Server 2022. Sin embargo, con las mejoras en las actualizaciones simultáneas de GAM y SGAM, el impacto de la contención de asignación de objetos se reduce significativamente.

Protección de datos mejorada con SQL Server Ledger

RDS Custom para SQL Server 2022 soporta bases de datos de contabilidad. El SQL Server Ledger proporciona funciones de protección de datos y auditoría a prueba de manipulaciones para bases de datos relacionales. Permite a las organizaciones rastrear y monitorear los cambios realizados en sus datos, asegurando la integridad de los datos y el cumplimiento de los requisitos reglamentarios.

La función de libro mayor incluye los siguientes beneficios clave:

  • Registros a prueba de manipulaciones: la función de libro mayor crea un registro de evidencia de manipulación de todos los cambios de datos, lo que dificulta que los usuarios no autorizados modifiquen o manipulen los datos sin ser detectados.
  • Auditoría y seguimiento: con la función de libro mayor, las organizaciones pueden rastrear y auditar fácilmente todos los cambios realizados en la base de datos. Esto puede ser útil para fines de cumplimiento o para investigar cualquier actividad sospechosa.
  • Protección contra amenazas internas: la función de libro mayor mejora la seguridad al proporcionar un registro transparente y verificable de todas las modificaciones de datos, disuadiendo el acceso no autorizado o las actividades maliciosas de personas de confianza.
  • Integración con las medidas de seguridad existentes: puede integrar sin problemas el libro mayor con las medidas de seguridad existentes en SQL Server, como el cifrado, los controles de acceso y el enmascaramiento de datos, para proporcionar una solución de seguridad integral para bases de datos relacionales.

Concurrencia de estadísticas de actualización automática asincrónica

En RDS Custom para SQL Server 2022, puede evitar posibles problemas de concurrencia mediante una actualización de estadísticas asincrónica si habilita la configuración de ámbito de base de datos ASYNC_STATS_UPDATE_WAIT_AT_LOW_PRIORITY.

Análisis y manipulación de datos de series temporales

Los datos de series temporales son un conjunto de valores organizados en orden cronológico, y se utilizan comúnmente para comparaciones históricas, detección de anomalías, análisis predictivo y reportes. SQL Server 2022 ha introducido capacidades de series temporales, incluyendo mejoras a las funciones T-SQL existentes y la adición de dos nuevas funciones. El operador relacional GENERATE_SERIES simplifica la creación de una tabla de números para generar valores de fecha y hora contiguos. La función DATE_BUCKET ayuda a agrupar los datos de series de tiempo en intervalos fijos o depósitos. Además, las funciones FIRST_VALUE y LAST_VALUE ofrecen ahora una nueva sintaxis para manejar valores NULL en el análisis de series temporales.

Conclusión

En esta publicación, proporcionamos una guía paso a paso sobre el lanzamiento de SQL Server 2022 y la realización de una actualización de versión principal de una instancia de RDS Custom para SQL Server usando la consola de Amazon RDS y los comandos de la CLI de AWS. También proporcionamos una descripción general de algunas de las nuevas y emocionantes características de SQL Server 2022 que se pueden explorar en RDS Custom para SQL Server. Una versión de motor importante como SQL Server 2022 trae cambios significativos en el motor. Recomendamos probar cargas de trabajo de bases de datos en entornos más bajos antes de actualizar a esta nueva versión del motor. Deja un comentario si tienes alguna duda.

Para obtener más información sobre dónde o cuándo usar RDS Custom, consulte Trabajar con RDS Custom para SQL Server.

Este blog en español es una traducción del blog original en inglés.

Acerca de los autores

José A. Ramírez es administrador de bases de datos, amante de las mascotas y arquitecto de soluciones especialista en bases de datos en AWS, con más de 25 años de experiencia en la industria de la tecnología. Ahora se enfoca en diseñar soluciones para clientes que buscan modernizar sus aplicaciones y bases de datos en la nube.

 

Kalyan Banala es un ingeniero de bases de datos consumado y trabaja con el equipo de Amazon RDS Custom for SQL Server en AWS. Le gusta trabajar en desafíos técnicos y le apasiona aprender y compartir conocimientos con sus compañeros de equipo y clientes de AWS.

 

Traductores y Revisores

Luiz Rampanelli es arquitecto de soluciones en el equipo de AWS Latam. Cuenta con más de 10 años de experiencia con cargas de trabajo de Microsoft en entornos híbridos y de nube. Trabaja diseñando soluciones siguiendo las mejores prácticas para que los clientes puedan aprovechar al máximo los beneficios de la nube de AWS.

José A. Ramírez es administrador de bases de datos, amante de las mascotas y arquitecto de soluciones especialista en bases de datos en AWS, con más de 25 años de experiencia en la industria de la tecnología. Ahora se enfoca en diseñar soluciones para clientes que buscan modernizar sus aplicaciones y bases de datos en la nube.