miércoles, 16 de mayo de 2018

Desarrollo de un entorno Hadoop de Cloudera como Datawarehouse

El tiempo es oro. El entorno empresarial cambia constantemente y llegar tarde a un mercado potencial puede llevar a perderlo. Hay que buscar la manera de ser los primeros con la calidad necesaria. Y para ofrecer calidad hay que conocer muy bien el mercado y los riesgos. Y para todo ello tener accesible todos los datos pertinentes es más necesario que nunca.

Cliente: Empresa de seguros

Necesidad: Estudiar el mercado y los clientes consolidados para ofrecer nuevos tipos de seguros.

Situación previa: Los datos estaban dispersos por internet, en el data warehouse corporativo de la empresa, en los logs de las webs corporativas y en los departamentos afectados. Se había desarrollado algunos cubos OLAP en SQL Server Analysis Services para estudiar la posibilidad de desarrollar los nuevos mercados pero la información era insuficiente y no se podía afinar la política de precios para cubrir los riesgos potenciales ni determinar lo que los clientes estarían dispuestos a pagar por los riesgos cubiertos.

Implementación: Tras descartar un desarrollo clásico con los recursos de la empresa por el tiempo que se estimaba que llevaría desarrollarlo se creó un entorno Hadoop con Cloudera en el que se volcaron todos los datos disponibles sin apenas tratamiento. Se crearon los programas que capturaban en tiempo real los datos de las campañas y estudios de opinión que se creaban en la web. Y se dio acceso a los departamentos implicados para consultar los datos en tiempo real. Se enriquecieron los cubos OLAP de SSAS con nuevos datos y se crearon otros cubos nuevos. Y tambien se crearon cubos OLAP virtuales directamente en el Cluster de Cloudera con Atscale para una consulta directa de los datos sin la necesidad de volver a copiarlos en otro sistema. A esos nuevos cubos virtuales se podía acceder con hojas Excel, Power BI o Tableau dependiendo de la preferencia del departamento. Se indexó toda la información con Cloudera Search para poder hacer búsquedas no estándar. También se formó a determinados empleados de la empresa a poder hacer búsquedas de información con Apache Hue y con Apache Impala.

martes, 19 de diciembre de 2017

Creación y explotación de un entorno Hadoop de Hortonworks como Datawarehouse

Las empresas no pueden permitirse perderse nada. Ahora las empresas tienen la posibilidad de utilizar un entorno hardware relativamente económico y escalable a medida que vayan creciendo para almacenar todos los datos relativos a su negocio. Aunque todavía no sepan para que pueden llegar a servir sus datos las empresas no quieren tener que arrepentirse en el futuro de no haberlos recogido. El software es gratuito y permite llegar a manejar tantos datos como Google o Facebook. No se quedará nunca pequeño.

Cliente: una empresa inmobiliaria.

Necesidad: Almacenar de manera ordenada en un único sistema todos los datos históricos y actuales que se generan en la empresa.


Situación previa: Se tenía el sistema de gestión de inmuebles y contable de la empresa y un data mart con los datos que la gerencia estimaba necesarios para seguir la evolución de la empresa en una instancia de SQL Server con Analisis Services. Los datos se integraban con Integration Services a partir de fuentes diversas. Los informes se creaban con SQL Reporting Services y Power BI.

Implementación: Se creó un cluster de Hadoop (Hortonworks) donde se iban a almacenar todos los datos operativos de la empresa. Así se almacenarón todos los informes, cartas, comunicaciones, correos electrónicos que se conservaban dispersos por la empresa. Se modificaron los informes para que escribieran también una copia en formato de ficheros .csv para tener un registro auditable histórico de los informes generados. Se recogieron de manera sistemática los datos que se estimaban oportunos de la BBDD del sistema de gestión operativa de la empresa. Se capturaron los logs de dicho sistema y del servidor web de la empresa con Filebeats y Elasticsearch. Se volcaron todos los datos que gestionaban los comerciales de clientes e inmuebles en un formato estandarizado a Hadoop.

Posteriormente se identificaron nuevos conjuntos de datos útiles para el seguimiento de la empresa y se crearon nuevos modelos multidimensionales con SSAS e informes con Power BI para los gestores de la empresa. Se instaló y configuró Dremio para facilitar y agilizar otras consultas de Power BI directamente sobre los datos almacenados en los distintos tipos de ficheros del Cluster.

Todo el diseño de almacenamiento y proceso de la información se hizo conforme al Reglamento General de Protección de Datos (RGPD) que entraría en vigor el 25 de mayo de 2018.

martes, 20 de junio de 2017

Migración a SQL Server de empresa inmobiliaria

Las Bases de datos comunes para toda la empresa facilitan la comunicación entre los departamentos y los gerentes.

Cliente: una empresa inmobiliaria.

Necesidad: Homogeneizar los distintos datos que manejaban los departamentos de la empresa. Situación previa: La mayor parte de la información estaba en un programa de gestión específico para empresas inmobiliarias pero además había varias BBDD de Access y muchas hojas Excel que manejaban los distintos departamentos. Existía mucha información duplicada y aparentemente contradictoria.

Implementación: Se agruparon todos los datos que estaban dispersos por la organización en SQL Server con Integration Services. Una vez creado el modelo de datos y la BBDD, hubo que modificar los procesos de la empresa. También se crearon tablas multidimensionales con Analisis Services para llevar un mejor control desde gerencia de la marcha de la empresa. Finalmente se generaron informes para consultar desde ordenadores o teléfonos móviles con el servidor de informes de Power BI de Microsoft.

 Coste: 500 días + licencias

miércoles, 14 de diciembre de 2016

Optimización de cubos OLAP de SSAS (SQL Server Analysis Services)

El desarrollo de las soluciones de inteligencia empresarial no sirven para siempre. Se van degradando con el tiempo, crecen en datos, se van introduciendo pequeños cambios que en muchos casos deterioran los tiempos de respuesta. La empresa empieza a demandar más. Se generan muchos más informes. En fin, que lo que antes funcionaba cada vez lo hace peor.

Cliente: Empresa industrial

Necesidad: Disponibilidad en todo momento de los datos de los cubos multidimensionales de la empresa y con unos tiempos de respuesta razonables para los usuarios.

Situación previa: Las aplicaciones cliente de generación de informes y cuadros de mando funcionaban muy lentas y el servidor OLAP se quedaba indisponible numerosas veces.

Implementación: Se llevó a cabo un estudio del rendimiento de sistema activando y generando trazas del servidor de SSAS para detectar dónde se estaban produciendo los retrasos y bloqueos. Se estudió el modelo multidimensional para relacionar los retrasos con las trazas y las consultas mdx que se generaban que más tiempo consumían. Cuando se empezaron a sacar conclusiones se introdujeron los cambios que no suponían grandes disrupciones en el servicio para mejorarlo en lo posible. En un entorno de preproducción se introdujeron finalmente los cambios en el diseño de los cubos que se estimaron necesarios para mejorar el rendimiento (nueva agrupación de dimensiones, nuevas particiones, nuevas medidas agregadas, ...) y se realizaron las pruebas y cambios pertinentes para cubrir las necesidades de la empresa.Se optimizó y automatizó con Integration Services (SSIS) el proceso de actualización de los cubos.