Microsoft SQL Server 2019 y arrays de flash Dell EMC Unity XT

Hoy les presentaremos las características del uso de SQL Server 2019 con el sistema de almacenamiento Unity XT, así como recomendaciones para la virtualización de SQL Server mediante la tecnología VMware, la configuración y gestión de los componentes básicos de la infraestructura de Dell EMC.

Microsoft SQL Server 2019 y arrays de flash Dell EMC Unity XT
En 2017, Dell EMC y VMware publicaron los resultados de una encuesta sobre las tendencias y la evolución de SQL Server — "Transformación de SQL Server: hacia la agilidad y la resiliencia" (SQL Server Transformation: Toward Agility and Resiliency), que utilizó la experiencia de la comunidad de miembros de la Asociación Profesional de SQL Server (Professional Association of SQL Server, PASS). Los resultados muestran que los entornos de bases de datos SQL Server están creciendo tanto en tamaño como en complejidad, lo que se debe al aumento de volúmenes de datos y a nuevos requisitos empresariales. Las bases de datos SQL Server están actualmente desplegadas en muchas empresas, respaldando aplicaciones críticas y a menudo son la base de la transformación digital. 

Desde la realización de esta encuesta, Microsoft ha lanzado la siguiente generación de sistemas de gestión de bases de datos: SQL Server 2019. Además de mejorar las funciones básicas del motor relacional y el almacenamiento de datos, se han introducido nuevos servicios y funciones. Por ejemplo, SQL Server 2019 incluye soporte para cargas de trabajo de grandes datos utilizando Apache Spark y el sistema de archivos distribuido Hadoop (Hadoop Distributed File System, HDFS).

Alianza Dell EMC y Microsoft

Dell EMC y Microsoft han colaborado durante mucho tiempo en el desarrollo de soluciones para SQL Server. La implementación exitosa de una plataforma de base de datos integral, como Microsoft SQL Server, requiere la coordinación de las funciones del software con la infraestructura de TI subyacente. Esta infraestructura incluye capacidades de procesamiento de CPU, recursos de memoria, almacenamiento y servicios de red. Dell EMC ofrece infraestructura para la plataforma SQL Server para cualquier tipo de carga de trabajo y aplicaciones.

La línea de servidores Dell EMC PowerEdge ofrece múltiples configuraciones de procesadores y memoria. Estas configuraciones son adecuadas para una amplia gama de cargas: desde pequeñas aplicaciones empresariales hasta los sistemas críticos más grandes, como la planificación de recursos empresariales (ERP), almacenes de datos, análisis avanzados, comercio electrónico, entre otros. La línea de sistemas de almacenamiento está diseñada para almacenar datos no estructurados y estructurados. 

Los clientes que implementan SQL Server 2019 con la infraestructura Dell EMC pueden trabajar con datos estructurados y no estructurados utilizando SQL Server y Apache Spark. SQL Server también admite combinaciones de tecnologías de acceso del cliente, comunicaciones entre servidores y comunicaciones 'servidor-almacén'. El concepto de Dell EMC se basa en un modelo desagregado que ofrece un ecosistema abierto. Las organizaciones pueden elegir entre una amplia gama de aplicaciones de red industriales estándar, sistemas operativos y plataformas de hardware. Este enfoque brinda un control máximo sobre las tecnologías y arquitecturas, lo que se traduce en un ahorro significativo de costos y flexibilidad.

VMware proporciona virtualización de todos los componentes críticos de la infraestructura que SQL Server necesita para lograr un alto rendimiento y coherencia en las operaciones. Además del cloud privado, VMware también ofrece actualmente modelos híbridos para cargas de trabajo, abarcando arquitecturas de nube privadas y públicas. 

Muchas organizaciones recurren a la virtualización para reducir los costos de infraestructura, garantizar alta disponibilidad y simplificar la recuperación ante desastres. El 94% de los encuestados en el ámbito de SQL Server informa de algún nivel de virtualización en su entorno. El 70% de aquellos que utilizan virtualización han elegido VMware. El 60% tiene un nivel de virtualización de SQL Server del 75% o más. Además, los resultados de la encuesta indican de manera convincente que la alta disponibilidad y la recuperación ante desastres, implementadas a nivel de virtualización, se han convertido en factores importantes en la toma de decisiones sobre la virtualización de bases de datos SQL Server.

Nuevas funciones de SQL Server 2019

La plataforma de bases de datos SQL Server 2019 incluye una amplia gama de tecnologías, funciones y servicios que respaldan aplicaciones críticas, como analítica, bases de datos empresariales, inteligencia empresarial (BI) y procesamiento de transacciones escalables (OLTP). La plataforma SQL Server ha adquirido capacidades para gestionar la integración de datos, almacenamiento de datos, informes y análisis avanzado, replicación y gestión de tipos de datos semiestructurados. Por supuesto, no todos los clientes o aplicaciones requieren todas estas funciones. Además, en muchos casos, es preferible dividir los servicios de SQL Server mediante la virtualización. 

Hoy en día, las empresas a menudo tienen que depender de grandes volúmenes de datos de una amplia variedad de conjuntos de datos que están en constante expansión. Con SQL Server 2019, puede obtener información valiosa prácticamente en tiempo real de todos los datos. Los clústeres de SQL Server 2019 proporcionan un entorno de escala completa para trabajar con grandes conjuntos de datos, incluyendo el uso de aprendizaje automático y capacidades de inteligencia artificial. Las principales nuevas funciones y actualizaciones en SQL Server 2019 se enumeran en el documento de Microsoft.

El sistema de almacenamiento de gama media Dell EMC Unity XT

La serie de almacenamiento Dell EMC Unity apareció hace casi tres años, y desde entonces se han vendido más de 40,000 sistemas. Los clientes han valorado este arreglo de gama media por su simplicidad, rendimiento y economía. Las plataformas de gama media Dell EMC Unity XT son soluciones de almacenamiento compartido que ofrecen baja latencia, alta capacidad de procesamiento y bajos costos de gestión para las cargas de trabajo de SQL Server. Todos los sistemas Unity XT utilizan una arquitectura de doble procesador (storage processors, SP) para gestionar la entrada/salida y realizar operaciones de datos en modo activo/activo. En Unity XT, dual SP, se aplica una conexión SAS de 12 Gbps totalmente interna y una arquitectura multicore patentada para garantizar un alto rendimiento y eficiencia. Las matrices de disco permiten aumentar la capacidad de almacenamiento mediante estantes adicionales.

