Escalabilidad Analysis Services 2012

513
-1

Published on

En esta presentación vemos las posibilidades de escalabilidad y alta disponiblidad en Analysis Services de SQL Server 2012

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
513
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Escalabilidad Analysis Services 2012

  1. 1. Alta disponibilidad y escalabilidad con Analysis Services Eduardo Castro, Costa Rica SQL Server MVP | MCT
  2. 2. Presentando a: Eduardo Castro Martinez Microsoft SQL Server MVP Organizador del SQL Saturday Costa Rica 2 2
  3. 3. Agenda Presentar metodología de las pruebas de carga Prueba de carga Reporting Services La prueba de carga de Análisis Services Analizar los resultados y los cuellos de botella de rendimiento Mejores prácticas 3
  4. 4. ¿Por qué la prueba de carga? Determinar el rendimiento del servidor Entender cómo los recursos del servidor e impacto de carga Hardware servidor 4
  5. 5. Solución BI típico Transactional Reports DW SSRS Analytical Reports Analytical Reports SSAS SSAS Clients 5
  6. 6. Como hacer pruebas de carga? Paso 1: Establecer rendimiento objetivo Paso 2: Preparar las pruebas de carga Paso 3: Ejecutar y analizar las pruebas de carga ¿Alcanzamos la meta?  Sí - hemos terminado  No - identificar y eliminar los cuellos de botella de rendimiento Vaya al paso 3. 6
  7. 7. Total de usuarios vs usuarios concurrentes Users Tiempo 2 usuarios simultáneos 7
  8. 8. Establecer Objetivo Desempeño Estudio de caso Informe de carga de trabajo  Informe de uso de pico - 22 de noviembre, 09 a.m.-10 a.m.  200 informes ejecutados por 20 usuarios distintos  200/3, 600 = 0,05 reportes / seg Estimar las cargas futuras  500 usuarios - aumento x25 (500/20)  0.05 x 25 = 1.25 reports / seg Derivar rendimiento objetivo  Vamos doble de 2 x 1,25 = 2,5 informes / seg 8
  9. 9. Establecer Objetivo Desempeño Acerca de los informes y consultas Los informes no nacen iguales Un "informe" o "consulta" es una abstracción Piense en "vehículo" y la carretera es la capacidad 9
  10. 10. Preparar pruebas Reporting Services Identificar una mezcla de informes  10-15 informes  Informes lentos y rápidos Obtener direcciones URL de informe y valores de los parámetros Utilice (edición Ultimate o prueba) de Visual Studio para crear:  Prueba de rendimiento web - pruebas "rápido y sucio"  Unidad de prueba - pruebas personalizadas, por ejemplo, para la manipulación parámetro 10
  11. 11. Crear nueva prueba de carga Reporting Services Utilice Crear Nuevo asistente de prueba de carga y configurar     Patrón de carga - constante o escalonada Mezcla de prueba - una colección de la web o / y pruebas unitarias Conjuntos de contadores - CPU, memoria, utilización de disco Configuración de ejecución - contadores, tiempo de calentamiento, la duración del ensayo o iteraciones Consejo: Aumentar la MaxActiveReqForOneUser establecer en rsreportserver.config a un gran valor, por ejemplo, 999999 11
  12. 12. Crear nueva prueba de carga Reporting Services 12
  13. 13. Ejecutar y analizar las pruebas de carga Ejecute la prueba de carga con carga escalonada Trate de no utilización de los servidores más del 80% Obtenga y anote: Rendimiento  Informes / seg  Usuarios simultáneos Informes / seg 80% Esté atento a los errores! VS logra 250 virtuales usuarios Usuarios 13
  14. 14. Encontrar a los cuellos de botella de rendimiento Cada sistema tiene un punto de saturación Utilice el rendimiento de Windows contadores para descubrir cuellos de botella Cuellos de botella típicos  CPU (Procesador: Procesador% Tiempo)  Memoria (Memory: Disponible MBytes)  HDD (DiscoFísico: El disco actual Longitud de la cola)  Red (Network Interface: Bytes enviados / seg, Bytes recibidos / s) CPU RED BUS RAM 14 HDD
  15. 15. Ejecutar y analizar pruebas 15
  16. 16. Pruebas de carga de Analysis Services Descargue el marco de pruebas de carga SSAS AS Generador de consultas (ASQueryGenerator)  Genera plantillas de consulta  Soporta consultas con parámetros AS Load Simulator (ASLoadSim)  Implementa un plugin personalizado de prueba de Visual Studio  Incluye SSAS pruebas de carga de las Mejores Prácticas documento - leerlo! Otra opción que no requiere Visual Studio  AS Performance Workbench  http://asperfwb.codeplex.com/ 16
  17. 17. Mejores Prácticas de Rendimiento Planifique para pruebas de carga durante los ciclos en ejecución Optimizar antes de escalar hacia arriba o hacia fuera Reporting Services  Analizar ExecutionLog y ajustar consultas  Leer SSRS optimizaciones de rendimiento http://tinyurl.com/rsperf Analysis Services  Utilice el Analizador de SQL para obtener SE y FE desglose tiempo  Servidor Tune y consultas - leer Analysis Services Performance Guide 2008  Uso Xperf para entender si las consultas son de disco o CPU cota http://preview.tinyurl.com/xperfssas 17
  18. 18. Mejores Prácticas de Rendimiento Actualize a SSRS 2008 o posterior  Nuevo diseño de motor de procesamiento  Mucho menos memoria  Escala de 3-4 x número de usuarios que en 2005 Actualize a SSAS 2008 o posterior  Modo de secuencia de cálculo  Las consultas se ejecutan 20-60% más rápido 18
  19. 19. EL DISEÑO DE UNA INFRAESCTRUCTURA DE ANALYSIS SERVICES
  20. 20. Análisis Requisitos de Servicios de Recursos Requisitos de memoria y procesador Requisitos de disco Decidir entre 32 bits y servidores de 64 bits 20
  21. 21. Consideraciones sobre la memoria y procesador Requisitos Versión de Windows Windows Server ™ 2003, Enterprise Edition, Versión de 64 bits Windows Server 2003, Datacenter Edition, Versión de 64 bits Windows Server 2003, Standard Edition Windows 2000 Server La memoria máxima 64 GB Procesadores Máximo 8 512 GB 32 3 GB utilizando el modificador / 3GB 2 GB 4 4 Windows 2000 Advanced Server / Windows Server 2003 Enterprise Edition 3 GB utilizando el modificador / 3GB 8 Windows 2000 Server / Windows Server 2003 Datacenter Edition 3 GB utilizando el modificador / 3GB 32 21
  22. 22. Disco Requerimientos El espacio de disco para los cubos Espacio en disco para las agregaciones Espacio en disco para la minería de datos El espacio en disco para el procesamiento de objetos El espacio en disco para el mantenimiento 22
  23. 23. Análisis Servicios Escalabilidad Opciones para la distribución de la carga de trabajo Proceso para ajustar la escala de salida de Analysis Services 23
  24. 24. Opciones para la distribución de la carga de trabajo Utilice un servidor separado para cada base de datos de Analysis Services Utilice un servidor independiente para el almacén de datos relacional Utilice un servidor de ensayo para el procesamiento 24
  25. 25. Distribuir Componentes de Analysis Services ¿Cuáles son las ventajas y los retos de la distribución de diversos componentes? ¿Qué factores considera usted cuando usted decide si se debe distribuir una solución de Analysis Services? 25
  26. 26. Opciones para Analysis Services disponibilidad El uso de Equilibrio de carga de red El uso de clústeres de servidores 26
  27. 27. Diseño Analysis Services disponibilidad Hardware Sistema operativo La redundancia de datos Disponibilidad Cube Failover 27
  28. 28. ¿Por qué utilizar el particionamiento? Rendimiento de las consultas. La carga de datos a granel. Realización de grandes cambios. El archivo de datos. El mantenimiento de índices. Copia de seguridad y recuperación. Introducción a la tabla de particiones, donde por Chad Kingsley 28
  29. 29. ¿Por qué partición? - Capacidad de administración Archiving  Utilizar un enfoque de ventana deslizante Procesamiento de ETL más fácil     Construir un nuevo conjunto de datos en una tabla de ensayo Añadir índices y restricciones Recopilar estadísticas Luego cambiar la tabla para una partición en el objetivo Mantenimiento fácil  Tabla de particiones, por ejemplo, para comprimir los datos  Partición de índice local a reconstruir Cinco consejos Puesta a punto para su Data Warehouse, Jeff Musgo 29
  30. 30. El particionamiento de datos relacionales Particionamiento de las tablas de hechos Elija una llave de partición y el intervalo de partición apropiado Utilice SWITCH, MERGE y SPLIT para históricos Las mejores prácticas es utilizar índices con particiones alineadas 30
  31. 31. Partición de datos multidimensionales Partición Datos multidimensionales? Analysis Services Particiones Mejores prácticas para la creación de particiones Datos multidimensionales 31
  32. 32. Partición beneficios multidimensionales Minimizar el tiempo de procesamiento del cubo Proporcionar procesamiento paralelo Mejorar el rendimiento de las consultas 32
  33. 33. Particiones Mecanismo para romper gran cubo en trozos manejables Las particiones pueden ser agregados, procesado, eliminado de forma independiente Actualización de los datos del mes pasado no afecta a las particiones meses anteriores Sliding escenario ventana fácil de implementar Por ejemplo Ventana de 24 meses  añadir 06 2006 partición y borrar junio 2004 Las particiones pueden tener diferentes configuraciones de almacenamiento Alto impacto Almacenamiento de datos con SQL Server Integration Services y Analysis Services. Marin Bezic
  34. 34. Beneficios de la Partición Las particiones pueden ser procesados ​y consultar en paralelo Mejor utilización de los recursos del servidor Los tiempos de carga del almacén de datos reducido Las consultas se aislaron a las particiones pertinentes  deben recorrer menos datos SELECT ... FROM ... DONDE [Hora]. [Año]. [2006] Sólo consulta 2.006 particiones Resultado final particiones permiten: Manejabilidad Rendimiento Escalabilidad Alto impacto Almacenamiento de datos con SQL Server Integration Services y Analysis Services. Marin Bezic
  35. 35. Mejores prácticas para la creación de particiones No más de 20 millones de filas por partición Especifique rebanada partición Opcional para MOLAP - servidor detecta automáticamente la rebanada y valida contra rebanada especificado por el usuario (si existe) Debe especificarse para ROLAP Administrar la configuración de almacenamiento de los patrones de uso Preguntó frecuentes  MOLAP con mucha aggs Periódicamente consultada  MOLAP con menos o ninguna aggs  ROLAP histórico sin aggs Unidad de disco alternativo - usí varios controladores para evitar la E / S de contención Alto impacto Almacenamiento de datos con SQL Server Integration Services y Analysis Services. Marin Bezic
  36. 36. Analysis Services Particiones Arquitectura Particiones es a nivel de grupo de medida Las particiones se procesan en paralelo para un grupo de medida Las particiones pueden ser procesados selectivamente Rodajas de datos son opcionales para MOLAP Se requieren rodajas de datos para ROLAP 36
  37. 37. Directrices para la creación de particiones Datos multidimensionales Plímites artition Almacenamiento modelo y el nivel de agregación Datos sincronización 37
  38. 38. Particiones de Analysis Services 38
  39. 39. Escalado de salida 39
  40. 40. El particionamiento es For Real DW de 1 Partition per Day 31 Partitions, 1 Month of Data Facts Database Current Day Partition ALTER PARTITION FUNCTION PerDay () SPLIT RANGE(CAST(CONVERT(varchar, GETDATE()+1, 112) AS int)) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 8 Parallel Partition Processing Jobs Cube Current Day Partition Set ... WHERE [date] = CAST(CONVERT(varchar, GETDATE(), 112) AS int) AND [hour] IN (0, 11, 17) 0 11 17 1 14 18 2 5 22 3 12 21 4 13 19 6 15 23 7 9 20 8 10 16 8 Evenly Distributed Partitions per Day 3120 Partitions, 13 Months of Data DBI407 Mejores Prácticas para el Nivel 1 Edificio Soluciones de Enterprise Business Intelligence con Microsoft SQL Server Analysis Services, Adam Jorgensen
  41. 41. Multiusuario concurrencia consulta Escalar Analysis Services: Sólo Lectura Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 41
  42. 42. SQLCAT Estudios de caso
  43. 43. SQL Server Equipo de Asesoramiento al Cliente Funciona en los más grandes, más complejos proyectos de SQL en todo el mundo MySpace - 4,4 millones de usuarios concurrentes en su momento pico, 8000000000 amigo relaciones, 34 mil millones de e-mails, 1 PetaByte tienda, de ampliación horizontal usando SSB y SOA  http:/ /www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000004532 Bwin - La mayoría popular sitio de juegos en línea de Europa - la base de datos 30000 trans / Segundo, el lema: "El fracaso no es una opción"; almacenamiento total de 100 TB  http:/ /www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000004138 Corea Telecom - grande telco en Corea sirve a 26 millones de clientes; 3TB Data Warehouse  http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?casestudyid=4000001993 SQLCAT.com Y http://blogs.msdn.com/mssqlisv 43
  44. 44. Infraestructura Sistema de base de datos compartida escalable utiliza un servidor de fábrica y tres presentación de informes servidores. Cada servidor es un servidor HP BL460 con 32 GB de memoria RAM instalada, funcionamiento ocho procesadores 44
  45. 45. Estudio de caso - AdCenter EMC DMX V-Max para manejar la E / S  V-Max son dedicado a la aplicación  Cientos de discos y ejes dedicados a este proceso  Corto acariciando los discos para asegurarse de más rápido de E / S  Trabaja en estrecha colaboración con EMC directamente (presente en el EMC World regularmente)  Pruebas con EMC EFDs (Enterprise Flash Drives)  Equipo de Ingeniería de Sistemas dedicado al proceso de DW  Trabajar en estrecha colaboración con diversos proveedores (EMC, HDS, etc)  Referencias  Acelerar Microsoft adCenter con Microsoft SQL Server 2008 Analysis Services.  PRÁCTICAS REALES: Rendimiento escalado de Microsoft adCenter con Microsoft SQL Server 2008 Analysis Services en EMC VMAX
  46. 46. adCenter aplicación de cubo PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  47. 47. EMC Symmetrix VMAX Cada servidor está conectado a una de EMC Symmetrix Array VMAX través de bus de host de doble adaptadores El servidor de la fábrica utiliza un volumen de fábrica 3 TB alojada en un 80 400 GB 10000 rpm Fibra Discos de canal en una configuración duplicada y bandas (RAID 1 + 0). Cada 24 horas el volumen fábrica replica los cambios en un volumen de informes 3 TB hecho por nueve 400 EFDs GB configurados en una configuración de banda paridad distribuida (RAID 5) PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  48. 48. Diseño Cube Múltiples data marts alimentan el procesamiento y presentación de informes OLAP sistema. Análisis Services proporciona un indicador clave de rendimiento (KPI) servicios Los datos se alimenta a base de SQL Server Integration Services (SSIS) Cada hora, el paquete SSIS carga nueva hechos en una base de datos provisional relacional. Independiente Paquetes SSIS cargan dimensión datos de otras fuentes PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  49. 49. Carga de datos de diario Cada trimestre un ProcessUpdate la operación se utiliza para actualizar dimensión datos PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  50. 50. Consulta de datos PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  51. 51. Esquema OLAP PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  52. 52. Administración La actualización de datos del cubo multidimensional en la servidor de fábrica comporta las tareas de carga de datos (datos de carga de los datos relacionales fuentes) Y el Cubo Proceso PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  53. 53. Actualización de datos diaria PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  54. 54. Montaje clon diario PRÁCTICAS REALES: prestaciones de escalado MICROSOFT SQL SERVER 2008 SERVICIOS DE ANÁLISIS EN MICROSOFT AdCenter
  55. 55. Centro de Producción Anuncio adCenter Production Environment OLAP Standby Server OLAP Processing Server Windows Server 2003 x64 SP2 SQL Server Analysis Services 64GB RAM, 8 Xeon procs (16 cores) HBA A HBA A HBA B HBA B Staging Data Warehouse Windows Server 2003 x64 SP2 SQL Server Analysis Services 64GB RAM, 8 Xeon procs (16 cores) Windows Server 2003 x64 SP2 SQL Server Enterprise Edition 32 GB RAM, 8 Xeon procs (16 cores) HBA AA HBA HBA BB HBA HBA AA HBA Data Feeds Windows Server 2003 x64 SP2 SQL Server Integration Services Network Load Balancing HBA BB HBA Host Bus Adapters: 400 MB/sec each SAN Fabric B SAN Fabric A Standby OLAP LUN RAID 1 19200 Max Reads 9600 Max Writes 180 300GB 10K Drives Storage Area Network OLAP LUN RAID 1 DW LUN 19200 Max Reads 9600 Max Writes 180 300GB 10K Drives RAID 1 2560 Max Reads 2560 Max Writes 32 300GB 10K Drives DBI407 Mejores Prácticas para el Nivel 1 Edificio Soluciones de Enterprise Business Intelligence con Microsoft SQL Server Analysis Services, Adam Jorgensen
  56. 56. ESTUDIO DE CASO: YAHOO! 12 TB Cube
  57. 57. Yahoo - masivo de datos para la Escala Intense Oracle 10g CDF Archivo1 SSAS Cube Constructor Partición 1 Partición 1 Partición 2 Partición 2 Partición N Partición N 1.2TB/day Archivo2 Filen NAS 50 GB /hr Servidores SSAS consulta HW NLB DBI407 Mejores Prácticas para el Nivel 1 Edificio Soluciones de Enterprise Business Intelligence con Microsoft SQL Server Analysis Services, Adam Jorgensen 12TB cubo
  58. 58. ESTUDIO DE CASO Grande Inversión Bancos
  59. 59. Bloqueo en Analysis Services Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 59
  60. 60. Bloqueo INTERRUPTOR / MERGE debe tomar bloqueo SCH-M (pero se mantuvo sólo unos pocos ms) Puede provocar el bloqueo de las colas Si abultamiento en la tabla de particiones - puede causar unas operaciones de ordenación (utilizan lotes pequeños) Solución alternativa: partición parte en tiempo real en una independiente tabla. Mantener datos obsoletos en particiones presentado Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 60
  61. 61. Conmutación MOLAP En Acción Idea básica:  Uso MOLAP de datos históricos  Proceso últimas particiones MOLAP menudo  Latencias típicas en minutos Preocupaciones:  Cómo para dividir el cubo para una rápida y MOLAP frecuentes tratamiento  Manejo el bloqueo de procesamiento cuando se necesita actualización los datos Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 61
  62. 62. Cubo de particionamiento Particiones tanto por el tiempo y región Procesamiento completo se puede hacer en particiones "activos" Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 62
  63. 63. Cube Flipping Recordemos: Bloqueo de nivel de servidor necesaria para proceso Solución alternativa:  Dos copias del cubo, turnándose tratamiento  "Voltear "entre ellos Dos maneras de flip:  Utilice ASLB de CodePlex  Escribe pequeña Excel Plug-in 63
  64. 64. ROLAP + MOLAP en Acción Utilice MOLAP para histórico / rancio datos Uso ROLAP para los datos actualizados con frecuencia Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 64
  65. 65. Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 65
  66. 66. Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 66
  67. 67. Diseñar los cubos Servicio Análisis escalables y complejas, Denny Lee, Thomas Kejser 67
  68. 68. Resumiendo Usted tiene que modificar su diseño si desea escalar El particionamiento es absoluta crucial     Partición de la velocidad de procesamiento Partición de latencia de los datos (en tiempo real frente a rancio) Partición para el archivado de datos antiguos Problema secundario anteriormente: Partición de velocidad de las consultas Hardware que realmente importa para grandes cubos    Dispositivos NAND son pareja hecha en el cielo. Las pruebas muestran dos núcleos Nehalem CPU menudo puede soportar cientos de usuarios Equilibrar cuidadosamente IOPS vs memoria, tenga en cuenta la parte caliente del cubo 68 DBI407 Mejores Prácticas para el Nivel 1 Edificio Soluciones de Enterprise Business Intelligence con Microsoft SQL Server Analysis Services, Adam Jorgensen

×