Upload
sebastian-rodriguez-robotham
View
160
Download
3
Embed Size (px)
DESCRIPTION
Esta presentación muestra los resultados de la prueba de conceptos realizada sobre SQL Server 2014 Enterprise en una empresa del rubro Bancario. En resumen, este documento evidencia un mejoramiento en el rendimiento de hasta 6 veces en las consultas adhoc en SQL, y un 30% de mayor eficiencia en las tasas de compresión de datos. Esta PPT la expuse en un evento organizado por Microsoft en junio del año 2014, en el marco de las nuevas herramientas que Microsoft ha desarrollado para satisfacer las necesidades en el ámbito de BI
Citation preview
POC SQL Server 2014División Gestión del Riesgo en Rubro Bancario.
Sebastián Rodríguez Robotham11 de Junio 2014.
Resultados POC y Conclusiones.
Contexto División Riesgos y Arquitectura DW Actual.
POC – Objetivos y Plan de Trabajo
• Gestión de Riesgo Crediticio:Posible Pérdida que asume un banco como consecuencia del inclumplimiento de obligaciones contraidas por un cliente.
• El que cobra primero cobra mejor.
• Clientes Buenos NO ESPERAN.
Contexto.
Areas y Procesos Involucrados
Gerencias- Riesgo Personas.- Riesgo Empresas.- Riesgo Pyme.- Modelos & Herramientas.- Banca Comercial.
Cobranza Judicial
Ciclo de Vida del Cliente (Visión Riesgo Crediticio)
Campañas Admisión Cobranza Prejudicial
Venta
Cartera
Cliente
No-Cliente
Preventiva
Agencia Cobro
Tipos de Usuarios
Usuarios de Negocio
Usuarios Avanzados
Administradores
Arquitectura
Fuentes de Datos- Excel- TXT- CSV- SQL 2000 -
2005- Oracle- Access
Algunos Datos Adicionales…- Cerca de 55 Proceso de Carga Diarios.
- Tiempo de Proceso: 2 ½ horas.- ENFOQUE “SIN OPERADOR”- Todo se hace con T-SQL:
- Conectar con FTP y descargar archivos.
- Cargar fuentes de datos automáticas.
- Procesamiento diario automático- Envío de correos y notificaciones.
- 1.600 millones de filas.- 10 Cubos.- 27 Dimensiones.- 150 usuarios.- 1TB información comprimida (2008-R2)- Modificaciones de datos y estructuras
es muy frecuente- Implementado en ROLAP.8 núcleos de 2.3GHz (Intel Xeon E5-2630), 38GB Ram, 2TB
Disco Duro, Windows Server X64 Enterprise 2008R2, SQL Server 2008 R2 Enterprise X64.
Arquitectura
Tipo de Modelo Tablas sin índices Tablas 3FN Modelo Estrella
Objetivo Cargas / Limpieza Básica
Integridad, Trazabilidad,
Reglas de Negocio
Reporting, Versión única de la
verdad.
CaracterísticasA. Bajo impacto de error al
modificar una Fuente de Datos.
B. Alto grado de trazabilidad de la información: Auditorías.
C. Permite modificar fácilmente lógicas de negocio en las cargas de dimensiones.
D. Fácil administración de Filegroup / Particiones / Backup
E. Adaptabilidad a cambios en el negocio.
Resultados POC y Conclusiones.
Contexto División Riesgos y Arquitectura DW Actual.
POC – Objetivos y Plan de Trabajo
Objetivo GeneralProbar las nuevas funcionalidades de SQL Server 2014 para
- Mejorar el rendimiento de almacenamiento- Mejorar el rendimiento de tiempo de respuestas de consultas- Mejorar el rendimiento de tiempo en procesos de carga.
Administración
Agilidad / Eficiencia Analistas
Oportunidad de la información
Específicos
- Tiempos de Respuesta: disminuir consultas más pesadas (sobre 30 segundos)- Disponibilidad: Antes de las 9:00 hrs; lo antes posible cuando hay retrasos.- Compresión: Aumentar información histórica disponible en Datamart.- Administración: Simplicidad por enfoque NO OPERADOR
Objetivos POC
Arquitectura: Cambios en el modelo.
SQL Server 2014 In-Memory In-Memory,
ColumnStore, Row ColumnStore
SQL Server 2008 R2 Tablas sin índices ClusterIndex, FK ClusterIndex,
Indices
PruebasA. Mínimo 3 ejecuciones en
cada prueba
B. Comparaciones son en base a RowTables.
Plan de Pruebas
Planificación de Actividades.
A. Creación de script de bases de datos
B. Poblar información real.
C. Pruebas de ejecución de consultas
D. Pruebas con usuarios finales en ambiente real.
Ambiente Carga
Ambiente ODS
Ambiente OLAP
Optimización Carga de Información
Optimización Procesamiento de datos
Optimización de Consultas.
Optimización Procesamiento de Datos
Optimización de Consultas
Mejoramiento en Administración del ambiente
Mejoramiento en Backup
Mejoramiento Accesibilidad Usuarios Finales.
Pruebas a Realizar en cada Ambiente
Resultados POC y Conclusiones.
Contexto División Riesgos y Arquitectura DW Actual.
POC – Objetivos y Plan de Trabajo
Preparación del Ambiente
dbcc DropCleanBuffersElimina todo el contenido de páginas de datos que existen en memoria.
dbcc FreeProcCacheElimina todos los planes de ejecución de la caché de procedimiento
dbcc FreeSystemCache('ALL')Libera todas las entradas de caché no utilizadas de todas las memorias caché.
dbcc FreeSessionCacheVacía la memoria caché de conexión de las consultas distribuidas utilizada por las consultas distribuidas con una instancia de Microsoft SQL Server.
Resultados: Carga de Información.
Información de la prueba.
- Tablas con 1 millón de registros.
- 207 campos.
- Números en formato texto con separadores
- Fechas en formato texto.
# Prueba Normal (mm:ss) Column Store (mm:ss)
Diferencia (mm:ss) % Mejora
In-Memory (mm:ss) Diferencia
(mm:ss) %
Mejora Ej 1 Ej 2 Ej 3 Ej
Prom Ej 1 Ej 2 Ej 3
Ej Prom
Ej 1 Ej 2 Ej 3 Ej
Prom
1 Ejecución procedimiento almacenado de carga de archivo fuente de información
12:49 12:49 12:49 12:49 17:57 17:57 17:57 17:57 -0:05:08 -40,05% 10:08 10:08 10:08 10:08 02:41 20,94%
Resultados.
- Carga de información diaria es 21% más rápida con tablas en memoria
- Beneficio impacta directamente disponibilidad de información diaria.
# Prueba Normal (mm:ss) Column Store (mm:ss)
Diferencia (mm:ss) % Mejora
In-Memory (mm:ss) Diferencia
(mm:ss) %
Mejora Ej 1 Ej 2 Ej 3 Ej Prom
Ej 1 Ej 2 Ej 3 Ej Prom
Ej 1 Ej 2 Ej 3 Ej Prom
1 Nueva columna en dimensión: crear, actualizar y alterar (no nulos)
17:32 17:32 17:32 17:32 34:15 34:15 34:15 34:15 -0:16:43 -95,34%
2 Actualización de campo en tabla de dimensión 01:05 01:58 01:11 01:25 04:26 05:06 04:52 04:48 -0:03:23 -240,16% 00:17 00:23 00:18 00:19 01:05 77,17%
3 Actualización de campos en tabla de dimensión
01:34 01:30 01:24 01:29 05:02 04:53 05:04 05:00 -0:03:30 -235,45% 00:18 00:16 00:17 00:17 01:12 80,97%
4 Actualización de campos en tabla de dimensión con filtro
01:24 00:49 01:10 01:08 03:28 03:25 03:46 03:33 -0:02:25 -214,78% 00:12 00:14 00:12 00:13 00:55 81,28%
5 Eliminación simple de filas con filtro 00:47 00:51 01:26 01:01 00:45 00:14 00:14 00:24 00:37 60,33% 00:02 00:15 00:01 00:06 00:55 90,22%
Resultados: Procesamiento de Información
Información de la prueba.
- Tablas con 1 millón de registros.
- 42 y 109 campos.
Resultados.
- Procesamiento de información es 6 veces más rápido con tablas en memoria
- Beneficio impacta directamente disponibilidad de información diaria y reprocesos.
# Prueba Normal (mm:ss) Column Store (mm:ss)
Diferencia (mm:ss) % Mejora
In-Memory (mm:ss) Diferencia
(mm:ss) %
Mejora Ej 1 Ej 2 Ej 3 Ej
Prom Ej 1 Ej 2 Ej 3
Ej Prom
Ej 1 Ej 2 Ej 3 Ej
Prom
1 Estadísticas básicas de tabla TabFAC_DeudaAnaMes_2 con filtro periodo
01:19 01:05 01:10 01:11 00:04 00:04 00:03 00:04 01:08 94,86%
2
Consulta típica sobre tabla de hechos cruzada con tablas de dimensiones con filtro, agrupación y orden
00:32 00:31 00:31 00:31 00:09 00:09 00:09 00:09 00:22 71,28%
3 Cruce de tabla in-memory con tabla de diferente tipo (normal, column store e in-memory)
03:15 03:02 03:18 03:12 01:39 01:34 01:04 01:26 01:46 55,30% 01:19 01:20 01:20 01:20 01:52 58,43%
Resultados: Ejecución de Consultas (Querys)
Información de la prueba.
- Tablas con 90 millones de registros.
- 159 campos.
Resultados.
- Querys adhoc son 3 veces más rápidas utilizando tablas columnares.
- Mejora en procesos de usuarios avanzados.
# Prueba Normal (mm:ss) Column Store (mm:ss)
Diferencia (mm:ss) % Mejora
In-Memory (mm:ss) Diferencia
(mm:ss) %
Mejora Ej 1 Ej 2 Ej 3 Ej Prom
Ej 1 Ej 2 Ej 3 Ej Prom
Ej 1 Ej 2 Ej 3 Ej Prom
1 Informe SRD: Análisis CV Cliente (Judicial)
01:35 01:10 01:16 01:20 00:21 00:21 00:20 00:21 01:00 74,27%
2 Informe SRD: Primas de Riesgo por Producto 02:33 01:14 01:12 01:40 00:41 00:12 00:11 00:21 01:18 78,60%
3 Informe SRD: CM IMC Convenios 03:12 01:39 01:45 02:12 00:53 00:23 00:23 00:33 01:39 75,00%
Resultados: Ejecución de Consultas (SRD)
Información de la prueba.
- Tablas con 90 millones de registros.
- 159 campos.
Resultados.
- Sistema de Reportes es 5 veces más rápido utilizando tablas columnares.
- Mejora en Reporting diarios y mensuales, ejecutado por analistas de negocio.
Tipos de Tablas Tablas Normales (MB)
Tablas Columnares
(MB)
Ahorro en MB
N° Filas
Dimensiones 3.684 935 2.749 (75%) 35.515.177 Hechos 54.823 40.141 14.642 (27%) 459.148.171 Total 58.507 41.116 17.391 (30%) 494.663.348
Resultados: Pruebas de Almacenamiento.
Información de la prueba.
- Servidor 200GB espacio disponible
- Tablas fueron cargadas parcialmente para realizer pruebas.
- 80% de columnas en tablas de hechos son datos numéricos (deudas, dias de mora, flujos…)
Resultados.
- Con esta configuración se puede mejorar en 30% el rendimiento de compresión de datos, sin perjudicar rendimiento.
- Ratio puede mejorar incorporando Archival Compression.
Pruebas Realizadas
Resultados: Resumen
Ambiente Carga
Ambiente ODS
Ambiente OLAP
Optimización Carga de Información: 20%
Optimización Procesamiento de datos: 6X
Optimización de Consultas: 3X
Optimización Procesamiento de Datos: 6X
Optimización de Consultas: 5X
Mejoramiento en Administración del ambiente: 30% almacenamiento
Mejoramiento en Backup: 30% almacenamiento
Mejoramiento Accesibilidad Usuarios Finales.
Impactos de la Implementación
A. Implementación Manual de Integridad Referencial• Actualmente implementadas con FK –
constraint.
• Se implementarán triggers tipo “instead of” para evitar inconsistencia.
• Impacto en programación: Bajo.
B. Consultas entre bases de datos con Tablas en Memoria.• Ambientes “CARGA” Y “ODS” comparten
tablas para tareas ETL y traspaso de información entre modelos.
• Se deberán crear tablas de memoria especializadas en cada modelo
• Impacto en programación: Medio.
¿ Preguntas ?
19
© 2013 Microsoft Corporation. Todos los derechos reservados. Microsoft, Windows, Windows Vista y otros nombres de productos son o pueden ser marcas comerciales o marcas registradas en los Estados Unidos u otros países.La información que aquí figura se utiliza con fines informativos únicamente y representa la perspectiva actual de Microsoft Corporation a partir de la fecha de esta presentación. Dado que Microsoft debe responder a los cambios en las condiciones de mercado, no se debe interpretar como un compromiso de parte de Microsoft, y Microsoft no puede garantizar la exactitud de la información proporcionada después de la fecha de esta presentación. MICROSOFT NO OFRECE NINGUNA GARANTÍA EXPLÍCITA, IMPLÍCITA NI LEGAL EN CUANTO A LA INFORMACIÓN QUE CONTIENE ESTA PRESENTACIÓN.