Microsoft SQL Server 2019 y arrays de flash Dell EMC Unity XT
En Dell EMC Unity XT, la nueva generación de matrices (híbridas y totalmente basadas en memoria flash), se ha incrementado significativamente el rendimiento, mejorada la eficiencia y añadidas nuevas capacidades y servicios para entornos multicloud. 

La arquitectura de Unity XT permite procesar datos simultáneamente, reducir su volumen y soportar servicios como la replicación sin afectar el rendimiento de las aplicaciones. Comparado con la solución de la generación anterior, el rendimiento del almacenamiento Dell EMC Unity XT se ha duplicado y el tiempo de respuesta ha disminuido en un 75%. Y, por supuesto, Dell EMC Unity soporta el estándar NVMe.

Las soluciones de almacenamiento con unidades NVMe muestran su mejor desempeño en aplicaciones sensibles a la latencia. Por ejemplo, en aplicaciones como grandes bases de datos, NVMe ofrece baja latencia y altas velocidades de transferencia de datos. La reducción de la latencia y el aumento del paralelismo elevan significativamente el rendimiento de las operaciones de lectura/escritura. No es casualidad que, según las proyecciones de IDC, para 2021 las matrices flash conectadas por NVMe y NVMe-oF (NVMe over Fabric) representen aproximadamente la mitad de todos los ingresos de ventas de sistemas de almacenamiento externos en el mundo. 

La eficiencia del almacenamiento se mejora con algoritmos de compresión de datos. Dell EMC Unity XT puede reducir el volumen de datos hasta cinco veces. Otro indicador importante es la eficiencia general del sistema. Dell EMC Unity XT utiliza la capacidad del sistema al 85%. La compresión y deduplicación se realizan en modo inline, a nivel de controladores. Los datos se almacenan en forma comprimida. El sistema también automatiza el manejo de instantáneas de datos.

Las matrices flash de Unity, fáciles de usar, con acceso unificado (a nivel de bloque y de archivo), garantizan un tiempo de respuesta constante, se integran con servicios de almacenamiento en la nube y soportan actualizaciones sin migrar datos. En su configuración básica, este sistema de almacenamiento versátil se instala en 30 minutos.

La tecnología de almacenamiento denominada 'pools dinámicos' permite pasar de la expansión de memoria estática a una dinámica, proporcionando gran flexibilidad operativa y facilidad para aumentar la capacidad del sistema. Los pools dinámicos ahorran capacidad y presupuestos, y requieren menos tiempo para la reconstrucción. La expansión de capacidad y rendimiento de Dell EMC Unity no requiere migración de datos. 

Muchas empresas hoy en día utilizan varios servicios de nube pública junto con su infraestructura local. Dell EMC Unity XT puede funcionar como un componente del entorno de nube de Dell Technologies Cloud. Este sistema de almacenamiento se puede usar en la nube pública y transferir datos a la nube privada. Además, el sistema Dell EMC Unity XT está disponible en el modelo 'como servicio'. Es uno de los servicios de almacenamiento en la nube de Dell EMC Cloud Storage Services.
 
Los almacenamientos en la nube están ganando cada vez más popularidad, ya que permiten mejorar el retorno de la inversión al reducir los costos de infraestructura. Los servicios de almacenamiento en la nube Cloud Storage Services amplían los centros de datos de los clientes hacia la nube, proporcionando almacenamiento Dell EMC (directamente conectado a los recursos de la nube pública) como servicio. Los proveedores externos pueden ofrecer conexiones de alta velocidad (con baja latencia) entre la nube pública y los sistemas Dell EMC Unity, PowerMax e Isilon en el centro de datos del cliente.

La familia Unity XT incluye sistemas Unity XT All-Flash, Unity XT Hybrid, UnityVSA y Unity Cloud Edition.
 

Matrices híbridas y de flash unificadas 

Los sistemas de almacenamiento Unity XT Hybrid y Unity XT All-Flash basados en procesadores Intel implementan una arquitectura integrada para acceso de bloques, acceso de archivos y volúmenes VMware VVols, con soporte para protocolos de almacenamiento en red (NAS), iSCSI y Fibre Channel (FC). Las plataformas Unity XT Hybrid y Unity XT All-Flash están preparadas para utilizar unidades NVMe.

Los sistemas híbridos Unity XT soportan el funcionamiento en entornos multicloud. El soporte para entornos multicloud significa expandir el sistema de almacenamiento en la nube o desplegarlo en la nube con opciones flexibles de uso de recursos. Los almacenamientos multicloud están diseñados para proporcionar movilidad y portabilidad de los datos entre múltiples plataformas en la nube, tanto privadas como públicas. Esto afecta no solo a los procesos de movimiento de datos, sino también a la organización del acceso de aplicaciones a los datos en varias nubes públicas.

Microsoft SQL Server 2019 y arrays de flash Dell EMC Unity XT
Estas matrices híbridas ofrecen las siguientes capacidades:

  • Escalabilidad de hasta 16 PB de capacidad 'bruta'.
  • Funciones integradas de reducción de volumen de datos para todos los grupos de flash.
  • Instalación y configuración rápidas (en promedio toma 25 minutos).

Las tecnologías de las unidades de estado sólido están mejorando rápidamente, y en los próximos años aparecerán nuevos productos revolucionarios en el mercado. Mientras tanto, las organizaciones seguirán reemplazando los discos duros tradicionales (HDD) por unidades de estado sólido para mejorar el rendimiento, la facilidad de gestión y el ahorro energético. Las nuevas generaciones de matrices flash se caracterizarán por herramientas de automatización de almacenamiento más avanzadas, integración con la nube pública y protección de datos integrada. 

