sql >> Base de Datos >  >> RDS >> Database

Cerrando la brecha de Azure:Instancias administradas

Si ha estado considerando trasladar su entorno de SQL Server a Azure, solo ha tenido un par de opciones. Primero, podría utilizar la solución PaaS de Azure SQL Database y mover una única base de datos o usar un grupo elástico. Su otra opción ha sido una solución de IaaS que utiliza máquinas virtuales de Azure que ejecutan Microsoft SQL Server. Pronto tendremos una tercera opción llamada Instancia administrada de base de datos SQL.


Las instancias administradas cierran la brecha entre SQL Server local y Azure Base de datos SQL

Las instancias administradas se presentaron por primera vez en la conferencia Microsoft Build en la primavera de 2017 y, hasta ahora, la vista previa se ha limitado a una pequeña cantidad de clientes y consultores. Las instancias administradas se pueden considerar un híbrido entre una versión completa de SQL Server y Azure SQL Database. Las bases de datos únicas y elásticas se basan en un modelo de programación con ámbito de base de datos y las instancias administradas se basan en un modelo de programación con ámbito de instancia. Esto hace que las Instancias administradas sean más compatibles con SQL Server local.

Las instancias administradas brindan una sensación mucho mayor de un SQL Server local, pero se basan en la misma infraestructura que Azure SQL Database. Lo que lo diferencia de Azure SQL Database es que presenta una instancia completa de SQL Server al cliente. En Azure SQL Database, configura un servidor, que en realidad es un contenedor, y luego puede tener varias bases de datos en ese servidor, pero no pueden comunicarse fácilmente entre sí. Con las Instancias administradas, todas las bases de datos dentro de la instancia están en el mismo SQL Server real, por lo que tiene soporte completo para consultas entre bases de datos. Esta es una gran característica para muchas aplicaciones que, de otro modo, no serían adecuadas para Azure SQL Database, y creo que permitirá que muchas más aplicaciones de SQL Server se trasladen a la nube.

Ahora se admite la funcionalidad a nivel de instancia. Esto incluye cosas como tablas temporales globales, Agente SQL Server, Service Broker, replicación, Auditoría SQL y Common Language Runtime (CLR). Las instancias administradas también pueden admitir bases de datos de hasta 35 TB de tamaño. Actualmente, la mayor capacidad para una base de datos SQL de Azure es de 4 TB en el nivel superior. Sospecho que esto puede cambiar pronto y, nuevamente, abrirá la nube para más aplicaciones.

Las instancias administradas también pueden aprovechar todas las funciones de la plataforma PaaS, que incluyen copias de seguridad automáticas, detección de amenazas, evaluaciones de vulnerabilidades, alta disponibilidad, replicación geográfica, asesor de base de datos y mucho más. Vi una presentación que discutía cómo funciona el proceso de conmutación por error automático y aprendí que los objetos a nivel de servidor se replican en la instancia de conmutación por error. Esto significa que cosas como los inicios de sesión y los trabajos (puntos débiles para muchos de nuestros entornos en la actualidad) se manejan por usted.

Durante el año pasado, ayudé a numerosos clientes a migrar a Azure SQL Database y uno de los principales desafíos es migrar los datos. No puede simplemente realizar una copia de seguridad de SQL Server y restaurar a Azure SQL Database. Me complació mucho saber que con las Instancias administradas de SQL Database, podemos usar copias de seguridad nativas de SQL Server y restaurar a Instancias administradas; sin embargo, debe usar el mecanismo de copia de seguridad a URL. Esto hará que las migraciones a las Instancias administradas sean mucho más fáciles, sin embargo, dado que las Instancias administradas se basan en Azure SQL Database, este es un boleto de ida:no puede hacer una copia de seguridad de sus bases de datos de Instancias administradas y restaurar de nuevo a las instalaciones. Si alguna vez decidió traer su base de datos de vuelta a las instalaciones o fuera de las Instancias administradas, tendrá que exportar sus datos.


Las bases de datos en instancias administradas están mucho más preparadas para migrar a Azure SQL Base de datos

