bodegas de datos business intelligence roadmap carlos herrera
TRANSCRIPT
Bodegas de datosBodegas de datos
Business Intelligence Roadmap Business Intelligence Roadmap
Carlos HerreraCarlos Herrera
AgendaAgenda
IntroducciónIntroducción EtapasEtapas Pasos 8 a 16Pasos 8 a 16
IntroducciónIntroducción
Las construcción de bodegas de datos Las construcción de bodegas de datos son procesos.son procesos.
Los pasos mencionados no son Los pasos mencionados no son mandatorios.mandatorios.
Los proyectos BI no son para gerentes Los proyectos BI no son para gerentes de proyectos novatos.de proyectos novatos.
Una guía general de lo que funciona y no Una guía general de lo que funciona y no funciona en proyectos de este tipofunciona en proyectos de este tipo
IntroducciónIntroducción
Aprox. 60 % de los proyectos BI fracasan por:Aprox. 60 % de los proyectos BI fracasan por: PM deficientePM deficiente Incumplimientos en entregasIncumplimientos en entregas Baja calidad de las entregasBaja calidad de las entregas
Se requiere pensar en integraciónSe requiere pensar en integración Un sistema BI no puede construirse en un solo Un sistema BI no puede construirse en un solo
Big Bang.Big Bang. Esta integración implica cambio en la cultura.Esta integración implica cambio en la cultura. Son sistemas de tipo estratégico, no Son sistemas de tipo estratégico, no
operacional.operacional.
IntroducciónIntroducción
BI es una arquitectura y una colección deBI es una arquitectura y una colección de Apps operacionalesApps operacionales Apps de soporte a la toma de decisionesApps de soporte a la toma de decisiones DB’sDB’s
Permite entre otrosPermite entre otros Proyección de ventasProyección de ventas Preparación de BSCPreparación de BSC Análisis geoespacialAnálisis geoespacial Minería de datosMinería de datos
EtapasEtapas
JustificaciónJustificación El costo debe ser justificado por la resolución de un problema El costo debe ser justificado por la resolución de un problema
de negocio o por tomar una ventaja en el negocio.de negocio o por tomar una ventaja en el negocio. PlaneaciónPlaneación
Definición de Infraestructura técnica (SW, DBMS, HW) y no Definición de Infraestructura técnica (SW, DBMS, HW) y no técnica (metodologías, estándares).técnica (metodologías, estándares).
Planear detalladamente, para mitigar riesgos como cambios Planear detalladamente, para mitigar riesgos como cambios de patrocinadores, alcance, integrantes del proyecto.de patrocinadores, alcance, integrantes del proyecto.
Análisis del negocioAnálisis del negocio Definición del alcanceDefinición del alcance Calidad de los datos Calidad de los datos Pruebas de conceptoPruebas de concepto
EtapasEtapas
DiseñoDiseño Bases de datosBases de datos ETLETL MetadatoMetadato
ConstrucciónConstrucción ETLETL AppApp Data MiningData Mining
ImplantaciónImplantación EntrenamientoEntrenamiento Evaluación de la versiónEvaluación de la versión
Caminos de desarrollo Caminos de desarrollo paraleloparalelo
Caminos de desarrollo Caminos de desarrollo paraleloparalelo
Estructura del equipoEstructura del equipo
CoreCore Permanentes en el proyectoPermanentes en el proyecto
Analista de negocioAnalista de negocio ManagerManager Analista de negocio ITAnalista de negocio IT Técnico ITTécnico IT
Por pasoPor paso Desarrollador de app líder, arquitecto infraestructura BI, Desarrollador de app líder, arquitecto infraestructura BI,
representante del negocio, administrador de datos, experto representante del negocio, administrador de datos, experto en DM, desarrollador líder ETL, experto en la materia, en DM, desarrollador líder ETL, experto en la materia, manager, DBA y DQA(calidad).manager, DBA y DQA(calidad).
Estructura del equipoEstructura del equipo
ExtensiónExtensión No están dedicados 100% y sincronizan sus No están dedicados 100% y sincronizan sus
tareas con los miembros del core.tareas con los miembros del core.
Comité BIComité BI
8. Diseño de la base de 8. Diseño de la base de datosdatosOperacionalesOperacionales BIBI
Enfocado a eliminar redundancia, coordinar Enfocado a eliminar redundancia, coordinar actualizaciones y repetir el mismo tipo actualizaciones y repetir el mismo tipo de operaciones muchas veces en el de operaciones muchas veces en el día(enfoque a la actualización)día(enfoque a la actualización) Enfoque a la consultaEnfoque a la consulta
Altamente normalizadas para soportar Altamente normalizadas para soportar actualizaciones consistentes y actualizaciones consistentes y mantenimiento de la integridad mantenimiento de la integridad referencialreferencial
Altamente denormalizada ya que se Altamente denormalizada ya que se requiere disminución de tiempos en la requiere disminución de tiempos en la obtención de grandes cantidades de obtención de grandes cantidades de datosdatos
Tiempos de respuesta en segundos o Tiempos de respuesta en segundos o inferiorinferior
Tiempos de respuesta aceptables pueden Tiempos de respuesta aceptables pueden ser segundos, minutos, horasser segundos, minutos, horas
Almacenan pocos datos derivadosAlmacenan pocos datos derivados Gran cantidad de datos derivadosGran cantidad de datos derivados
Pocos datos agregadosPocos datos agregados Varios niveles de datos precalculadosVarios niveles de datos precalculados
Base de datos BIBase de datos BI
Los datos para cargar a una base de Los datos para cargar a una base de datos BI ya existen en otro lugar.datos BI ya existen en otro lugar.
Se debe determinar a que nivel de Se debe determinar a que nivel de agregación se deben almacenar.agregación se deben almacenar.
Diseño lógicoDiseño lógico
Modelo de estrellaModelo de estrella Los datos son representados como un arreglo de valores precalculados, Los datos son representados como un arreglo de valores precalculados,
llamados llamados hechoshechos.. Una Una dimensióndimensión es equivalente a una entidad en un modelo de datos. es equivalente a una entidad en un modelo de datos. Las dimensiones se encuentran ligadas a la tabla de hechosLas dimensiones se encuentran ligadas a la tabla de hechos Una tabla de hechos representa un evento del negocio( una venta ).Una tabla de hechos representa un evento del negocio( una venta ). Los hechos son valores cuantificables.Los hechos son valores cuantificables. Pueden existir varias tablas de hechos (agregaciones por diferentes Pueden existir varias tablas de hechos (agregaciones por diferentes
dimensiones)dimensiones) Las tablas de hechos tienen gran cantidad de registros en comparación con el Las tablas de hechos tienen gran cantidad de registros en comparación con el
número de columnas.número de columnas. Las dimensiones son denormalizadas ( jerarquías que llevan a redundancia)Las dimensiones son denormalizadas ( jerarquías que llevan a redundancia) Casi todas tienen dimensión tiempo.Casi todas tienen dimensión tiempo. Las dimensiones contienen gran cantidad de columnas ( regularmente)Las dimensiones contienen gran cantidad de columnas ( regularmente) Dimensiones conformes son compartidas por diferentes tablas de hechos.Dimensiones conformes son compartidas por diferentes tablas de hechos.
Diseño lógicoDiseño lógico
Modelo de estrella(cont.)Modelo de estrella(cont.) EficienciaEficiencia Soportado por múltiples RDBMSSoportado por múltiples RDBMS Análisis de datos de menor complejidad, Análisis de datos de menor complejidad,
debido a la denormalizacióndebido a la denormalización
Diseño lógicoDiseño lógico
Modelo de copo de nieveModelo de copo de nieve Mayor normalización, es decir, los niveles Mayor normalización, es decir, los niveles
de las jerarquías se normalizan.de las jerarquías se normalizan. Mayor flexibilidadMayor flexibilidad Mayor dificultad de mantenimientoMayor dificultad de mantenimiento Joins más costososJoins más costosos Menos registros en las dimensiones.Menos registros en las dimensiones.
Diseño físicoDiseño físico
Decisiones para la implementaciónDecisiones para la implementación Cuanto espacio requiero.Cuanto espacio requiero. De cuanto debe ser el tamaño del bloque de datosDe cuanto debe ser el tamaño del bloque de datos Se va a utilizar alguna técnica de compactación.Se va a utilizar alguna técnica de compactación.
Ubicación física de los datosUbicación física de los datos Datos accedidos frecuentemente en discos rápidosDatos accedidos frecuentemente en discos rápidos Normalmente datos con granularidad máxima en mainframe; Normalmente datos con granularidad máxima en mainframe;
agregados en servidores de tamaño medio.agregados en servidores de tamaño medio. Configuración de discos especial para mejorar el I/OConfiguración de discos especial para mejorar el I/O Operaciones en paraleloOperaciones en paralelo
Diseño físicoDiseño físico
ParticionamientoParticionamiento Tablas “lógicas” distribuidas en ubicaciones Tablas “lógicas” distribuidas en ubicaciones
físicas diferentesfísicas diferentes Restaurar segmentos sin afectar el Restaurar segmentos sin afectar el
desempeñodesempeño ClusteringClustering Indexación (B+, Bitmap, Hash)Indexación (B+, Bitmap, Hash) Ejecución de consultas en paraleloEjecución de consultas en paralelo
EntregablesEntregables
Modelo físico(estrella, integridad referencial, llaves, columnasm Modelo físico(estrella, integridad referencial, llaves, columnasm etc.) etc.)
Diseño físico de la base destino BI(indexación, particionamiento, Diseño físico de la base destino BI(indexación, particionamiento, clustering, ubicación de índices)The physical database design clustering, ubicación de índices)The physical database design components include dataset placement, index placement, components include dataset placement, index placement, partitioning, clustering, and indexing. These physical database partitioning, clustering, and indexing. These physical database components must be defined to the DBMS when the BI target components must be defined to the DBMS when the BI target databases are created.databases are created.
DDLDDL DCL(permisos)DCL(permisos) Bases de datos BI físicas (ejecutar DDL y DCL)Bases de datos BI físicas (ejecutar DDL y DCL) Procedimientos de mantemiento (BK’s, reorganización, Procedimientos de mantemiento (BK’s, reorganización,
recuperación, monitoreo).recuperación, monitoreo).
9. Diseño del ETL 9. Diseño del ETL
Estrategia de Estrategia de implementaciónimplementación
Compartir un solo proceso coordinado de Compartir un solo proceso coordinado de ETL.ETL.
Reconciliar los modelos de datos.Reconciliar los modelos de datos. Evitar un ETL por cada BD BI.Evitar un ETL por cada BD BI. El objetivo es obtener consistencia en los El objetivo es obtener consistencia en los
datos.datos.
Preparación para el Preparación para el proceso ETLproceso ETL
Reformateo. Unificación de formato a Reformateo. Unificación de formato a pesar de su origenpesar de su origen
Reconciliación. La gran cantidad de Reconciliación. La gran cantidad de datos aumenta el riesgo de redundancia.datos aumenta el riesgo de redundancia.
Limpieza. Deben depurarse los datos a Limpieza. Deben depurarse los datos a partir de lo encontrado en el análisis y el partir de lo encontrado en el análisis y el prototipo.prototipo.
Etapas del ETLEtapas del ETL
Carga inicialCarga inicial C++, PL/SQL, etc.C++, PL/SQL, etc. Truncar, alargar, eliminar duplicadosTruncar, alargar, eliminar duplicados Buena oportunidad para organizar los datosBuena oportunidad para organizar los datos Fuentes son los sistemas operacionales.Fuentes son los sistemas operacionales.
Carga de históricosCarga de históricos Sincronizar formatosSincronizar formatos
Carga incrementalCarga incremental Carga mensual, diaria, etc.Carga mensual, diaria, etc.
Diseño de los programas Diseño de los programas de extracciónde extracción
Se quiere evitar afectar la operación de Se quiere evitar afectar la operación de los sistemas operacionales.los sistemas operacionales.
Afortunadamente se cuentan con Afortunadamente se cuentan con ventanas de tiempoventanas de tiempo
Diseño de la Diseño de la transformacióntransformación
80% del ETL es transformación80% del ETL es transformación Problemas de fuentesProblemas de fuentes
Llaves primarias inconsistentesLlaves primarias inconsistentes Datos inconsistentes(copias con diferentes Datos inconsistentes(copias con diferentes
valores)valores) Diferentes formatosDiferentes formatos Sinónimos y homónimosSinónimos y homónimos Lógica del proceso embebidaLógica del proceso embebida
Diseño de la Diseño de la transformación(cont.)transformación(cont.)
TransformacionesTransformaciones RenombramientoRenombramiento FusiónFusión AbreviaturasAbreviaturas Mapeo de valoresMapeo de valores
Diseño de la cargaDiseño de la carga
Deshabilitar Integridad referencial Deshabilitar Integridad referencial Se requiere un buen esquema de Se requiere un buen esquema de
IndexaciónIndexación
Diseño del flujoDiseño del flujo
Crear un documento de mapeo de Crear un documento de mapeo de origen/destino.origen/destino.
Definición del área temporal (staging)Definición del área temporal (staging)
ActividadesActividades
10. Diseño del metadato10. Diseño del metadato
Centralizado basado en BDCentralizado basado en BD CustomCustom LicenciadoLicenciado
DescentralizadoDescentralizado Distribuido basado en XML(Oracle OMG Distribuido basado en XML(Oracle OMG
y Microsoft MDC)y Microsoft MDC)
ActividadesActividades
EntregablesEntregables
Modelo físico del metamodeloModelo físico del metamodelo DDL del repositorioDDL del repositorio DCLDCL Especificación del repositorio del Especificación del repositorio del
metadatometadato
11. Desarrollo del ETL11. Desarrollo del ETL
Oportunidad para eliminar datos Oportunidad para eliminar datos inserviblesinservibles
Normalmente 80% verificando integridad Normalmente 80% verificando integridad y reglas de negocioy reglas de negocio
Contar con un involucrado del negocio Contar con un involucrado del negocio que pueda tomar decisiones acerca de que pueda tomar decisiones acerca de las reglaslas reglas
ReconciliaciónReconciliación
Importancia del metadato ( origen Importancia del metadato ( origen diferente a lo que se encuentra en BI en diferente a lo que se encuentra en BI en cuestión de estructura).cuestión de estructura).
Credibilidad del proyecto BI.Credibilidad del proyecto BI. Tipos:Tipos:
Conteo de registrosConteo de registros Conteo de dominiosConteo de dominios Conteo de cantidadesConteo de cantidades
Revisión de paresRevisión de pares
Conceptos similares a XPConceptos similares a XP Validación y discusión con los paresValidación y discusión con los pares Solicitar una entrada complejaSolicitar una entrada compleja InformalInformal Menor o igual a una horaMenor o igual a una hora Lluvia de ideasLluvia de ideas
PruebasPruebas
UnitariasUnitarias CompilaciónCompilación FuncionalidadFuncionalidad Captura de excepcionesCaptura de excepciones
IntegralesIntegrales InteraccionesInteracciones FlujosFlujos
RegresiónRegresión Aseguramiento de CalidadAseguramiento de Calidad AceptaciónAceptación
Plan formal de pruebasPlan formal de pruebas
PropósitoPropósito Definición de secuencias y momentos de Definición de secuencias y momentos de
ejecuciónejecución Casos de pruebaCasos de prueba BitácoraBitácora
ActividadesActividades
EntregablesEntregables
Plan de prueba ETLPlan de prueba ETL ETLETL Librería ETLLibrería ETL
12. Desarrollo de 12. Desarrollo de aplicacionesaplicaciones
OLAPOLAP Proceso analítico que permite crear nueva Proceso analítico que permite crear nueva
información de negocio a partir de transformación y información de negocio a partir de transformación y cálculocálculo
Ventajas de herramientas de este tipo para usuarios Ventajas de herramientas de este tipo para usuarios de negociode negocio Dimensiones son objetos de negocioDimensiones son objetos de negocio Drill down, roll up, avg, ROI, rankingDrill down, roll up, avg, ROI, ranking Analistas de negocio auto suficientes(flexibilidad de Analistas de negocio auto suficientes(flexibilidad de
consultas, variedad de acceso)consultas, variedad de acceso) GráficasGráficas Análisis de tendenciasAnálisis de tendencias AgregacionesAgregaciones
Arquitectura de OLAPArquitectura de OLAP
Presentación (GUI) Usuarios de negocioPresentación (GUI) Usuarios de negocio Servicios OLAP. ITServicios OLAP. IT Servicios DB. MOLAP, ROLAPServicios DB. MOLAP, ROLAP
ActividadesActividades
13. Minería de datos13. Minería de datos
Análisis de datos con el objeto de Análisis de datos con el objeto de encontrar información valiosa dentro de encontrar información valiosa dentro de la gran cantidad de datosla gran cantidad de datos
No requiere hipótesisNo requiere hipótesis No solo datos numéricos(texto, voz)No solo datos numéricos(texto, voz) Sin embargo los resultados no son Sin embargo los resultados no son
sencillos de entender, se requiere apoyo sencillos de entender, se requiere apoyo de estadísticos y expertos del negociode estadísticos y expertos del negocio
ImportanciaImportancia
Escenarios posiblesEscenarios posibles Estudio del comportamiento del negocioEstudio del comportamiento del negocio Cambiar actividades del negocio Cambiar actividades del negocio
(estrategia)(estrategia)
TécnicasTécnicas
ClusteringClustering Reglas de asociaciónReglas de asociación ClasificaciónClasificación PredicciónPredicción
ActividadesActividades
14. Desarrollo del 14. Desarrollo del repositorio del metadatorepositorio del metadato
InterfacesInterfaces
PruebasPruebas
UnitariasUnitarias IntegralesIntegrales RegresiónRegresión Pruebas de aceptaciónPruebas de aceptación
ActividadesActividades
15. Implementación15. Implementación
Iniciar no solo con “power users”Iniciar no solo con “power users” Usuarios son clientesUsuarios son clientes Manejo de seguridad(autenticación, Manejo de seguridad(autenticación,
autorización, encripción)autorización, encripción) Matriz de brechas de seguridadMatriz de brechas de seguridad BackupBackup MonitoreoMonitoreo Manejo del crecimientoManejo del crecimiento
ActividadesActividades
16. Evaluación de la 16. Evaluación de la versiónversión
Primera versión dura más de seis mesesPrimera versión dura más de seis meses Ciclo posterior de 6 mesesCiclo posterior de 6 meses El primer release debe entregar lo básicoEl primer release debe entregar lo básico Alcance debe ser controladoAlcance debe ser controlado Cronograma cumplido?Cronograma cumplido? Presupuesto?Presupuesto? Satisfacción?Satisfacción? Alcance?Alcance? Planeación de proyecto?Planeación de proyecto? Integrantes?Integrantes?