Los sistemas Unity XT All-Flash ofrecen alta velocidad, eficiencia y soporte para múltiples nubes. Sus características son:

  • Rendimiento duplicado.
  • Reducción del volumen de datos de hasta 7:1.
  • Instalación y configuración rápidas (el proceso toma menos de 30 minutos).

 UnityVSA

El sistema UnityVSA es un sistema de almacenamiento definido por software para entornos virtuales VMware ESXi, que utiliza capacidad de almacenamiento en servidor, compartida o en la nube. UnityVSA HA, una configuración con dos almacenamientos UnityVSA, proporciona resistencia adicional a fallos. El almacenamiento UnityVSA ofrece:

  • Hasta 50 TB de capacidad de almacenamiento unificado completo.
  • Compatibilidad con sistemas y funciones Unity XT.
  • Soporte para sistemas de alta disponibilidad (UnityVSA HA).
  • Conexión como NAS e iSCSI.
  • Replicación de datos desde otras plataformas Unity XT.

Unity Cloud Edition

Para la sincronización de archivos y operaciones de recuperación ante desastres con la nube, la familia Unity XT incluye una versión Unity Cloud Edition, que proporciona:

  • Capacidades de almacenamiento completas utilizando un sistema de almacenamiento definido por software (SDS) implementado en la nube.
  • Despliegue sencillo de almacenamiento en bloque y de archivos usando VMware Cloud en AWS.
  • Soporte para recuperación de desastres, incluyendo pruebas y análisis de datos.

Microsoft SQL Server 2019 y arrays de flash Dell EMC Unity XT

Unity XT All Flash para SQL Server

En el informe de Unisphere Research de 2017 "Transformación de SQL Server: hacia la flexibilidad y la resistencia" (SQL Server Transformation: Toward Agility and Resiliency) el 22% de los encuestados informaron que utilizan tecnología de almacenamiento flash en producción (16%) o planean hacerlo (6%). El 30% aplica matrices híbridas que incluyen memoria flash. El 13% utiliza matrices flash con conexión directa. El 13% realiza copias de seguridad de bases de datos SQL Server en almacenamiento flash.

La rápida implementación de almacenamiento flash para su uso con SQL Server significa que las matrices Unity XT All-Flash son especialmente adecuadas para desarrolladores y administradores de SQL Server. Los sistemas Unity XT All-Flash brindan a los desarrolladores y administradores de SQL Server capacidades y rendimiento que van más allá de lo que ofrecen las redes de almacenamiento de datos típicas (SAN).

Microsoft SQL Server 2019 y arrays de flash Dell EMC Unity XT
Los sistemas Unity XT All-Flash, preparados para la implementación de NVMe (para un rendimiento aún más alto y baja latencia), tienen un factor de forma de 2U, soportan procesadores de dos núcleos y dos controladores en modo activo/activo.

Modelos Unity XT All-Flash

Unity XT 

Procesadores 

Memoria (por procesador)

Máx. número de unidades

Máx. capacidad "bruta" (PB) 

380F 

1 Intel E5-2603 v4 
6c/1.7 GHz

64 

500 

2.4 

480F 

2 Intel Xeon Silver 
4108 8c/1.8 GHz 

96 

750 

4.0 

680F 

2 Intel Xeon Silver 
4116 12c/2.1 GHz

192 

1,000 

8.0 

880F 

2 Intel Xeon Gold 6130 
16c/2.1 GHz

384 

1,500 

16.0 

Los detalles se pueden encontrar en las especificaciones de la matriz (Hoja de Especificaciones de la Serie de Almacenamiento Dell EMC Unity XT).

Grupos de almacenamiento

Muchos profesionales que trabajan con SQL Server saben que todas las matrices de almacenamiento modernas ofrecen la posibilidad de agrupar discos en unidades de almacenamiento más grandes con un nivel fijo de protección RAID. Los grupos de discos individuales con protección RAID son los grupos de almacenamiento tradicionales. Mientras que los sistemas híbridos Unity XT solo admiten grupos tradicionales, las matrices Unity XT All-Flash también ofrecen grupos de almacenamiento dinámicos. En el caso de los grupos de almacenamiento dinámicos, la protección RAID se aplica a los extensores de discos, unidades de almacenamiento menores que el disco completo. Los grupos dinámicos ofrecen mayor flexibilidad en la gestión y expansión de los grupos de discos. 

Dell EMC proporciona recomendaciones sobre cómo gestionar los grupos de almacenamiento para alcanzar el máximo rendimiento con la mínima complejidad. Por ejemplo, se recomienda minimizar la cantidad de grupos de almacenamiento Unity XT para reducir la complejidad y aumentar la flexibilidad. Sin embargo, configurar grupos de almacenamiento adicionales puede ser muy razonable en ciertos casos, incluidos aquellos en los que es necesario:

  • Soportar cargas de trabajo separadas con diferentes perfiles de entrada/salida.
  • Asignar recursos para alcanzar ciertos parámetros de rendimiento.
  • Asignar recursos individuales para multiarrendamiento.
  • Crear dominios más pequeños para evitar fallos.

Lunas de almacenamiento (LUN)

¿Cómo encontrar un equilibrio entre la gestión y la flexibilidad al elegir la cantidad de volúmenes en una matriz? Para obtener la máxima flexibilidad en Unity con SQL Server, se recomienda crear volúmenes para cada archivo de base de datos. En la práctica, la mayoría de las organizaciones aplican un enfoque multinivel, donde las bases de datos críticas obtienen la máxima flexibilidad, mientras que los archivos de bases de datos menos importantes se agrupan en un menor número de volúmenes grandes. Recomendamos examinar todos los requisitos de las bases de datos y cualquier aplicación relacionada, ya que las tecnologías de protección de datos y monitoreo dependen de la aislamiento y ubicación de los archivos.

A menudo es difícil gestionar múltiples volúmenes, especialmente en entornos virtuales. Los entornos virtualizados de SQL Server son un buen ejemplo de cuándo puede tener sentido colocar varios tipos de archivos en un mismo volumen. El administrador de bases de datos o el administrador de almacenamiento (o ambos) deben encontrar el equilibrio correcto entre flexibilidad y facilidad de mantenimiento al determinar la cantidad de volúmenes a crear.

