aplicaciones difusas manejo de grandes volúmenes de datos
Post on 15-Apr-2017
120 Views
Preview:
TRANSCRIPT
Aplicaciones Difusas:Manejo de Grandes
Volúmenes de Datos
Autor(es): • Mtr. Luis Fernando Aguas
Very Large Tables (VLT)
• Gran cantidad de datos• Millones/Billones de filas• Datos estructurados
• OLTP(Procesamiento de Transacciones En Línea)• Aplicaciones de misión crítica
• Sistemas con elevado número de TPS• Sistemas con tracking/Logging
• DataWarehouse• Repositorio histórico de procesos de negocio• Procesos de carga perdiódicos
Desafíos de las VLT (Very Large Tables)
TransaccionalReportes
ÍndicesEstadísticasHistorificación
RendimientoMantenimiento
Desafíos: Mantenimiento de Índices
• Imprescindible para evitar fragmentación• Sobrecarga E/S
• Full Scan de las tablas• Escritura intensiva en Log
• CPU• Bloqueos
• Soluciones actuales:• Reorganización vs. Rebuild• Particionado de datos
Desafíos: Mantenimiento de Índices (II)
• Rebuild Online a nivel de partición• Lock Priority
• Prioridad del proceso• MAX_DURATION• ABORT_AFTER_WAIT
• Reducimos Bloqueos• Mayor control de Bloqueos
Desafíos: Mantenimiento de Estadísticas
• Ayudan al optimizador -> Planes de ejecución• Histogramas
• Aconsejable FULLSCAN• Requieren de E/S
• Impactan en performance
• Soluciones actuales:• Actualizar estadísticas con muestreos de datos• Estrategia de actualizaciones• Varias ventanas de mantenimiento
Desafíos: Mantenimiento de Estadísticas
Con SQL Server
• Estadísticas Incrementales• Basadas en particionado de datos• Definición explícita
Desafíos: Rendimiento consultas
Soluciones actuales• Índices de cobertura• Compresión• Particionado de datos• Código T-SQL Eficiente
OLTPInsert/Delete/UpdateSelect by Key (1 row)24 x 7 x 365
DataWarehouseConsultas de negocioGroup By / MAX(), MIN()…Cargas periódicas
Híbridos Cargas de trabajo mixtas Impacto en rendimiento
Desafíos: Rendimiento consultas
Con SQL Server• Índices columnares• Mejoras desde 2012
• Clustered Columnstore Indexes• Read-Write• Particionado de datos• Nuevo tipo de compresión de datos
Desafíos: Historificación de datos
• Movimiento de datos “no activos”• Almacenamiento de alto rendimiento
• limitado y caro• Posibles soluciones actuales
• Particionado + Compresión• Particionado + Compresión + Tabla Hist• Particionado + compresión + BBDD hist• Particionado + compresión + Servidor hist• Otras….
Particionado + Compresión
<=M-6 M-5 M-2M-3M-4 >= MM-1
Particiones comprimidas (PAGE)Datos “no activos”
Filegroup ReadonlyAlmacenamiento bajo rendimiento
Particiones sin compresiónDatos “activos”
Primary FilegroupAlmacenamiento Alto rendimiento
dbo.Ventas
Particionado + Compresión + Tabla Hist
M-2 >= MM-1
dbo.Ventas
<=M-6 M-5 M-3M-4
dbo.Hist_Ventas
Particiones comprimidas (PAGE)Datos “no activos”
Filegroup ReadonlyAlmacenamiento bajo rendimiento
Particiones sin compresiónDatos “activos”
Primary FilegroupAlmacenamiento Alto rendimiento
Switch IN/OUT
Particionado + Compresión + BBDD Hist
M-2 >= MM-1
dbo.Ventas
STG
dbo.Stg_VentasStep1Switch OUT
HistBBDD
Step2Movimiento Datos
SSIS/Otros<=M-6 M-5 M-3M-4
dbo.Hist_Ventas
OnPremise/Azure
Particionado + Compresión + Columnar
M-2 >= MM-1
dbo.Ventas
STG
dbo.Stg_Ventas
Particiones comprimidas Columnstore vs. Columnstore_Archive
Datos “no activos”Almacenamiento alto rendimiento
Particiones sin compresiónDatos “activos”
Primary FilegroupAlmacenamiento Alto rendimiento
Step1Switch OUT
<=M-6 M-5 M-3M-4
Step2Switch IN
top related