Por otro lado, dado que se basan en la plataforma Azure SQL Database, las bases de datos individuales que coloca en una Instancia administrada se pueden migrar a sus propias bases de datos Azure SQL individuales. Esto hace que una instancia administrada sea un trampolín perfecto, donde puede resolver las complicaciones de aislamiento que le impiden migrar directamente a PaaS.

Tengo curiosidad acerca de que se admita la replicación. Todavía no he podido averiguar si una base de datos de Instancia administrada puede ser un editor o si solo puede ser un suscriptor, como una base de datos SQL de Azure. Si puede ser un editor, entonces esa podría ser una forma efectiva de migrar de regreso a las instalaciones. Realmente espero que, en un futuro cercano, tengamos la capacidad de restaurar también las copias de seguridad nativas de SQL Server en bases de datos SQL de Azure únicas. Parece que la tecnología está ahí, solo necesita expandirse para el entorno PaaS existente.

Otra observación interesante sobre las Instancias administradas es que, dado que la tecnología se basa en el modelo de Azure SQL Database, la versión de SQL Server seguirá la de Azure SQL Database. Esto podría complicar las cosas con el soporte del proveedor. Muchos proveedores afirmarán que certifican su producto en la versión X de SQL Server. Aunque las Instancias administradas admitirán casi todas las funciones de SQL Server 2017, no usarán la misma versión de compilación, por lo que las comprobaciones de versiones programáticas serán complicadas. Su mejor curso de acción aquí es presionar al proveedor, ya que es poco probable que Microsoft vacile en esta postura, y no tengo dudas de que algunas de esas conversaciones serán desafiantes.

¿Se esforzarán los proveedores por certificar sus productos en instancias administradas, o esto se convertirá en un problema como el que experimentamos con la virtualización? En los primeros días de la virtualización, muchos proveedores afirmaron que no admitían que sus productos se ejecutaran virtualizados; sin embargo, Microsoft era totalmente compatible con Windows X y SQL Server X virtualizados. Con suerte, veremos a los proveedores subir a bordo y certificar sus productos en Instancias administradas. Ciertamente veo algunos pioneros de SQL Server que se trasladarán a Instancias administradas después de sus propias pruebas.

Cada vez que un cliente busca migrar a la nube, la seguridad es una gran preocupación. Las instancias administradas ofrecen compatibilidad con VNET con direcciones IP privadas y VPN para redes locales. Esto puede permitir que un cliente proteja su entorno de la Internet pública y tenga un aislamiento total.

Estoy entusiasmado con las instancias administradas y realmente no puedo esperar hasta que esté más disponible. Para los clientes que deseen un entorno administrado, pero que necesiten una solución más rica en funciones que una base de datos Azure SQL única o elástica, creo que Managed Instances sería la opción perfecta. Ha habido una brecha entre Azure SQL Database y SQL Server en una VM de Azure, ya que muchos clientes necesitan más de lo que ofrece Azure SQL Database, pero SQL Server en una VM de Azure aún requiere más mantenimiento y responsabilidad de lo que querían. Las instancias administradas realmente cierran esa brecha. Admiten una base de datos mucho más grande, permiten migraciones de datos más sencillas, permiten consultas entre bases de datos y no deberían requerir ningún cambio de código, ya que la plataforma es altamente compatible con SQL Server local.

En resumen, si su organización está considerando migrar a un entorno hospedado dentro de la plataforma de base de datos SQL de Azure, podrá elegir entre bases de datos SQL de Azure individuales, grupos elásticos o instancias administradas. Dependiendo de las necesidades de su aplicación, una de estas soluciones debería encajar perfectamente. De lo contrario, también tiene la opción de ejecutar una instancia de SQL Server tradicional en una máquina virtual de Azure, que ofrece buenas características como copias de seguridad administradas, replicación geográfica, Azure Site Recovery y mucho más. Microsoft continúa invirtiendo en la plataforma Azure mediante la entrega de nuevos productos y funciones que sus clientes necesitan, y el próximo lanzamiento de Managed Instances es una prueba continua de ese enfoque. Estén atentos, ya que nos han prometido una vista previa pública en un futuro muy cercano.