Almacenamiento de archivos

Los servidores NAS alojan sistemas de archivos en el sistema de almacenamiento Unity XT. Se puede acceder a los sistemas de archivos a través de protocolos SMB o NFS, y gracias al sistema de archivos multiprotocolo se pueden utilizar ambos protocolos simultáneamente. Para conectar un host a sistemas de archivos SMB, NFS y multiprotocolo, así como a almacenes de datos VMware NFS y volúmenes virtuales de VMware, los servidores NAS utilizan interfaces virtuales. Los sistemas de archivos y las interfaces virtuales están aislados dentro de un solo servidor NAS, lo que permite utilizar múltiples servidores NAS para la multi-tenencia. Los servidores NAS cambian automáticamente en caso de fallo si el procesador de almacenamiento falla. Los sistemas de archivos asociados también cambian en caso de fallo.

SQL Server 2012 (11.x) y versiones posteriores admiten el protocolo Server Message Block (SMB) 3.0, que permite compartir un archivo de red para almacenamiento. Tanto para una instalación autónoma como para un clúster de alta disponibilidad, puede instalar las bases de datos del sistema (master, model, msdb y tempdb) y bases de datos de usuario del Motor de Base de Datos con la opción de almacenamiento SMB. Usar almacenamiento SMB es una buena opción al utilizar grupos de disponibilidad Always On, ya que se requiere acceso a un recurso de red de alta disponibilidad para el recurso de archivo compartido.

La creación de recursos de archivos compartidos SMB para implementar SQL Server con almacenamiento Unity XT es un proceso sencillo de tres fases: crear un servidor NAS, un sistema de archivos y un recurso compartido SMB. El software Dell EMC Unisphere Storage Management incluye una utilidad de configuración que ayudará a completar este proceso. Sin embargo, al colocar cargas de trabajo de SQL Server en recursos de archivos compartidos SMB, no debe olvidar algunas consideraciones importantes que no necesariamente están relacionadas con el uso de recursos de archivos compartidos SMB. Microsoft ha elaborado una lista de cuestiones de instalación y seguridad junto con problemas conocidos; para más detalles, consulte la sección 'Instalación de SQL Server con almacenamiento de archivos SMB' en los documentos de Microsoft.

Instantáneas de datos

Los datos se han convertido en el recurso más importante de las empresas, y hoy en día los entornos críticos requieren no solo respaldo. Es necesario que las aplicaciones estén siempre en línea, asegurando operaciones continuas y actualizaciones. También requieren alto rendimiento y disponibilidad de datos mediante opciones tales como replicación local de instantáneas y replicación remota.

El almacenamiento Unity XT ofrece capacidades de creación de instantáneas para bloques y archivos, utilizando flujos de trabajo y arquitectura compartidos. La metodología de instantáneas de Unity proporciona una forma sencilla y efectiva de proteger los datos. Las instantáneas facilitan la recuperación de datos: puede retroceder a una instantánea anterior o copiar datos seleccionados de una instantánea previa. En la siguiente tabla se presentan los períodos de retención de instantáneas para los sistemas Unity XT.

Almacenamiento local y remoto de instantáneas de datos

Tipo de instantánea

en cli-runtime y kubectl
Interfaz de Usuario
REST

De forma manual 

Programado 

De forma manual 

Programado 

De forma manual 

Programado 

Local 

1 año 

1 año

5 años 

4 semanas

100 años

Sin restricciones

Remoto 

5 años

255 semanas 

5 años

255 semanas

5 años

255 semanas

Las instantáneas no son un reemplazo directo de otros métodos de protección de datos, como las copias de seguridad. Solo pueden complementar las copias de seguridad tradicionales como primera línea de defensa para escenarios con un RTO bajo.

La función de instantáneas de Dell EMC Unity incluye reducción de datos y deduplicación avanzada. Las instantáneas también se benefician del ahorro de espacio que se logra en el recurso de almacenamiento original. Al tomar una instantánea de un recurso de almacenamiento compatible con funciones de reducción de datos, los datos en el origen pueden ser comprimidos o deduplicados.

Aquí hay algunas consideraciones sobre la recuperación de bases de datos usando instantáneas con bases de datos de SQL Server:

  • Todos los componentes de la base de datos de SQL Server deben ser protegidos como un conjunto de datos. Cuando los archivos de datos y de registros se encuentran en diferentes LUN, estas LUN deben ser parte de un grupo consistente. Un grupo consistente asegura que la instantánea se tome simultáneamente en todas las LUN del grupo. Cuando los archivos de datos y de registros se encuentran en varios recursos de archivos SMB compartidos, los recursos compartidos deben estar en un mismo sistema de archivos.
  • Al recuperar una base de datos de SQL Server desde una instantánea basada en bloques, si la instancia de SQL Server debe permanecer conectada, use la conexión al host Unisphere. Para la recuperación basada en archivos, se crea un recurso compartido SMB adicional utilizando la instantánea como fuente. Después de conectar los volúmenes, la base de datos se puede adjuntar con otro nombre o reemplazar la base de datos existente con la recuperada.

  • Al realizar una recuperación utilizando el método de recuperación de instantáneas Snapshot Restore en Unisphere, lleve la instancia de SQL Server a modo fuera de línea. SQL Server no conoce las operaciones de recuperación. Llevar la instancia a modo fuera de línea garantiza que los volúmenes no se corrompan durante las operaciones de escritura en la base de datos antes de la recuperación. Una vez que la instancia se reinicie, la recuperación en caso de desastre de SQL Server llevará las bases de datos a un estado consistente.
  • Permita instantáneas para varios objetos de almacenamiento simultáneamente y, antes de habilitar instantáneas adicionales, asegúrese de que el sistema esté en los modos de operación recomendados mediante la monitorización.

Automatización y programación de instantáneas

Las instantáneas en Unity XT se pueden automatizar. En el sistema de gestión de almacenamiento Unisphere, están disponibles las siguientes opciones de instantáneas predeterminadas: protección predeterminada, protección con un plazo de retención más corto y protección con un plazo de retención más largo. Cada opción crea instantáneas diarias y las conserva durante diferentes períodos de tiempo.

