2. ►Introducción
Características Generales de SQL Server 2008
►Conceptos y Arquitectura de SQL Server 2008
Analysis Services (SSAS)
►Diseño y despliegue de un Unified Dimensional
Model (UDM)
►Administración de SSAS 2008
►Programación en SSAS 2008
►Soluciones de minería de datos en SSAS 2008
3.
4. • Alta disponibilidad para aplicaciones corporativas
• Mejoras en la seguridad
• Foco en la capacidad de administración. Auto optimización
Gestión de datos
corporativos
Productividad del
desarrollador
Inteligencia de
Negocio
• Integración con Visual Studio and .NET
• Tecnología XML nativa
• Interoperabilidad: estándares abiertos, Servicios Web
• Solución ETL completa
• Ayuda a la decisión en tiempo real: informes, Data Mining
• Mejoras en escalabilidad y disponibilidad
6. ►Microsoft® SQL Server™ 2008 Analysis Services (SSAS) aporta
funcionalidades OLAP y de minería de datos utilizando una
combinación de tecnologías de cliente y servidor
Los servicios OLAP organizan los datos de un almacén de datos en
estructuras multidimensionales aportando respuestas a consultas de
análisis.
►SSAS aporta:
Organización y resumen de datos en estructuras multidimensionales para
responder consultas en tiempo real.
Ayuda en la toma de decisiones criticas mediante el uso de patrones e
indicadores
7. Datos brutos frente a información de negocio
Captura de datos en bruto
Derivando la información de negocio de los datos en bruto
Devolución de datos en información valiosa
Sistema de
Soporte de
Decisiones
Proceso en tiempo real de transacciones del negocio
Contienen estructuras de datos optimizados para edición
Provee de capacidades de soporte de decisión limitado
Sistemas de fuentes de datos OLTP
Sistema
transaccional de
negocio
Características
• Proveen de datos para el proceso de análisis del negocio
• Integran datos desde sistemas de fuentes de datos heterogéneos
• Combinan datos validados frente a las reglas de negocio
• Organiza información no volátil
• Los datos se almacenan en estructuras que son optimizadas para extracción y consulta.
8. Característica de base
de datos
Base de datos OLTP Base de datos OLAP
Orientación del sistema Ejecución y procesamiento de transacciones diarias Generación de información estratégica e histórica
Usuarios Oficinistas, contadores, personal informático, clientes,
jefes de departamentos operativos
Gerentes, ejecutivos, juntas directivas, analistas de
información.
Tipo de diseño de base de datos Modelo de datos entidad-relación y/o sistemas de base de
datos orientados a aplicaciones OLTP
Base de datos multidimensionales, esquemas
relacionales del tipo estrella, con objetivos estratégicos
en la información
Nivel de detalle de los datos Se almacenan con el mayor detalle ya que se trata de las
transacciones específicas
Datos agregados en distintos niveles, no interesa el
detalle sino el resumen de los datos
Características del Hardware y
configuración
Servidores de pequeños a medianos, sistemas de alta
redundancia, configurados para tener recuperaciones
ante fallos y optimizados para realizar transacciones
puntuales en línea y con multitud de usuarios
Servidores de grandes a gigantes, optimizados para
almacenar grandes volúmenes de datos y responder a
consultas complejas que involucran mucha información
y con pocos usuarios
Operaciones normales Mucha lectura y escritura: actualizaciones, inserciones,
sistemas de seguridad con alta redundancia, consultas.
Básicamente, lectura de los datos: consultas complejas
de los usuarios
Volúmenes de datos La información es siempre la actual, el volumen de datos
no responde a la cantidad de transacciones que se
almacenen. De 100 MB a 1 o 2 GB.
Se almacena información histórica, creciendo los
Datawarehouse constantemente. Los volúmenes se
miden en Gigabytes a Terabytes.
9. ►SSAS permite consultas grandes
cantidades de datos de forma flexible
gracias al almacenamiento de la
información en cubos
El cubo es el interfaz primario entre
usuarios y datos en una aplicación de BI
Representa un conjunto lógico de datos en
un empresa, ventas, inventarios,
transacciones, finanzas etc.
Es una estructura multidimensional
compuesta por varias celdas
Mantiene los datos organizados dentro de
un almacén de datos
Producto 1
Producto 2
Producto 3
12. Tabla de hechos
Tabla de dimensiones
Employee_Dim
EmployeeKey
EmployeeID
...
Time_Dim
TimeKey
TheDate
...
Product_Dim
ProductKey
ProductID
...
Customer_Dim
CustomerKey
CustomerID
...
Shipper_Dim
ShipperKey
ShipperID
...
Sales_Fact
TimeKey
EmployeeKey
ProductKey
CustomerKey
ShipperKey
Sales Amount
Unit Sales ...
13. ► Los data source contienen las tablas de
hecho y dimensión incluidas en el cubo
► Encapsula las cadenas de conexión y usa
proveedores de datos (OLEDB or .NET) para
crear la conexión al almacén de datos
► Aporta las credenciales para autentificar la
conexión
► Un data source view (DSV) representa el
modelo de datos en función de un
determinado data source.
► Permite encapsular el modelo de datos del
data source para crear consultas y
relaciones.
► El Data Source View Wizard especifica el
esquema del DSV y lo hace apuntar a un o
varios data sources
14. ► Organizan los datos en los cubos
► Describen una colección de atributos de
interés para un usuario
► Basados directa o indirectamente en tablas
► El nivel más bajo de definición de las
dimensiones son los atributos, que se
corresponden con las columnas de las tablas
de dimensión
► Dentro de una dimensión los atributos se
organizan en jerarquías para permitir al
usuario la navegación entre contenidos
► El orden de los atributos en una jerarquía se
especifica en función de niveles, desde el más
resumido al más detallado
► Los valores actuales de los atributos que
constituyen una jerarquía se denominan
miembros.
► Las dimensiones pueden generarse y
mantenerse mediante el Dimension Wizard y
el Dimension Designer.
15. ► Un data source contiene tablas de hecho y tablas de medidas de un cubo
► Las tablas de hecho contienen datos numéricos del cubo que se corresponden con una columna en las
tablas de hecho denominada medida
► Las tablas de hecho también contienen las claves secundarias que se unen a las claves primarias en las
tablas de dimensión
► Las medidas representan elementos que son cuantificables
► SSAS resume las medidas y las hace visibles a través de jerarquías de varias dimensiones para ayudar en la
toma de decisiones
► Grupos de medidas
Representan todas las medidas de una tabla de hecho dentro de un cubo
Se usan para asociar dimensiones comunes a múltiples medidas
16.
17. ►Representa un conjunto de medidas agrupadas y
jerárquicamente organizadas por dimensiones
►Las celdas de los cubos aumentan exponencialmente
en función de los atributos que contienen.
►Los cubos se almacenan en particiones que no son
visibles a los usuarios de los cubos
►Las particiones permiten la distribución de los
orígenes de datos entre múltiples servidores
18. ►Soporte para cluster
►Múltiples instancias
►Copia de seguridad de bases de datos SSAS
en un único archivo
►Mejoras de seguridad
Seguridad por defecto
Encriptación de bases de datos
Mayor granularidad de permisos
Autentificación Windows
Permisos a nivel de cubo ,dimensión e incluso
celdas individuales
19. ►El número de miembros de las dimensiones no
tiene un limite en 64000
►Múltiples modelos de almacenamiento
Relational OLAP (ROLAP)
Multidimensional OLAP (MOLAP)
Hybrid OLAP (HOLAP)
►Soporte multilenguaje
►Nuevos asistentes de minería de datos
►Posibilidad de modificar cálculos sin tener que
reprocesar cubos
20. ►Entornos de gestión:
Intelligence Development Studio (BIDS)
SQL Server Management Studio
►MDX Scripting
Posibilidad de integrar los scripts con ensamblados externos
►XML/A
Esta basado en Simple Object Access Protocol (SOAP)
Aporta acceso universal a cualquier entorno multidimensional a
través de HTTP
►ADOMD.NET
proveedor estándar de .NET que permite a los clientes acceder a
orígenes de datos multidimensionales
►AMO
Librería de objetos .NET utilizada en aplicaciones para administrar
SSAS mediante programación
Dimensiones, atributos, cubos, seguridad.
21.
22. ► Combina el modelo relacional, el multidimensional y el híbrido en un solo modelo de
datos
► Permite a los procesos de análisis y reporting de OLAP ser transparentes al método de
almacenamiento.
► Está construido como una capa de abstracción sobre los datos y aporta una pasarela
entre cómo los usuarios finales ven los datos y cómo los datos finales son físicamente
almacenados
25. Característica Relacional OLAP
Flexibilidad del esquema
Acceso a datos en tiempo real
Almacenamiento único de datos
Gestión simple
Informes detallados
Alto rendimiento
Orientación al usuario final
Facilidad de exploración y navegación
Riqueza analítica
Riqueza semántica
28. UDM
Seguridad
Vistas de orígenes de datos
Custome
r
ID (PK)
Name
Age
Order
Order#
(PK)
CustomerI
D
DueDate
Modelo dimensional base
• Cubos y Dimensiones
Cálculos (scripts Mdx)
Scope(Customer.Country.USA, *);
Sales = 2;
End Scope;
Modelo usuario final
• Multi lenguaje
• Acciones
• KPIs …
Políticas de Almacenamiento/Caching
29. Característica Relacional OLAP
Flexibilidad del esquema
Acceso a datos en tiempo real
Almacenamiento único de datos
Gestión simple
Informes detallados
Alto rendimiento
Orientación al usuario final
Facilidad de exploración y navegación
Riqueza analítica
Riqueza semántica
AS 2008 UDM
30.
31. ► Versión personalizada de Visual Studio que permite diseñar y desplegar soluciones
end-to-end de business intelligence.
► Proyectos de Analysis Services que contienen la definición de objetos de Analysis
Services
32.
33. ►Recibe la información necesaria para definir :
Data Source View
Tablas de hecho y dimensión
Jerarquías
►Una vez creado el cubo puede ser modificado mediante el Cube Designer.
34. ►Puede generarse un cubo empleando o no un data source
Con data source, es necesario especificar un data source view valido y seleccionar
las tablas de hecho y de dimensión
Sin data source es necesario definir las tablas para generar el data source view
35. ► Una vez seleccionado el data source view el Cube Wizard automáticamente analiza las relaciones entre las
tablas
► Para esto se basa en las claves primarias y secundarias, así como en los datos numéricos de las tablas
► Cuenta con la posibilidad de seleccionar tablas de hecho y dimensiones para representar la dimensión
tiempo
► Ofrece la posibilidad de especificar dimensiones compartidas incluida a través de múltiples cubos
36. ►Creación de jerarquías de dimensiones de tiempo basándonos en las
columnas seleccionadas de la tabla de dimensión de tiempo.
►La granularidad de la dimensión de tiempo se determina en función de las
reglas de negocio de la organización y de las necesidades de reporting
37. ► Las medidas son las cantidades agregadas que son analizadas a través de varias
dimensiones
► Las columnas clave o de referencia no participan en los grupos de medidas.
► El asistente para cubos automáticamente detecta las jerarquías entre medidas y nos
ofrece la posibilidad de revisar sus resultados para excluir dimensiones o jerarquías.
38. ► Pueden añadírsele al cubo expresiones MDX o scripts , así como modificar cálculos.
► La clase de BI elegida determina los elementos de la solución que serán afectados
► El asistente realiza cambios en los data source views, dimensiones y definiciones de
cubo en base al tipo de inteligencia seleccionada
39. ►Solo podemos añadir KPI si el cubo
está procesado
►Una vez añadidas es necesario
reprocesar el cubo
40. ► Son sentencias MDX almacenadas y mantenidas por una base de datos de Analysis Services
► Son ejecutadas por aplicaciones cliente
► Contienen información sobre cuando y como las sentencias MDX serán mostradas y
manejadas por las aplicaciones cliente
► Para ejecutar una acción un usuario final debe realizar una operación especifica que la
inicialice
41. ►Aportan facilidad de acceso a los datos
►Similares a las vistas en SQL Server
►Aportan un subconjunto de datos
42.
43. ► SSAS aporta funciones intrínsecas para utilizarse con MDX y con lenguajes Data Mining Extensions (DMX)
► Posibilidad de añadir esemblados a instancias o bases de datos de Analysis Services, para crear funciones
externas definidas por el usuario en lenguajes como Visual Basic® .NET o Microsoft Visual C#® .NET.
► Tras añadir el ensamblado los métodos públicos de la librería son expuestos como funciones definidas por
el usuario a las expresiones, procedimientos, cálculos y acciones MDX y DMX.
► Para llamar a una función definida por el usuario es necesario hacer referencia a su nombre completo
Select<Assembly>.<Class>.<Method>(<parameters>)on 0 from<Cube>
45. ► Analysis Services Migration Wizard:
Gráficamente
Línea de comandos:
MigrationWizard.exe
MSSQLServerOLAPService arrancado
en origen y destino
► En el proceso de migración el asistente
copia las bases de datos de SSAS 2000 y
las recrea en una instancia de SSAS 2008.
► Las bases de datos de origen se
mantienen intactas
► Para un mayor rendimiento resulta
interesante migrar las bases de datos de
una en una
46. ►Autentificación por defecto
►Si la instancia está configurada para permitir acceso
anónimo Windows no autentica a los usuarios
►Tras autenticar a un usuario Analysis Services comprueba
los permisos asociados para visualizar, actualizar datos o
realizar tareas administrativas.
►Para poder realizar tareas los roles tienen que tener
permiso a nivel de los distintos objetos de la base de
datos
►Al instalar una instancia de SSAS todos los miembros de
grupo local de administradores (incluidos los
administradores del dominio) tienen permiso para
realizar cualquier tarea
►Como novedad, se requiere aprovisionamiento para las
cuentas administrativas
47. ►Rol fijo que aporta acceso administrativo a objetos en una
instancia de SSAS.
►No pueden añadirse o eliminarse permisos de este rol
►Los miembros pueden acceder a todos las bases de datos
y objetos de las instancias de SSAS.
Creación de bases de datos y configuración de propiedades
Mantenimiento de roles de base de datos
Gestión de trazas
►Por defecto todos los administradores del domino son
administradores locales
Es posible deshabilitar la opción de servidor Security-
BuiltinAdminsAreServerAdmins
Aunque los administradores locales son miembros por defecto del
rol no aparecen en el interface de usuario
48. ►Se definen para gestionar el
acceso a los objetos y a los datos
por parte de usuarios no
administradores
►Un Rol de base de datos con Full
Control (Administrator) puede
realizar las siguientes tareas
Gestionar objetos de base de
datos
Leer datos y metadatos
Añadir usuarios a roles existentes
Generar nuevos roles de base de
datos
Definir permisos para los roles de
base de datos
49. ► Implica una serie de pasos que convierten y almacenan los
datos de un data source en un formato multidimensional para
aportar mayor velocidad en las consultas
► Mediante el proceso pueden actualizarse datos en la en
Analysis Services con respecto al origen de los datos
► Si se realizan cambios en un objeto es necesario volver a hacer
un deploy del cubo
► Los objetos que deben mantenerse actualizados a través del
proceso son
Grupos de medidas
Particiones
Dimensiones
Cubos
Bases de datos
► El proceso de los objetos contenedores implica el proceso de
todos los objetos contenidos
► El proceso puede hacerse mediante:
SQL Server Management Studio
Business Intelligence Development Studio.
XML for Analysis Services (XMLA)
Analysis Management Objects (AMO).
Tareas de SSIS
50. ►Mediante el SQL Profiler
podemos:
►Depurar sentencias MDX.
►Identificar instrucciones MDX
que funcionan con lentitud
►Auditar y revisar las
actividades que suceden en
una instancia de Analysis
Services
►Se dispone del asistente de
optimización de agregaciones
basado en el uso
51. ► Las particiones se basan en grupos de medidas
► Pueden utilizarse para mantener la integridad de los datos derivados de una tabla de
hecho, una vista en un data source, o una consulta con nombre en un data source view
► Las particiones mejorar el rendimiento distribuyendo los orígenes de datos y los
agregados entre múltiples discos o múltiples servidores
► Por defecto una partición se crea cuando un grupo de medidas es definido en un cubo
► Partición horizontal
Cada partición se basa en una consulta SQL que filtra los datos para la partición
Por ejemplo una tabla contiene datos de varios países, el grupo de medidas
puede dividirse por países podemos hacer esto mediante una cláusula WHERE.
► Partición vertical
Cada partición se basa en tablas separadas
Por ejemplo varias bases de datos tienen tablas separadas para los datos de cada
país
52. ►Cada partición puede tener una opción de almacenamiento
distinta para cada grupo de medidas
►MOLAP los datos y los agregados se almacenan en archivos
multidimensionales.
►ROLAP los agregados se almacenan en tablas de las bases de
datos relacionales especificadas en el data source
Permite navegar inmediatamente por los cambios más recientes del
origen de datos aunque el rendimiento es menos eficiente que en
MOLAP
►HOLAP combina los dos anteriores
Como en ROLAP los detalles se almacenan en formato relacional
Como en MOLAP los agregados de la partición se almacenan en una
estructura multidimensional
53. ► Las consultas definidas contra objetos OLAP van contra el
almacenamiento ROLAP o MOLAP en función de si los datos han sido
modificados recientemente
► Estas consultas se dirigen y almacenan el área de almacenamiento
MOLAP hasta que los cambios ocurren en el origen de datos
► Después que los datos cambian en el origen de datos, los datos en el
caché MOLAP se eliminan y se colocan en el área de almacenamiento
ROLAP.
► Mientras tanto los objetos MOLAP se reconstruyen en caché
► Después de que las consultas se reconstruyen y procesan son devueltas
al área de almacenamiento MOLAP.
► También se puede hacer caché proactivo borrando los objetos MOLAP
actuales, las consultas son entonces definidas contra los objetos MOLAP
mientras los datos son leídos y procesados en una nueva caché este
método aporta mejor rendimiento pero muchos resultados en las
consultas pueden retornar datos antiguos mientras la nueva caché está
siendo generada
57. ►Son bloques de construcción de dimensiones
►Cada atributo se corresponde con una o más columnas de la
tabla de dimensiones
►Los cubos contienen atributos organizados en dimensiones que
apuntan a las medidas
►En una dimensión los atributos están tipicamente organizados
en jerarquías.
►Una dimensión es una colección de atributos utilizados para
organizar un cubo.
►Un cubo puede contener atributos a través de varias
dimensiones
►Como resultado los atributos no son jerarquicos y se utilizan
para obtener datos de los miembros de un cubo.
58. ►Es un conjunto lógico de un cubo que puede ser
tratado como un cubo
►Es un conjunto persistente de celdas que es devuelta
desde un cubo cuando una expresión MDX lo evalúa
►CREATE SUBCUBE.
59. ►Expresión a la que se le asigna un alias
►Se usan para definir objetos asociados a un cubo
►Se almacena como parte de la definición de un cubo
►Se crea para ser reutilizado en consultas MDX
►Permite identificar expresiones de sintaxis compleja
►CREATE [SESSION] SET
Cube_Expression.<Set_Identifier AS
'Set_Expression'>
►Pueden crearse conjuntos de nombres en los
siguientes ámbitos:
Consulta
WITH SET < Set_Identifier AS 'Set_Expression'>)
Sesión
60. ►Un calculo es una expresión MDX o script que se utiliza para definir objetos
asociados con un cubo
►Podemos generarlo con el Cube Designer
62. ► Protocolo estandarizado para acceder a datos mediante servicios Web sin necesidad de
interfaces COM
► AMO y ADOMD.NET utilizan XMLA cuando se comunican con una instancia de SSAS.
► Hace referencia a dos métodos accesibles Discover y Execute
► Discover devuelve información desde un servicio Web la información puede ser una lista de
orígenes de datos disponibles en un servidor o detalles sobre un origen de datos especifico
► Execute Envía comandos a una instancia utilizando SOAP y protocolos HTTP.
63. ►Aporta acceso a clientes a orígenes de datos
multidimensionales
►Permite entornos conectados y desconectados
Conectados objeto AdomdDataReader
Desconectados objeto CellSet
64. ►La librería AMO de .NET permite manejar objetos de
Analysis Services , así como la seguridad y el proceso
de cubos
65. ►SQL Server 2005/2008 Reporting Services
►Microsoft Excel 2003/2007/2010
►Microsoft Data Analyzer
►Herramientas desarrolladas
AddIn para Excel
Aplicaciones Asp o Asp.net
Webparts para Sharepoint (Scorecard Accelerator)
►BI Portal
►Microsoft Office Bussiness Scorecard Manager 2005
►Microsoft Office PerformancePoint Server 2007
►Herramientas de terceros
66. ►Asistente de Dimensiones mejorado (Atributos
“browsables”)
►Recomendaciones de mejores prácticas en el entorno
►Entorno gráfico para relaciones de atributos mejorado
►Conjuntos dinámicos mejorados (Dynamics Set)
►Uso de vistas de rendimiento dinámico (Dynamics
Managements Views)
68. ►Su razón de ser el analizar conjuntos de datos y plantearles
cuestiones de negocio
►También permite generar modelos de predicción y evaluar su
acierto
►Antes de generar soluciones de Data Mining es preciso crear
modelos que describan el problema de negocio
►Un modelo de data mining se basa en un conjunto de
algoritmos que se construyen a partir de las reglas
fundamentales del analisis.
Exploracion
Descubrimiento de patrones
Prediccion de patrones
►Por ultimo es preciso definir los datos que se emplearan para
realizar predicciones en el modelo
69. “Data mining es la extracción semi-automática de patrones, cambios, asociaciones, anomalías y
otras estructuras estadísiticas significativas de grandes volúmenes de datos”
- R. Grossman
“La extracción no-trivial de información implícita, previamente desconocida y potencialmente
útil desde los datos"
- W. Frawley, et al 1992
“La ciencia de extraer información útil desde grandes volúmenes de datos o bases de datos”
- D. Hand, et al 2001
►También conocido como:
Máquina de aprendizaje
Análysis Predictivo
70. ►Qué clientes comprarán un determinado producto con una probabilidad X?
Clasificación (Predicción)
►Cúal es el perfil de un cliente?
Segmentación
►Recomendar un producto a un cliente que realiza una determianda compra
Asociación
►Probabilidad de que un cliente compre un producto en el futuro
Predicción de secuencias
►Predecir la venta de los próximos 5 meses y su error (stdev)
Forecasting
73. ►Naive Bayes
Identifica atributos mas aproximados a un resultado final
Es el algoritmo más simple
►Decision Tree
Identifica el arbol de atributos que mejor predice un
resultado
Aporta una jerarquia de atributos utiles para tomar una
decision
►Cluster
Identifica como los datos forman subgrupos y como estos
subgrupos son diferentes unos de otros, encuentra patrones
sin un objetivo especifico
74. ►Association rule
Identifica un subgrupo de datos que participa en una
transacción especifica. Suele emplearse para localizar
tendencias de consumo
►Sequence cluster
Identifica el evento que probablemente ocurrirá a
continuación
►Time Series
Identifica tendencias que están sucediendo
Toma como parámetro un atributo baso en tiempo
Útil para realizar pronósticos
►Neural network
Identifica el arbol de atributos que mejor predice el resultado
Similar al de decission pero tiene una estructura
tridimensional
75. ►Podemos aplicar modelos a los siguientes escenarios:
Tendencias de ventas
Que productos pueden venderse juntos
Secuencia en la que los consumidores añaden productos a
sus cestas
►Se crean después de que un algoritmo analiza un
conjunto de datos y encuentra patrones y tendencias
en los datos
►El resultado se emplea para establecer parámetros
en el modelo
►Tipos
Relacionales
OLAP
76. ► Definir el problema
► Preparar los datos
► Explorar los datos
► Construir el modelo
► Explorar y evaluar el modelo
► Desplegar y actualizar el modelo
77. ►Especificaremos los siguiente:
El algoritmo inicial del modelo.
La dimensión del cubo que se
quiere usar como origen de datos
Un atributo que puede emplearse
como clave de modelo, en base al
que se seleccionaran los atributos
y las medidas utilizadas
Contenidos y tipos de datos de
cada columna
78.
79. ►Lenguaje para crear y trabajar con modelos de mineria
►Contiene instrucciones DML y DDL