Microsoft Azure SQL Database proporciona escalabilidad dinámica y optimización inteligente

Microsoft Azure SQL Database es una base de datos relacional de uso general que se proporciona como un servicio administrado en el cloud. A través de este servicio es posible crear una capa de almacenamiento de datos de gran rendimiento y disponibilidad para las aplicaciones y las soluciones de Azure. SQL Database es adecuada para una variedad de aplicaciones modernas en el cloud porque permite procesar tanto datos relacionales como estructuras no relacionales, por ejemplo, grafos, JSON, elementos espaciales y XML.

Microsoft Azure SQL Database se basa en la versión estable más reciente del motor de base de datos de Microsoft SQL Server. Se pueden usar características avanzadas de procesamiento de consultas, como las tecnologías en memoria de alto rendimiento y el procesamiento de consultas inteligente. Las funcionalidades más recientes de SQL Server se publican primero en SQL Database y a continuación en el propio SQL Server. Las funcionalidades de SQL Server más recientes se obtienen sin coste mediante revisiones o actualizaciones.

Azure SQL Database proporciona las siguientes opciones de implementación para una base de datos de Azure SQL:

  • Una base de datos única representa una base de datos aislada totalmente administrada. Esta opción es aplicable en aplicaciones y microservicios modernos en el cloud que necesitan un único origen de datos confiable. Una base de datos única es similar a una base de datos independiente del motor de base de datos de Microsoft SQL Server.
  • Una instancia administrada es similar a una instancia totalmente administrada del motor de base de datos de Microsoft SQL Server. Contiene un conjunto de bases de datos que se pueden usar conjuntamente. Esta opción es útil para realizar una migración fácil de bases de datos locales de SQL Server al cloud de Azure y para aplicaciones que necesitan aprovechar las características de base de datos que proporciona el motor de base de datos de SQL Server.
  • El grupo elástico es una colección de bases de datos únicas con un conjunto compartido de recursos como la CPU o la memoria. Las bases de datos únicas se pueden mover dentro y fuera de un grupo elástico.

SQL Database ofrece un rendimiento predecible con varios tipos de recursos, niveles de servicio y tamaños de proceso. Proporciona escalabilidad dinámica sin tiempo de inactividad, optimización inteligente integrada, escalabilidad y disponibilidad globales, y opciones de seguridad avanzadas. Estas funcionalidades permiten focalizarse en el desarrollo de aplicaciones y reducir el tiempo de implementación sin necesidad de administrar máquinas virtuales e infraestructuras.

En las bases de datos únicas cada base de datos está aislada de otras y es portátil. Cada una tiene su propia cantidad garantizada de recursos de proceso, memoria y almacenamiento. La cantidad de recursos asignados a la base de datos está dedicada a esa base de datos y no se comparte con otras bases de datos de Azure. Los recursos de la base de datos se pueden escalar y reducir verticalmente de forma dinámica. En la opción de base de datos única es posible escoger diferentes recursos de proceso, memoria y almacenamiento para adaptarse a las diferentes necesidades. A nivel de capacidad de proceso se puede seleccionar de 1 a 80 núcleos virtuales, y almacenamiento desde 32 GB a 4 TB. El nivel de servicio de hiperescala para la base de datos única permite escalar a 100 TB de almacenamiento con funcionalidades incorporadas de copia de seguridad y restauración.

En los grupos elásticos se asignan recursos que comparten todas las bases de datos del grupo. Se puede crear una base de datos o mover las bases de datos únicas existentes a un grupo de recursos para así maximizar el uso de recursos y ahorrar dinero. Esta opción también ofrece la posibilidad de escalar y reducir verticalmente los recursos del grupo elástico de forma dinámica.

En las instancias administradas, cada instancia administrada está aislada de otras instancias con recursos garantizados. Dentro de una instancia administrada, las bases de datos de instancia comparten un conjunto de recursos. Esta opción también ofrece la posibilidad de escalar y reducir verticalmente los recursos de forma dinámica.

Inicialmente es posible contratar el nivel de servicio de uso general con un bajo coste.  A medida que crecen las necesidades de rendimiento es posible cambiar en cualquier momento el nivel de servicio, manualmente o mediante programación, por el nivel de servicio requerido por la empresa. El rendimiento se puede ajustar sin que la aplicación y los usuarios sufran ningún tipo de inactividad. La escalabilidad dinámica permite a la base de datos responder de manera transparente a las necesidades cambiantes de recursos asumiendo solo el coste de los recursos que se necesiten.

Monitorización del rendimiento

Para comprobar el rendimiento de una base de datos SQL en Azure es necesario revisar los recursos utilizados.  Para un óptimo rendimiento es necesario comprobar los siguientes recursos:

  • Uso de CPU: Un uso alto de la CPU puede indicar la necesidad de identificar y ajustar las consultas que usan la mayor parte de la capacidad de proceso
  • Estadísticas de espera: La variable sys.dm_os_wait_stats (Transact-SQL) permite  determinar el tiempo de espera de las consultas. Las consultas pueden estar esperando recursos en esperas de colas o esperas externas.
  • Uso de E/S: Permite comprobar el rendimiento de los recursos de almacenamiento.
  • Uso de memoria: la cantidad de memoria disponible para la base de datos o la instancia es proporcional al número de núcleos virtuales.

El servicio Azure SQL Database incluye herramientas y recursos que permiten solucionar los posibles problemas de rendimiento:

  • En Azure Portal se puede visualizar el rendimiento de cada base de datos. El gráfico de supervisión permite visualizar los recursos que se aproximan a su utilización máxima. El consumo de DTU (Database Transaction Units) se muestra de manera predeterminada.
  • SQL Server Management Studio proporciona un conjunto de informes de rendimiento en el panel de rendimiento. Con estos informes es posible supervisar el uso de los recursos e identificar las consultas que consumen más.
  • En Azure Portal se incluye Información del rendimiento de las consultas para identificar las consultas que utilizan más recursos. Esta característica solo está disponible en bases de datos únicas y grupos elásticos.
  • SQL Database Advisor indica recomendaciones que ayudan a crear y eliminar índices, parametrizar consultas y corregir problemas de esquemas. Esta característica solo está disponible en bases de datos únicas y grupos elásticos.
  • Azure SQL Intelligent Insights comprueba automáticamente el rendimiento de la base de datos. Cuando se detecta un problema de rendimiento se genera un registro de diagnóstico. En este registro se proporcionan detalles y un análisis de la causa principal (RCA) del problema. Cuando es posible se proporciona una recomendación para la mejora del rendimiento.
  • El ajuste automático permite que Azure SQL Database corrija automáticamente los problemas de rendimiento.
  • Las vistas de administración dinámica (DMV), los eventos extendidos y el Almacén de consultas incluye información detallada de los problemas de rendimiento.

 

» Puede solicitar más información a través del  formulario de contacto

Publicado en Novedades