laCapsa d' Adrià Triquell

[+] | [-]

Business Intelligence - per a informàtics

08.05.2005

Revisat 25.01.2008

Si no ets informàtic, i vols saber que és el business intelligence, millor consulta aquest altre document.

1. Comentaris sobre business intelligence, estructura i estratègies d' un data warehouse i suport de reporting

2. Eines EIS/DSS en el mercat

1. Comentaris sobre business intelligence, estructura i estratègies d' un data warehouse i suport de reporting

No pretenc en aquest apartat explicar que és el business intelligence (en endavant BI), ni que és un data warehouse, ja que existeix extensa bibliografia al respecte, però si que intentaré reflectir algunes conclusions que he obtingut a través de conèixer diversos sistemes i departaments de BI

És habitual que els sistemes de BI tinguin vàries solucions tecnològiques en un mateix sistema. De fet, la gran potencialitat que actualment han aconseguit les eines EIS/DSS, fa que no només siguin emprades per allò que originàriament van ser pensades, que era la presa de decisions directives (reporting analític), si no que poc a poc el perfil d' usuari ha anat baixant de nivell, i avui en dia poden ser emprades no només per mostrar un quadre de comandament, si no que fins i tot per exemple per treure un llistat d' un determinat tipus de client per fer una enquesta telefònica (reporting operacional).

És per això que quan es comença a construir un data warehouse, hem de tenir present que els usuaris ens acabaran demanant moltes més dades i molt més detall del que ens demanen inicialment. Per tant, és molt important aprofitar correctament l' escalabilitat que permeten aquests tipus de projectes, de manera que no s' intenti assumir tot del cop, però tampoc prendre decisions que a mig termini ens limitin el creixement.

Cal fixar d' entrada quin desenvolupament futur tindrà el nostre projecte, a fi de determinar si simplement ens cal un data mart o algun reporting, o bé cal pensar en DW de varis nivells.

1.1 Sobre les extraccions de la base de dades operacionals al data warehouse:

Es curiós que la majoria de bibliografia sobre business intelligence faci molta referència al disseny que ha de tenir una base de dades data warehouse, mentre que es fa poca referència als mètodes d' extracció del sistema operacional, quan precisament aquest punt és crític i fonamental.

Bàsicament tenim dos tipus de software per fer extraccions:

a) Extraccions amb software ETL especialitzat

Normalment l' opció del software especialitzat en ETL sol ser la millor opció, ja que ens estalviarà moltes hores de programació i ens permetrà tenir un control sobre les diferents etapes i dependències de l' aprovisionament. Si l' origen de dades és una BD, normalment el que fa aquest software és explotar les possibilitats del SQL, que son moltes, de manera mes o menys automatitzada.

b) Extraccions amb software fet a mida

Ara bé, en ocasions pot ser mes interessant fer el software a mida. Per exemple quan el sistema operacional és petit i ja tenim interfases que es poden aprofitar, o bé quan el coneixement de la BD operacional ha de ser altament especialitzat (típic en els CRM) o bé en determinades configuracions on els sistemes estàndard fan de difícil encaixar.

1.2 Possibles situacions i estratègies diferents:

 

a) Empresa petita-mitjana i data warehouse petit:

En aquesta situació és habitual que el mateix personal que porta el sistema operacional, porti el sistema informacional. En aquests casos el més pràctic es fer software a mida i crear interfases cap al DWH.

Es una estratègia senzilla, relativament barata i et permet quedar molt bé aconseguint resultats espectaculars en poc temps. El problema és que si l' empresa creix o es vol potenciar el data warehouse, llavors ens podem trobar amb problemes.

data watrhouse 1 nivell

b) Empresa gran amb sistema operacional fet a mida i data warehouse gran

Típica en bancs i empreses asseguradores. La avantatge del software fet a mida és que el model de dades del sistema operacional sol ser molt clar, ja que precisament s' ha fet a mida pel sistema. L' estratègia en aquest cas en la meva opinió és clara: extraccions amb software especialitzat, i personal especialitzat en el business intelligence.

L' arquitectura sol ser un DW de tres nivells.

data warehouse 3 nivells

c) Empresa gran amb un o varis CRM/ERP i data warehouse gran

Es típic en empreses industrials o grans empreses de serveis, que normalment tenen diferents sistemes CRM/ERP per cobrir totes les seves necessitats (o a vegades és per temes històrics).

És un mal de cap pels dissenyadors del BI, perquè els models de dades solen ser terriblement complicats i confusos, absolutament ineficients per les consultes massives, i si a sobre, com és habitual, s' hi han fet gran nombre d' adaptacions al sistema, la cosa por esdevenir realment tot un repte.

Aquí es pot adoptar una solució mixta. Per exemple es pot adoptar per la majoria de sistemes origen un sistema d' extracció amb software ETL especialitzat, i fer alguna extracció concreta desde el sistema transaccional on la complexitat del CRM/ERP i el grau de coneixement necessari, facin recomanable que sigui el propi personal que porta el manteniment del CRM/ERP qui faci l' extracció.

