Este documento presenta una introducción a las opciones de máquinas virtuales y almacenamiento para construir servidores SQL de alto rendimiento en AWS y Azure. Cubre los principales modelos de VM como T2, M4, C4 y R3 en AWS, y A, D, G, DS y GS en Azure. También explica las opciones de almacenamiento como EBS general, Provisioned IOPS y almacenamiento local en AWS, y Page Blob, SSD local y Premium Storage en Azure. El documento concluye recomendando modelos y configuraciones óptimas para lograr alto
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
VMs Alto Rend SQL AWS Azure
1. VMs de Alto Rendimiento para
SQL Server en AWS y Azure
Warner Chaves
SQLTurbo.com / Pythian
2. Bio
2
• 10 años de Experiencia como DBA del SQL Server.
• Experiencia previa como DBA Nivel 3 de HP en Costa Rica, ahora trabajo
para Pythian como Consultor Principal en Ottawa, Ontario.
• Twitter: @warchav
• Email: warner@sqlturbo.com
• Blog: SQLTurbo.com
• Empresa: Pythian.com
3. 3
Agenda
Objetivo: introducir los principales modelos de Maquinas Virtuales y las opciones de
almacenamiento para construir SQL Servers de alto rendimiento en AWS y Azure.
Temas:
1- Modelos de VM en AWS
2- Opciones de almacenamiento en AWS
3- Modelos de VM en Azure
4- Opciones de almacenamiento en Azure
5- Pruebas.
3
5. 5
Modelos de VM en AWS
Modelos comunes utilizados:
General purpose T2.
General purpose M4.
Compute optimized C4.
Memory optimized R3.
Storage optimized I2.
5
6. 6
El caso especial del modelo T2
• Los modelos T2 permiten CPU bursting.
• Rendimiento base depende del modelo.
• Periodos de actividad baja acumulan creditos de CPU.
• Los creditos se gastan usando el CPU, 1 credito = 1
minuto de full CPU.
6
7. 7
CPU – Memoria – Almacenamiento?
Cada modelo se enfoca en un area particular.
C4 tiene los CPUs mas poderosos.
R3 tiene el mejor costo por GB de RAM.
I2 tienen SSDs temporales grandes y rapidos.
7
8. 8
Opciones de Almacenamiento
• Tres tipos de almacenamiento:
• General storage (SSD): 3 IOPs por GB, acumula creditos y puede
hacer burst hasta 3000 IOPS por 30 minutos. Volumenes 1TB+ no
hacen burst.
• Provisioned IOPS SSD: la opcion mas costosa pero garantiza el
mismo nivel de rendimiento en todo momento. 30 IOPs por GB.
• Magnetic: util para archivar datos, bases de datos de baja
prioridad, dev/test.
8
9. 9
Limites de ancho de banda
• Modelos diferentes tienen un limite de ancho de banda diferente
que impacta el rendimiento del storage.
• Este ancho de banda es un posible cuello de botella, aun si ud
conecta almacenamiento que puede consumir mas datos.
9
11. 11
Otros tips en AWS
• Entre mas grande sea un volumen General Purpose puede hacer burst por
mas tiempo y llenar los creditos mas rapido.
• C4.8xlarge y D2.8xlarge tienen ancho de banda a EBS y ademas una
interfaz de 10-gigabit exclusiva para el trafico de red.
• Volumenes restaurados de snapshots se recomienda hacer un pre-warm
para no pagar una penalidad de primer acceso.
11
13. 13
Modelos de VM en Azure
• La serie A fue la primera generacion de maquinas virtuales.
• Ha sido mejorada en la serie D y G.
• DS y GS son lo mismo que D y G pero con almacenamiento
Premium.
• Limites de ancho de banda son publicados solo para DS y GS.
• No hay opciones de bursting.
13
14. 14
DS o GS para SQL Server?
DS and GS son las unicas opciones para alto rendimiento.
DS fue la primera con Premium storage pero ahora GS existe
tambien.
GS tiene CPU mas rapido y usualmente mas RAM por core (a su
precio).
Mi recomendacion depende de que tan demandante sea la base de
datos para justificar la diferencia de precio entre DS y GS.
14
15. 15
Opciones de Almacenamiento
Tres tipos:
Azure Page Blob: este es el storage clasico, cada volumen da 500 IOPS y
aproximadamente ~60MB/s.
SSDs locales temporales: tempdb o BPE.
Azure Premium storage: disponible en 3 modelos:
15
Nivel Tamaño IOPS Ancho de banda Precio mensual (Nov 2015)
P10 128GB 500 100MB/s 19.71 USD
P20 512GB 2300 150MB/s 73.22 USD
P30 1024GB 5000 200MB/s 135.17 USD
16. 16
Limites de ancho de banda
• Similar a AWS, las maquinas tiene limites de cuantos datos
pueden mover en su ancho de banda.
16
Tipo IOPS MB/s
DS1 3200 32
DS2 6400 64
DS3 12800 128
DS4 25600 256
DS11 6400 64
DS12 12800 128
DS13 25600 256
DS14 50000 512
Tipo IOPS MB/s
GS1 5000 125
GS2 10000 250
GS3 20000 500
GS4 40000 1000
GS5 80000 2000
17. 17
Otros tips en Azure
• Mejores Practicas de MS para discos de datos es no tener
caching para discos de Page Blob y Read-Only caching para
discos de Premium Storage.
• Si necesita hacer striping: poner el stripe size a 64 KB para OLTP
y 256 KB para warehousing.
• Las mejores practicas de SQL aplican igual.
17
21. 21
AWS R3 – 2 cores – GP C – Prov IOPS D – Scratch
SSD Z
21
22. 22
Azure G – 2 cores – Blob C – Scratch SSD D - 2 Vol E
22
23. 23
Azure DS – 2 cores – Blob C – Scratch SSD D – P30 E
23
24. 24
Resumen para AWS
• Modelos T2 pueden tener buen balance de precio/rendimiento pero NO son para
trabajo critico de alto rendimiento.
• Recomiendo escoger entre compute / memory o storage optimized dependiendo de
la necesidad.
• Asegurarse de que es un modelo EBS optimized para mejor IO.
• Si es realmente critico de alto rendimiento la mejor opcion es provisioned IOPS
SSD.
• Diseñar la maquina con el ancho de banda en mente.
• Usar el SSD local para tempdb.
24
25. 25
Resumen para Azure
• Serie A es la primera generacion, ha sido superada por D, DV2 y G.
• Para alto rendimiento de SQL Server la opcion es DS o GS.
• Tener en cuenta el ancho de banda a la hora de crear los volumenes de
Premium Storage.
• Si esta en un modelo anterior que solo tiene Blob storage entonces lo mas
probable es que ocupe hacer striping para tener rendimiento decente.
• Usar el SSD local para tempdb.
25