Se puede elegir una (o ambas) de las opciones de programación: cada x horas (de 1 a 24) y diariamente / semanalmente. La programación diaria / semanal de instantáneas permite especificar horarios y días concretos para crear instantáneas. Para cada opción seleccionada, se debe establecer una política de retención, que puede configurarse para eliminar automáticamente el grupo o para almacenamiento temporal.

Más información sobre las instantáneas de Unity en la documentación de Dell EMC Unity. 

Clones delgados

Un clone delgado es una copia de un recurso de almacenamiento de bloques delgado que es de lectura/escritura, como un volumen, un grupo consistente o un almacenamiento de datos VMware VMFS, que comparte bloques con el recurso padre. Los clones delgados son una excelente manera de presentar copias de bases de datos de SQL Server de forma rápida y compacta, algo que no se puede lograr con herramientas tradicionales de SQL Server. Una vez que el clone delgado se presenta al host, los volúmenes se pueden poner en funcionamiento (en línea), y la base de datos se unirá utilizando el método de unión de base de datos en SQL Server.

Al usar la función de actualización con clones delgados, desactive (ponga fuera de línea) todas las bases de datos que se encuentran en el clone delgado. Esto debe hacerse antes de la operación de actualización. Si no se ponen las bases de datos en modo fuera de línea antes de realizar la actualización, esto puede causar errores de inconsistencia de datos o resultados incorrectos de datos en SQL Server.

Replicación de datos

La replicación es una función de software que sincroniza datos con un sistema remoto en el mismo objeto o en otro lugar. Las opciones de replicación y configuración de Unity permiten elegir una forma efectiva de satisfacer los requisitos de RTO/RPO para bases de datos de SQL Server, manteniendo un equilibrio entre rendimiento y ancho de banda.

Al utilizar la replicación de Dell EMC Unity para proteger bases de datos de SQL Server en varios volúmenes, se debe limitar todos los datos y volúmenes de registros de la base de datos a un solo grupo consistente o sistema de archivos. Luego, la replicación se configura en el grupo o sistema de archivos y puede incluir volúmenes o recursos compartidos de varias bases de datos. Las bases de datos que requieren diferentes parámetros de replicación deben encontrarse en LUN, grupos consistentes o sistemas de archivos separados.

Los clones delgados son compatibles tanto con la replicación síncrona como con la asíncrona. Cuando un clon delgado se replica en el destino, se convierte en una copia completa del volumen, grupo consistente o almacenamiento VMFS. Después de la replicación, el clon delgado es un volumen completamente independiente con sus propias configuraciones.

Microsoft SQL Server 2019 y arrays de flash Dell EMC Unity XT
El proceso de replicación del clon delgado entre los sistemas de origen y destino.

No se requiere la replicación de la base de datos tempdb, ya que el archivo se reconstruye al reiniciar SQL Server, por lo que los metadatos no corresponden al método de otras instancias de SQL Server. Una selección cuidadosa de los volúmenes para la replicación y el contenido de esos volúmenes elimina el tráfico de replicación innecesario.

Gestión integrada de copias de datos de Microsoft SQL Server

La mayoría de los productos de almacenamiento modernos (incluyendo todos los productos de Dell EMC) pueden crear copias "coherentes con el sistema operativo" de archivos de cualquier tipo mediante:

  • El orden de escritura coherente del sistema operativo en todos los niveles, desde el host hasta el dispositivo de almacenamiento.
  • La agrupación de volúmenes, de modo que se mantenga el orden de escritura para varios archivos en diferentes volúmenes.

Con la amplia adopción de dispositivos de almacenamiento escalables, Microsoft ha desarrollado una API para proveedores de almacenamiento. Esta API permite a los proveedores de almacenamiento coordinar sus acciones con el software de bases de datos SQL Server para crear "copias coherentes con la aplicación" utilizando el servicio de instantáneas de volúmenes (VSS). Estas copias simulan la interacción entre SQL Server y el sistema operativo durante el funcionamiento normal y la conclusión de SQL Server. Todos los búferes de escritura son vaciados y las transacciones se suspenden hasta que todos los discos estén actualizados y coherentes en un momento determinado que se registra en el log de SQL.

El software Dell EMC AppSync, integrado con instantáneas de Unity XT, simplifica y automatiza el proceso de creación, uso y gestión de copias de datos de trabajo coherentes con la aplicación. Este software está diseñado para su uso en escenarios de gestión de copias para la recuperación de bases de datos y su reutilización. 

El software AppSync detecta automáticamente las bases de datos de la aplicación, examina la estructura de la base de datos y mapea la estructura de archivos a través de los niveles de hardware o virtualización en el almacenamiento base Unity XT. Organiza todas las acciones necesarias, desde la creación y verificación de la copia hasta el montaje de instantáneas en el host de destino y el inicio o la recuperación de la base de datos. AppSync apoya y simplifica los flujos de trabajo de SQL Server, que incluyen actualizaciones y recuperación de la base de datos en operación.

Reducción de datos y deduplicación avanzada

La familia de sistemas de almacenamiento Dell EMC Unity ofrece servicios de reducción de datos multifuncionales y fáciles de usar. El ahorro se logra no solo en los recursos de almacenamiento primarios configurados, sino también en las instantáneas y clones finos de esos recursos. Las instantáneas y clones finos heredan la configuración de reducción de datos del almacenamiento original, lo que aumenta el ahorro de capacidad.

La función de reducción de volumen de datos incluye acciones de deduplicación, compresión y detección de bloques vacíos, lo que potencialmente aumenta el espacio de almacenamiento útil para objetos de usuario y uso interno. La función de reducción de volumen de datos de Unity XT reemplaza la función de compresión en Unity OE 4.3 y versiones posteriores. La compresión es un algoritmo de reducción de datos que puede disminuir la distribución física de la capacidad necesaria para almacenar un conjunto de datos.