Un altre motiu pot ser que algun dels sistemes transaccionals origen siguin tan petits que amb una o dues interfases fetes a mida siguin suficients.

 

1.3 BI versus Reporting

També pot passar que el departament de BI acabi sent el departament de business intelligence i reporting, derivat de diferents necessitats de periodicitat i de diverses necessitats de detall (granularitat). Una possible estratègia pot ser l' aprovisionament setmanal o mensual del DW via ETL, i per aquells requeriments diaris, o per aquell detall per al que no disposem de dades, o que pel seu us operacional puntual no justifica el cost de tenir-ho en un data warehouse, es pot atacar directament una còpia del transaccional, ja que una còpia sempre mes ràpida i barata que una transformació ETL.

 

Lògicament, el handicap d' atacar una estructura transaccional serà el rendiment dels informes. La intervenció de personal expert DBA serà imprescindible per solucionar els problemes de rendiment que apareguin.

 

2. Eines EIS/DSS en el mercat

Des de el meu modest punt de vista, a l' hora de triar el producte, cal tenir en compte tres punts fonamentals:

- Tipus d' Origen de les dades (BD relacionals, fitxers, CRM...) i variabilitat

- Preu

- Tipus d' usuaris finals i si son homogenis o no.

També crec que els productes bons i reconeguts tots funcionen per un similar i bé. Em repeteixo que el punt crític està en el ETL i en la definició funcional del sistema de business intelligence, no en la elecció de l' eina d' explotació.

.

Forest & Trees

Es distribueix en la versió builder i Runtime. F&T té suport Web però precisa d' un ActiveX per visualitzar els projectes. Pot ser una bona solució per pressupostos limitats.

DynaSigh

No hi tinc quasi gens d' experiència, però es veu que es un EIS magnífic. És interessant la visita a www.dynasight.com, amb exemples reals via Web.

Té suport Web.

Microstrategy (v8)

Tinc força experiència amb aquesta eina, i en la meva opinió es força bona (amb com totes amb algun que altre problema). Es distribueix en 2 o 3 capes, aquesta última amb suport web.

Està pensat per data warehouse "de veritat", és a dir, tot el seu potencial es desplega quan tenim BBDD amb dissenys en estrella i dimensions e indicadors ben definits, encara que en aquesta última versió han introduït certs canvis, potser en contra de la filosofia "Microstrategy", que permeten certa flexibilitat en el disseny del DWH. A partir de la definició que li donem sobre la nostra base de dades, el que fa és generar SQL contra la mateixa, sempre (o quasi sempre) de la manera més òptima possible. Si el disseny és bo (data marts en estrella, taules amb diferents nivells agregació, etc), els resultats són excel·lents. També dona la possibilitat d' "enganxar" sql directament, on les taules o inclús la base de dades no te perquè estar en el metadades. Això dona molta flexibilitat, rapidesa a l' hora de donar resultats a l' usuari, i permet en una única eina donar solucions per reporting analític i reporting operacional.

També existeixen connectors certificats per accedir a cubs de SAP.

Cognos

Un dels productes amb més presència en entorns BI (i no BI), encara que a Europa te una presència més relativa, on la competència de Miscrostrategy i Microsoft es fa notar. Similar conceptualment a Microstrategy, però amb solució tècnica diferent. Té la particularitat de que en lloc de generar SQL, l' eina crea un "cub de dades" que s' envien directament al client per a que aquest ho exploti localment El format dels cubs fa que la compressió sigui molt gran, amb el que el problema de la transmissió d' aquest volum no sol ser problemàtic, i també existeix la possibilitat de càrrega incremental.

Té una capa pròpia que ho converteix en un EIS. Cognos està pensat inicialment com un DSS amb similar filosofia que microstrategy, com es defineix un model a partir d' una base de dades DWH i d' una eina que permet, a partir d' Atributs, Jerarquies, Dimensions i Mètriques, realitzar d' una forma molt flexible els informes típics d' un DSS amb Drill Down, Drill Up, exportacions, etc. La capa EIS és una funcionalitat que permet crear quadres de comandament semblants als que se es poden fer amb per exemple F&T però que estan basats en informes prèviament creats amb l' eina DSS. Es a dir, que tenim tota la potència d' un DSS encapsulada en una eina EIS que facilita molt la vida als usuaris mes bàsics. Per últim, l' avantatge del cubs, és que al ser atacat localment (o en un servidor), el rendiment és impressionant, i a més no està sotmès a possibles inclemències de la base de dades, ni cal un DBA per donar suport continu. L' inconvenient és únicament que cal fer aquest pas entremig de generació de cubs (Cognos te eines de planificació automàtica dels mateixos)