Los sistemas Unity XT también proporcionan una función de deduplicación avanzada que se puede activar si se habilita la reducción de volumen de datos. La deduplicación avanzada reduce la capacidad necesaria para los datos de usuario, conservando solo un pequeño número de copias (a menudo solo una copia) de los bloques de datos de Unity. El ámbito de la deduplicación es un LUN. Tenga esto en cuenta al seleccionar un esquema de almacenamiento. Un menor número de LUN conduce a una mejor deduplicación, pero un mayor número de LUN proporciona un rendimiento superior. 

El ahorro de capacidad a través de la deduplicación avanzada puede proporcionar el mayor rendimiento en la mayoría de los entornos, pero también requiere el uso de recursos del procesador del arreglo Unity. En OE 5.0, la deduplicación avanzada, si está habilitada, deduplica cualquier bloque (comprimido o sin comprimir). Información adicional se puede encontrar en la documentación de Dell EMC.

La siguiente tabla muestra las configuraciones compatibles para la reducción de datos y la deduplicación avanzada:

Reducción de datos en Unity (todos los modelos) y soporte avanzado de deduplicación

Versión Unity OE 

Tecnología 

Tipo de pool compatible 

Modelos compatibles

4.3 / 4.4 

Reducción del volumen de datos 

Pool de memoria flash — tradicional o dinámico 

300, 400, 500, 600, 300F, 400F, 500F, 600F, 350F, 450F, 550F, 650F 

4.5 
 

Reducción del volumen de datos 

300, 400, 500, 600, 300F, 400F, 500F, 600F, 350F, 450F, 550F, 650F 

Reducción de volumen de datos y deduplicación avanzada*

450F, 550F, 650F 

5 
 

Reducción del volumen de datos 

300, 400, 500, 600, 300F, 400F, 500F, 600F, 350F, 450F, 550F, 650F, 380, 480, 680, 880, 380F, 480F, 680F, 880F 

Reducción de datos y deduplicación avanzada

450F, 550F, 650F, 380, 480, 680, 880, 380F, 480F, 680F, 880F

* La reducción del volumen de datos está desactivada por defecto, y debe habilitarse antes de que la deduplicación avanzada esté disponible como opción. Una vez habilitada la reducción de volumen de datos, la deduplicación avanzada está disponible, pero está desactivada por defecto.

Reducción de volumen de datos en Unity y compresión de datos en SQL Server

El lanzamiento de SQL Server 2008 Enterprise Edition fue la primera versión con capacidades de compresión de datos propias. Al comprimir a nivel de filas y páginas, SQL Server 2008 utiliza el conocimiento del formato de tabla de la base de datos interna de SQL Server para reducir el espacio ocupado por los objetos de la base de datos. La reducción del espacio permite almacenar más filas en la página y más páginas en el grupo de búferes. Dado que los datos que no se almacenan en el formato de página de datos de 8k, como los datos fuera de fila, como NVARCHAR (MAX), no utilizarán los métodos de compresión de filas o páginas, Microsoft introdujo las funciones Transact-SQL COMPRESS y DECOMPRESS. 

Estas funciones utilizan un enfoque tradicional para la compresión de datos (algoritmo GZIP), que debe invocarse para cada segmento de datos para comprimir o descomprimir.

La compresión Unity XT, que no se limita exclusivamente a SQL Server, utiliza un algoritmo de software para analizar y comprimir los datos de almacenamiento. Desde el lanzamiento de Unity OE 4.1, la compresión de datos Unity ha estado disponible para volúmenes de almacenamiento en bloque y almacenamiento de datos VMFS en el grupo de memoria flash. A partir de Unity OE 4.2, la compresión también está disponible para sistemas de archivos y almacenamiento de datos NFS en grupos de almacenamiento en unidades flash.

La elección del método de compresión de datos para SQL Server depende de varios factores. Estos factores incluyen el tipo de contenido de la base de datos, los recursos de CPU disponibles, tanto en el almacenamiento como en los servidores de base de datos, así como los recursos de entrada/salida necesarios para mantener SLA. En general, se puede esperar un ahorro adicional de espacio para los datos que se comprimen mediante los medios de SQL Server; sin embargo, los datos comprimidos utilizando la función de compresión TSQL con el algoritmo GZIP probablemente no obtendrán una reducción significativa adicional de las funciones de compresión Unity XT, ya que la mayoría de las ventajas se logran a través del primer algoritmo universal aplicado.

La compresión Unity proporciona ahorro de espacio si los datos en el objeto de almacenamiento se comprimen al menos en un 25%. Antes de habilitar la compresión para un objeto de almacenamiento, determine si contiene datos que se pueden comprimir. No habilite la compresión para un objeto de almacenamiento si no proporcionará ahorro de capacidad. 

Al tomar la decisión de si utilizar la reducción de datos de Unity, la compresión a nivel de base de datos de SQL Server o ambas, considere lo siguiente:

  • Los datos que se escriben en el sistema Unity son validados por el host después de ser almacenados en la caché del sistema. Sin embargo, el proceso de compresión no se inicia hasta que se limpia la caché.

  • El ahorro por compresión no solo se logra para los recursos de almacenamiento de Unity XT, sino también para las instantáneas y clones finos del recurso.
  • Durante el proceso de compresión, varios bloques se agregan mediante un algoritmo de muestreo para determinar si los datos son sujetos a compresión. Si el algoritmo de muestreo determina que solo se puede lograr un ahorro mínimo, entonces se omite la compresión y los datos se escriben en el pool existente.
  • Cuando los datos se comprimen antes de escribirse en el medio, el volumen de operaciones sobre ellos se reduce significativamente. Por lo tanto, la compresión ayuda a disminuir el desgaste de la memoria flash al reducir el volumen físico de datos escritos en el dispositivo.

Para obtener más información sobre la compresión de filas y páginas en SQL Server para tablas e índices, consulte los documentos de Microsoft.

Recuerde que cualquier compresión requiere recursos de CPU. Con altas exigencias de ancho de banda, la compresión puede tener un impacto significativo en el rendimiento. Altas tasas de escritura de cargas de trabajo OLAP también pueden reducir los beneficios de la compresión para la base de datos SQL Server.

Los especialistas de Dell EMC investigaron el ahorro potencial utilizando tasas reales de reducción de datos en el arreglo Unity. El grupo recopiló datos sobre máquinas virtuales de VMware, compartición de archivos, bases de datos de SQL Server, máquinas virtuales de Microsoft Hyper-V, etc.