Per mi el punts dèbils son la dispersió de productes i entorns segons la solució (powerplay pel DSS, ResportNet per reporting, metrics pels balanced scorecard...), i la dificultat d' administració, sobretot en instal·lacions grans. Tampoc te una excessiva integració amb altres productes. La meva conclusió personal és que és una eina molt més adequada que MSTR per data warehouse no massa refinats des d' un punt de vista de disseny (de fet no cal ni que sigui un data warehouse, podrien ser per exemple simplement un grup de fitxers plans), i les solucions de reporting son ideals per temes departamentals. En canvi, el MSTR ofereix més funcionalitat i facilitat de desenvolupament quan es tracta d' un gran data warehouse.

També existeixen connectors certificats per accedir a cubs de SAP.

Business Objects

DSS de fabricació francesa i té una gran implantació en Europa. A igual que la resta d' eines, te web i entorn propi, segons el perfil d' usuari. És molt semblant a MSTR, potser menys potent però en canvi és molt més pròxim a usuaris finals. L' entorn de desenvolupament i administració és força bo, i crec que els preus son força acceptables per la qualitat del producte. No funciona tan bé amb bases de dades no relacionals (això ho resolt forma millor Cognos Powerplay)

DENODO TECHNOLOGIES - BI Operacional

Només ho conec només de l' assistència a un seminari, però crec que tinc la idea clara al respecte. Ho incloc en aquest document perquè Denodo ho anomena business intelligence operacional, encara que jo no hi estic estrictament d' acord. Aquesta eina es basa en la tecnologia EII (Enterprise Information Integration), consistent en la creació d' una base de dades virtual que bàsicament consisteix en la gestió de vistes sobre una base de dades. L' aplicació és una capa intermitja (en vermell en el dibuix) entre els diversos fonts de dades (a baix del dibuix) i els diferents possibles mètodes d' explotació de dades per l' usuari (part de dalt del dibuix) L' idea es que com el producte al capaç de llegir de diferents tipus de dades (arxius, taules, xml, internet, fins i tot dades semi estructurades), es pot arribar a crear una base de dades relacional virtual única.

Denodo

Per tan, la gràcia del tema es que llavors es pot fer servir qualsevol sistema que entengui bases de dades relacionals per explotar les dades, sistema que probablement ja existirà en el lloc on s' implanti la solució. Ddeia que no estic d' acord en la frase anomena business intelligence operacional: Denodo diu que és BI perquè es clar, com la capa intermitja és una BD relacional, hi pots posar a sobre qualsevol eina de BI. Això és cert, però també és cert que al no existir transformació de dades (ETL), les consultes resultants contra la BD operacional poden arribar a ser molt pesants, i afectar sensiblement el sistema (per molt que diguin que el sistema de caché que incorpora l' aplicació ho evita).

La meva humil opinió és que no és una eina per utilitzar BI en un sistema operacional (al menys de forma massiva), però si que és una eina boníssima per necessitats operacionals en temps real que impliquin moltes fonts diferents de dades i canviants. Per exemple, podríem imaginar un centre d' atenció telefònica que necessités obtenir el perfil d' un client a partir de vàries fonts diferents de dades. Una altra gràcia es que aquesta capa intermitja és poc pesant (demana pocs requeriments de hardware) i els projectes poden resultar molt escalables i obtenir resultats molt ràpidament.

SAP BI

He de reconèixer De fet els "bussineros" tenim una certa antipatia a SAP (i mira que està de moda...) perquè és un sistema del que costa extreure informació.

No ens enganyem, SAP BW existeix per temes comercials. SAP, com a tecnologia propietària, vol guanyar aquest segement de mercat, a base de dificultar l' accés al seu sistema per altres sistemes.

Comentar que pel fet de tenir SAP, no vol dir que el nostre sistema hagi de tenir forçosament un BW, encara que es recomanable. Existeixen ETL certificats per SAP que poden extreure l' informació, amb més o menys èxit, i pels agosarats sempre hi ha l' opció d' accedir directament a la seva base de dades (jo crec que es una estratègia adequada si el projecte és acotat). També existeix l' opcó mitxta d' utilitzar un BW com a generador d' ODS, a partir del qual s' hi podria accedir amb qualsevol eina de ETL.

Altres productes

Altres productes que no conec, però que en tinc referències, son:

Clever Path Olap Server de CA

Seria la versió DSS del f&T. No el conec personalment, però per referències diuen que el generador de SQL és excel·lent, però l' entorn front-end, no està a l' alçada de la resta.

Informations Builders

Producte molt ben valorat pels professionals de BI, amb molt bona connectivitat i un bon entorn de desenvolupament. Te molta presència en EEUU

Microsoft Report Services

Producte de Microsoft amb el que suposo que intenta entrar en el mercat de BI. De moment no massa conegut, esperem que continuï així...

Actuate I-Server 8.0 Sembla ser que és un excel.lent producte, amb presència en el mercat, bon entorn de desenvolupament i un bon preu.