Los resultados del estudio mostraron que la reducción del tamaño del archivo de registro de SQL Server es casi 10 veces menor que la del archivo de datos:

  • Tamaño de la base de datos = 1,49: 1 (32,96%)
  • Tamaño de los registros = 12,9: 1 (92,25%)

La base de datos SQL Server estaba equipada con dos volúmenes. Los archivos de la base de datos se almacenan en un volumen, mientras que los registros de transacciones se encuentran en el otro. El uso de la tecnología de reducción de datos en los volúmenes de la base de datos puede proporcionar ahorros de almacenamiento; sin embargo, se debe tener en cuenta el impacto en el rendimiento al decidir si se debe habilitar la desduplicación en los volúmenes de la base de datos. Aunque la reducción real del tamaño de la base de datos puede variar según los datos almacenados, los resultados de la investigación mostraron que el espacio para los registros de transacciones de SQL Server puede verse significativamente reducido.

Mejores prácticas para la reducción de datos

Antes de habilitar la reducción de datos en un objeto de almacenamiento, considere las siguientes recomendaciones:

  • Utilice la monitorización del sistema de almacenamiento para asegurarse de que tiene recursos disponibles para soportar la reducción de datos.
  • Habilite la reducción de datos para varios objetos de almacenamiento a la vez. Antes de habilitarlo en objetos de almacenamiento adicionales, supervise el sistema para asegurarse de que está en modos de operación recomendados.
  • En los modelos Unity XT x80F, la reducción de datos proporcionará ahorros de capacidad si los datos en el bloque de almacenamiento se comprimen al menos en un 1%.

La reducción de datos en modelos anteriores de Unity x80F que operan con OE 5.0 proporcionaba ahorros si los datos eran comprimibles al menos en un 25%.

  • Antes de habilitar la reducción de datos en un objeto de almacenamiento, determine si el objeto contiene datos comprimibles. Ciertos tipos de datos, como video, audio, imágenes y datos binarios, generalmente ofrecen poco beneficio en compresión. No habilite la reducción de datos en un objeto de almacenamiento si no habrá ahorro de espacio.
  • Considere la opción de compresión selectiva del volumen de datos de archivos que suelen comprimirse bien.

Virtualización VMware

VMware vSphere es una plataforma eficiente y segura para la virtualización y el entorno en la nube. Los componentes principales de vSphere son VMware vCenter Server y el hipervisor VMware ESXi.

vCenter Server es una plataforma unificada para la gestión de entornos vSphere. Se caracteriza por su facilidad de implementación y optimización proactiva de recursos. ESXi es un hipervisor de código abierto que se instala directamente en servidores físicos. ESXi tiene acceso directo a los recursos fundamentales, y su pequeño tamaño de 150 MB minimiza los requisitos de memoria. Proporciona un rendimiento confiable para diversas cargas de trabajo de aplicaciones y admite configuraciones potentes de máquinas virtuales, con hasta 128 CPUs virtuales, 6 TB de RAM y 120 dispositivos.

Para que SQL Server funcione de manera eficiente en hardware moderno, el sistema operativo de SQL Server (SQLOS) debe 'comprender' la estructura del hardware. Con la llegada de sistemas multinúcleo y multinodo de acceso no uniforme a la memoria (NUMA), se ha vuelto particularmente importante entender las relaciones entre núcleos, procesadores lógicos y físicos.

Procesadores 

Un procesador virtual (vCPU) es una unidad central de procesamiento virtual asignada a una máquina virtual. El total de vCPUs asignados se calcula como:

Total de vCPU = (número de sockets virtuales) * (número de núcleos virtuales por socket)

Si la estabilidad del rendimiento es importante, VMware recomienda que el total de vCPUs asignadas a todas las máquinas virtuales no exceda el número total de núcleos físicos disponibles en el host ESXi, aunque se puede aumentar el número de vCPUs asignadas si la monitorización muestra que hay recursos de CPU no utilizados disponibles.

En sistemas con tecnología Intel Hyper-Threading habilitada, el número de núcleos lógicos (vCPU) es el doble que el número de núcleos físicos. En este caso, no asigne la totalidad de vCPUs.

Las cargas de trabajo de bajo nivel de SQL Server son menos afectadas por la variabilidad de la latencia. Por lo tanto, estas cargas de trabajo pueden ejecutarse en hosts con una mayor proporción de vCPUs a físicos. Niveles de carga razonables de CPU pueden aumentar la capacidad total del sistema, maximizar el ahorro en licencias y mantener un rendimiento adecuado.

Intel Hyper-Threading generalmente aumenta la capacidad total del host entre 10 y 30%, lo que sugiere una relación de CPU virtuales a procesadores físicos de 1,1 a 1,3. VMware recomienda habilitar Hyper-Threading en el BIOS UEFI siempre que sea posible, para que ESXi pueda aprovechar esta tecnología. También se recomienda que VMware realice pruebas exhaustivas y monitoreo al usar Hyper-Threading para cargas de trabajo de SQL Server.

Memoria

Casi todos los servidores modernos utilizan una arquitectura de acceso no uniforme a la memoria (NUMA) para la comunicación entre la memoria principal y los procesadores. NUMA es una arquitectura de hardware para memoria compartida que implementa la separación de bloques de memoria física entre procesadores físicos. Un nodo NUMA es uno o más zócalos de CPU junto con un bloque de memoria dedicada. 

Durante la última década, NUMA ha sido un tema ampliamente discutido. La complejidad relativa de NUMA se debe, en particular, a las implementaciones de diferentes proveedores. En entornos virtualizados, la complejidad de NUMA también está definida por el número de parámetros de configuración y niveles, desde el hardware hasta el hipervisor, el sistema operativo invitado y, finalmente, la aplicación SQL Server. Tener un buen conocimiento de la arquitectura de hardware de NUMA es un requisito indispensable para cualquier administrador de bases de datos SQL Server que trabaje con una instancia de SQL Server virtualizada.

Para lograr una mayor eficiencia en servidores con muchos núcleos, Microsoft introdujo SoftNUMA. El software SoftNUMA permite dividir los recursos de CPU disponibles dentro de una NUMA en varios nodos SoftNUMA. Según VMware, SoftNUMA es compatible con la topología de NUMA virtual (vNUMA) de VMware y puede optimizar aún más la escalabilidad y el rendimiento del motor de base de datos para la mayoría de las cargas de trabajo...

Al virtualizar VMware con SQL Server, utilice:

  • Monitoreo de máquinas virtuales para detectar escasez de recursos de memoria para el motor de base de datos de SQL Server. Este problema provoca un aumento de las operaciones de entrada/salida y una disminución del rendimiento.

  • Para mejorar el rendimiento, evite los conflictos de memoria entre máquinas virtuales al evitar la sobrecarga excesiva de memoria en el nivel del host ESXi.
  • Considere la posibilidad de verificar la asignación de memoria física NUMA para determinar la cantidad máxima de memoria que se puede asignar a una máquina virtual dentro de los límites físicos de NUMA.
  • Si lograr un rendimiento adecuado es el objetivo principal, considere reservar memoria igual a la memoria asignada. Esta configuración garantiza que la máquina virtual obtenga únicamente memoria física.

Almacenamiento virtualizado

La configuración de almacenamiento en un entorno virtualizado requiere conocimiento de la infraestructura de almacenamiento. Al igual que con NUMA, es necesario comprender cómo funcionan los diferentes niveles de entrada y salida, en este caso, desde la aplicación en la máquina virtual hasta la lectura y escritura físicas de datos en el medio de almacenamiento.

vSphere ofrece una variedad de opciones para la configuración de almacenamiento, que tienen aplicaciones útiles en la implementación de SQL Server con el arreglo Unity XT. FS VMFS es el método de almacenamiento más utilizado en sistemas de almacenamiento de bloques, como Unity XT. El arreglo Unity XT es el nivel más bajo, compuesto por unidades físicas, que vSphere presenta como discos lógicos (volúmenes). Los volúmenes de Unity XT están formateados como volúmenes VMFS por el hipervisor ESXi. Los administradores de VMware crean uno o más discos virtuales (VMDK) que son presentado a la sistema operativo huésped. RDM permite que la máquina virtual acceda directamente al almacenamiento de bloques (por FC o iSCSI) de Unity XT sin formatear en VMFS. Los volúmenes VMFS y RDM pueden proporcionar el mismo rendimiento de transacciones. 

Para almacenamiento basado en NFS para ESXi, Dell EMC recomienda usar VMware NFS en lugar de sistemas de archivos NFS de propósito general. La máquina virtual que ejecuta SQL Server y usa VMDK en el almacenamiento de datos NFS no tiene conocimiento de la capa subyacente de NFS. El sistema operativo huésped considera la máquina virtual como un servidor físico que ejecuta Windows Server y SQL Server. Los discos compartidos para configuraciones de instancia de clúster de alta disponibilidad en los almacenes de datos NFS no son compatibles.

Los volúmenes virtuales de VMware vSphere (VVols) ofrecen un control más granular a nivel de máquina virtual, independientemente de la representación subyacente de la memoria física (como volúmenes o sistemas de archivos). La replicación basada en arreglo con VVols es compatible a partir de VVol 2.0 (vSphere 6.5). El disco VVol se puede utilizar en lugar de un disco RDM para proporcionar recursos de disco a una instancia de clúster SQL tolerante a fallos, a partir de vSphere 6.7, con soporte para conmutación de reserva persistente por SCSI.

Redes virtualizadas

La red en el mundo virtual sigue los mismos conceptos lógicos que en el mundo físico, pero utiliza software en lugar de cables y conmutadores físicos. El impacto de la latencia de la red en las cargas de trabajo de SQL Server puede variar significativamente. Monitorear las métricas de rendimiento de la red en una carga de trabajo existente o en un sistema de prueba bien implementado durante un período representativo ayuda en la creación de una red virtual.

Al utilizar la virtualización de VMware con SQL Server, se deben tener en cuenta los siguientes aspectos:

  • Tanto los conmutadores virtuales estándar como los distribuidos proporcionan la funcionalidad necesaria para SQL Server.
  • Para la separación lógica del tráfico de administración, vSphere vMotion y almacenamiento en red, utilice la etiquetación VLAN y los grupos de puertos del conmutador virtual.
  • VMware recomienda encarecidamente habilitar tramas grandes en los conmutadores virtuales donde esté habilitado el tráfico vSphere vMotion o tráfico iSCSI.
  • En general, siga las recomendaciones de red para sistemas operativos huéspedes y hardware.

 Conclusión 

Los entornos de bases de datos SQL Server están volviéndose cada vez más escalables y complejos. En SQL Server 2019, Microsoft ha mejorado las funciones principales de SQL Server y ha agregado nuevas, como el soporte para cargas de trabajo de grandes datos a través de Apache Spark y HDFS. Dell EMC, en colaboración con Microsoft, sigue proporcionando los componentes de infraestructura necesarios para el entorno de SQL Server: servidores, almacenamiento y redes. 

Estamos viendo un aumento significativo en el tiempo de actividad y una reducción en el costo total de propiedad (TCO) cuando los especialistas en almacenamiento y bases de datos trabajan conjuntamente en la creación de soluciones de infraestructura para SQL Server en plataformas de almacenamiento compartido. El arreglo flash Dell EMC Unity XT es una solución de gama media adecuada para desarrolladores y administradores de SQL Server que requieren alto rendimiento y baja latencia. El sistema Unity XT All-Flash, diseñado para operar en todos los medios flash, admite CPUs de dos procesadores, configuraciones de dos controladores y optimización multinúcleo.

Cada vez más las organizaciones están virtualizando sus entornos de SQL Server. Aunque la virtualización agrega un nivel adicional de diseño a la arquitectura, ofrece ventajas significativas. Esperamos que algunos de los más utilizados funciones y herramientas de VMware en entornos de SQL Server, presentados anteriormente, sean útiles. También recomendamos enlaces a recursos para obtener más información detallada.

Enlaces útiles

Dell EMC

VMware

Microsoft

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster