trabalhando com business intelligence – parte 1 - revista sql magazine 111

37
Gostei (19) (0) Buscar código fonte comentários post favorito (42) SQL Magazine 111 Índice Trabalhando com Business Intelligence – Parte 1 - Revista SQL Magazine 111 Neste artigo serão apresentadas as técnicas básicas envolvidas na criação de um data warehouse, na modelagem da base multidimensional, no processo de ETL, na modelagem e publicação da parte lógica do cubo (metadados). 4 49 Curtir 3

Upload: paulo-daniel

Post on 27-Sep-2015

68 views

Category:

Documents


1 download

DESCRIPTION

Trabalhando com Business Intelligence

TRANSCRIPT

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 1/37

    Gostei(19) (0)

    Buscar

    cdigofonte comentrios postfavorito(42)

    SQLMagazine111ndice

    Trabalhando com BusinessIntelligence Parte 1 - RevistaSQL Magazine 111Neste artigo sero apresentadas as tcnicas bsicasenvolvidas na criao de um data warehouse, namodelagem da base multidimensional, no processo deETL, na modelagem e publicao da parte lgica do cubo(metadados).

    4 49Curtir3

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 2/37

    Demaispostsdestasrie:

    TrabalhandocomBusinessIntelligenceParte2

    ArtigodotipoTutorial

    Recursosespeciaisnesteartigo:

    ContmnotaQuickupdate,Contedosobreboasprticas,ArtigonoestiloCurso

    Online

    TrabalhandocomBusinessIntelligenceParte1

    BusinessIntelligenceserefereaoconjuntodeconceitos,mtodoserecursos

    tecnolgicosquehabilitamaobtenoedistribuiodeinformaesgeradasa

    partirdedadosoperacionaisehistricos,visandoproporcionarsubsdiosatomada

    dedecisesgerenciais.

    UmacaractersticafundamentaldeumprocessodeBIqueneleosdadosso

    copiadosdabasededadostransacionaledeoutrasfontes,paraabasededados

    analtica,oquepermitequeasinformaessejamextradasdestaltimasemque

    aperformancedosistematransacionalsejaprejudicadaedaformamaiseficiente,

    eficazevisualmenteagradvelpossvel,semprefocadanatomadadedeciso.

    Osdadospodem,nasuaorigem,estarestruturadosouno,ouseja,podemvirde

    umsistemadeinformaocomdadosorganizadosecorretamentenormalizados

    emtabelasecolunas,epodemaindaseremextradosdesitesdainternetcomo

    textopuro,udio,vdeoououtrosformatos.Apesardisso,emambasassituaes

    elesdevemsertratadosegravadosemumformatoquefaciliteaextraode

    informaeseapoieasdecisesdosgestores.

    Nesteartigoseroapresentadasastcnicasbsicasenvolvidasnacriaodeum

    datawarehouse,namodelagemdabasemultidimensional,noprocessodeETL,na

    modelagemepublicaodapartelgicadocubo(metadados)e,porfim,na

    visualizaodosdadosemumaferramentaOLAP.

    Emquesituaootematil

    OtematilatodosquetmanecessidadedeimplantarumasoluodeBusiness

    Intelligenceenotmcomodispendergrandesquantiasdedinheiroemlicenase

    servidores.Asoluoapresentadagratuitaeescalvel,entretantoosconceitose

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 3/37

    astcnicasapresentadaspodemseraplicadosemquaisquerferramentasdeBI.

    Aolongodadcadade90vivemosadescobertadainternet,ocasioemquearede

    mundialdecomputadoresrevelouseumtimomercado,surgindoapartirdaoe

    commerce,osportaisdenotcias,demsicase,oquevemrevolucionadoomundo,

    asredessociais.

    Concomitantecorridapelavisibilidadenainternet,comocustodohardwarecada

    vezmenor,asempresasinvestiramemseussistemasdeinformao,quese

    tornaramimprescindveis.Desdepanificadorasatamontagemrobotizadade

    veculosautomotivos,todosnecessitamdeumsoftwareespecializadoparageriras

    etapasdeseusprocessos.

    Entretanto,sejapeladificuldadeenfrentadapelasempresasemcriarsoftwaresob

    medidaparasuasnecessidades,sejapelacomplexidadeenvolvidaemmanteruma

    equipeinternadeTIC(TecnologiadaInformaoeComunicao),sejapelos

    custoselevadosdaterceirizaodessedesenvolvimento,amaioriaadquirevrios

    produtosdeterceirosparagerirdiversasreasdaempresacomooRH,Financeiro,

    GestodeProjetos,GestodeClientes,EnsinoDistncia,entreoutros,oque

    acarretaemdadosredundantes,descentralizadoseemSistemasGerenciadoresde

    BancosdeDadosRelacionais(SGBDRs)distintos,aoinvsdeseremarmazenados

    emumanicabasededados,corporativa,normalizadaentegra.

    Diantedasituaocriadapeladescentralizaoeheterogeneidadedosdados,o

    grandedesafiodomomentointegrlos,interpretlosetransformlos,de

    algumaforma,eminformaorelevanteaoseunegcio,possibilitando,coma

    devidaanlise,acriaodeconhecimento.

    Oconhecimentopode,muitasvezes,serodiferencialdeumaempresa,pois

    possibilitaressaltarosseuspontosfortesemitigarosriscosenvolvidosnospontos

    fracos.Tendoumretratofieldarealidade,umaempresaconsegue,emmuitos

    casos,combasenosdadoshistricos,fazerumaprevisobastanteassertivado

    futuroeutilizlacomoembasamentoparasuasdecises.

    Combasenisso,nestaprimeirapartedasrieseroconsideradososconceitos

    maisrelevantesdaBusinessIntelligence(BI),seguidosdaapresentaodasute

    Pentaho,capazdecontemplarnocaseproposto,todososrequisitoseregrasde

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 4/37

    negcioelencadosporumaempresafictcia,comdiversasfiliais.Analisandoabase

    origemelevandoemcontaosrequisitoseregrasdenegcio,serdescritoo

    raciocnionecessrioparaamodelagemdabasedestino,emformatoestrela.Por

    fim,dandoincioaotutorialpropriamentedito,temseopassoapassoparaa

    instalaoeconfiguraodoPentahoDataIntegration.

    BInoumbichodesetecabeasOtermoBusinessIntelligenceprovocaarrepiosemmuitagente.Atualmente,

    afirmasequeasgrandesvendedorasdesoluesproprietriaseseus

    especialistaspintamumbichodesetecabeasparajustificarasaltascifras

    envolvidas.Estaumaatividadealtamenteespecializadaeexige,emsuas

    diversasetapas,profissionaistreinadoscomumagamamuitograndede

    conhecimentos.Entretanto,oprocessodeBIpropriamenteditobastantesimples.

    Em1992,oGartnerGroup(vejaaNotadoDevMan1)definiuBusiness

    Intelligencecomooconjuntodeconceitos,mtodoserecursostecnolgicosque

    habilitamaobtenoedistribuiodeinformaesgeradasapartirdedados

    operacionaisehistricos,visandoproporcionarsubsdiosatomadadedecises

    gerenciais.Otermopodesertraduzidocomointelignciaempresarialou

    intelignciadenegcios.

    NotaDevMan1.GartnerGroup

    OGartnerumaempresadeconsultoriafundadaem1979,porGideonGartner,

    comsedenosEstadosUnidos,emStamford,Connecticut.Atualmenteconta

    com5.300associados,incluindo1.280consultoreseanalistas.Refernciapor

    serformadoradeopinio,trabalhaempesquisasdemercadoevendeseus

    relatrioscomincrvelvaloragregadoparaempresasprivadaseparao

    governode85pases.

    UmacaractersticafundamentaldeumprocessodeBIqueneleosdadosso

    copiadosdabasededadostransacionaledeoutrasfontes,paraabasededados

    analtica(vejaasNotasdoDevMan2e3),oquepermitequeasinformaes

    sejamextradasdestaltimasemqueaperformancedosistematransacionalseja

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 5/37

    prejudicadaedaformamaiseficiente,eficazevisualmenteagradvelpossvel,

    semprefocadanatomadadedeciso.

    Osdadospodem,nasuaorigem,estarestruturadosouno,ouseja,podemvirde

    umsistemadeinformaocomdadosorganizadosecorretamentenormalizados

    emtabelasecolunas,epodemaindaseremextradosdesitesdainternetcomo

    textopuro,udio,vdeoououtrosformatos.Apesardisso,emambasassituaes

    elesdevemsertratadosegravadosemumformatoquefaciliteaextraode

    informaeseapoieasdecisesdosgestores.

    NotaDevMan2.BasededadosOLTPTransacional

    AmaioriadossistemasdeinformaoseenquadranacategoriadosOnline

    TransactionProcessing(OLTP),tambmchamadadeprocessamentode

    transaesemtemporeal.Umsistemadestetipoexigeumabasededados

    modeladaparaotimizarainclusoealteraodedados,obedecendoapadres

    rgidosdenormalizao,evitandoredundncias,permitindoaintegridade

    referencialeoutrasconsistncias.

    NotaDevMan3.BasededadosOLAPAnaltica

    Assoluesparaanlisedegrandesvolumesdedados,sobdiversas

    perspectivas,exigemumabasededadosmultidimensional,chamadadeOnline

    AnalyticalProcessing(OLAP),modeladaparaotimizaraextraode

    informaesenormalmentearmazenadaemservidoresdiferentesdos

    utilizadospelaaplicaoOLTP.

    AFigura1ilustraasetapasdeumciclodeBI,querepetidocomcerta

    periodicidade.Comopodeserobservado,osdadosseguemdasuaorigemato

    seudestinoeforneceroinsumosparaassadasaosusuriosfinais.Aprimeira

    etapadestecicloconsistenacaptaodosdados,oriundosdediversasfonteseem

    distintosformatos.Namaioriadoscasos,noentanto,osdadossolidosdabase

    transacional,OLTP.

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 6/37

    Figura1.CicloperidicodeumaaplicaodeBusinessIntelligence.

    AsegundaetapaaExtract,TransformandLoad(ETLvejaaNotadoDevMan

    4),queconsisteemlerosdados,fazerasadequaesparatornlosdefcil

    interpretaoeprcalcularostotalizadoresdesejados,gravandoosnoData

    Warehouse.

    NotaDevMan4.Extract,TransformandLoadETL

    OprocessodeETLdivididoemtrsetapas:

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 7/37

    Extraction(extrao):Consistenaleituradosdadosapartirdeumaoumais

    fontes,como,naobtenodetodososregistrosadicionadosoualterados

    depoisdoltimoprocessodeETLexecutado,naleituradepginasdaweb,de

    webservices,xml,xls,csv,json,almdeformatosBigData,comoHadoop,

    Cassandra,MongoDBeHBase.

    Transformation(transformao):Consistenaalteraodaformaoudo

    contedododado,paraqueseencaixeaestruturadabasedestino.A

    transformaoocorre,porexemplo,aosefazerumlookuppelonomeda

    cidadeparaarmazenaroseucdigo,aoajustaronomedobairroapartirdo

    seuCEP,aoinvalidarumregistroporterCPFouemailinvlidos,aofazer

    decodificaes,renomeaes,clculos,agregaes,etc.

    Load(carga):Consistenagravaodosdadosemseudestino,independente

    doseuformato,quepodeseremumarquivo,emumatabeladabase

    transacional,emumadimensooutabelafatodeumcuboouemformatoBig

    Data.

    AETLumadasetapasdoprocessodeBusinessIntelligencequevisaa

    criaodeumgrandearmazmparaosdados(DataWarehouse).Paraqueo

    processodeBusinessIntelligencesetornassevivel,foinecessrioo

    desenvolvimentodeferramentasespecialistas,capazesdeexecutartodasas

    tarefasexigidaspelaatividade.Devidograndefacilidadeproporcionada,a

    adoodestasferramentasparaoutrosprocessos,comoamigraoea

    sincronizaodedadosentresistemas,passouaserapenasumaquestode

    tempo.Hojeemdiaessasferramentassoutilizadasparaatividadescomo

    garimpagemdedados,leituraeanlisedecontedodasredessociaisebolsas

    devalores,enviodeemailmarketing,etc.

    AterceiraeltimaetapadociclodeBIadasadadosdados,quepodeacontecer

    emdiversosformatos.Osrelatrios,oformatomaisusual,tmlayoutpr

    definido,aceitamumagamadefiltrosegeramdocumentosempdf,xls,etc.Outra

    formadesadadedadossoosdashboards,quetmafinalidadeprincipalde

    permitiroacompanhamentodeindicadoresemtela,deformagrficaeinterativa.

    JasanlisessofeitaspormeiodeumaferramentadenavegaoOLAP,pelo

    prpriousuriofinal,quepodemanipularoscuboscriados,almdesalvare

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 8/37

    compartilharsuasconsultasanalticas.OutrasformasusuaisdesadasoosE

    mailsePosts,quepodemserdisparadosparasinalizaraocorrnciadeumevento

    ouparaalertarquedeterminadoindicadoratingiuumnvelcrtico.

    NormalmenteoprocessodeETLserepeteumavezaodia,demadrugada,

    refletindotodasasalteraesdodiaanterior,masaperiodicidadedeveser

    ajustadadeacordocomanecessidade,emcadasituao.

    PentahoBusinessAnalyticsComessaenormedemanda,muitassoluesdeBIforamcriadas.Inicialmenteo

    focodasempresasdesenvolvedoraseraapenasemgrandesmercadose,porisso,

    cobravamvaloresestratosfricospelossoftwares,consultoriaseclaro,pelo

    hardware,queaindahoje,noraro,vemembutidonamaioriadaspropostas.

    Oadventodosoftwarelivrepossibilitouquetimasalternativasssolues

    proprietriasfossemcriadas.Em2004,naFlrida,EstadosUnidos,formouseuma

    equipedeexecutivosdegrandeexperinciaemBIqueanalisoudiversassolues

    OpenSourcedomercado,selecionandoasmaisinteressantesemcada

    especialidade.Aequipe,quefoiacrescidadosprincipaislderesdosprojetos

    escolhidos,fezalgumaspequenasadaptaesparaqueassuasferramentas

    fossemtodascompatveisentresi,criandoassimasutedeaplicativosPentaho

    BusinessAnalytics.Estasutesegueaspolticasdedesenvolvimento,distribuioe

    suportedossoftwaresopensource,quesoflexveis,independemdesistema

    operacionaledefornecedores,oquegarantealtaconfiabilidade,seguranae

    escalabilidade.Tambmporisso,ocdigofonte,baseadoempadresdomercado

    (J2EEeAJAX),abertoeliberadoparadistribuioemodificaosemqualquer

    custodelicenciamento.

    Averso4.8doPentaho,lanadaemnovembrode2012,contacomumadas

    principaisnovidadesdosltimosanos,oPentahoMarketplace,queumrepositrio

    quepermiteainstalao,atualizaoeremoodeplugins,pelainterfaceweb.

    OutropontopositivodoPentahoquemuitaspessoasestoenvolvidasnas

    melhoriasacrescentadassferramentasdasute.Umadelasmereceespecial

    destaque,oportugusPedroAlves.Eleoresponsvelpelacriaodas

    ferramentasC,batizadasdeC*Tools,todasdisponveisnoPentahoMarketplace,

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 9/37

    queenglobamdiversasferramentasextremamenteteis,comooCommunity

    DashboardFramework(CDF),CommunityDashboardEditor(CDE),CommunityData

    Access(CDA),CommunityClusterCache(CCC),entreoutras.

    CabedestacartambmopluginSaikuAnalytics,queserdemonstradonestasrie

    equetrazumfrontendemjQueryquepermiteacriaodeanlisesOLAPcom

    grandefacilidade,pormeioderecursosdedraganddrop.

    importanteressaltarqueoPentaho,apesardeserumsoftwarelivre,conta

    tambmcomumaversocomercial,comonomedePentahoEnterpriseEdition.

    Basicamenteosoftwareomesmo,masacrescentaalgunsrecursosquepermitem

    maiorfacilidadenasuaconfigurao,gestoeanlisededados,almdosuporte

    tcnicooferecido.Estaversotemummodelosemelhanteaosoutrosdistribuidores

    deBI,quelevamemcontaonmerodeservidores,processadoresencleos,mas

    comvaloresirrelevantesquandocomparados.Aversolivre,chamadadePentaho

    CommunityEditionsuficienteparaseiniciarumprojetoe,casohajaa

    necessidade,aversopagapodesercontratadaaqualquermomento,sema

    necessidadedeajustesnassoluesjcriadas.

    Aparteservidoradasuteformadapordoisserviosweb.OprimeirooBI

    Server,executadonoservidorTomcat.Almdeseencarregardeexecutartodasas

    ETLs,possuiumainterfacewebparadisponibilizaraousuriofinalassolues

    criadas,chamadadePentahoUserConsole(PUC).Osegundoserviooda

    interfacedeadministrao,executadonoservidorlightdeaplicaesJetty,e

    chamadodePentahoAdministrationConsole(PAC).nesteservioqueos

    usurios,seusgrupos,conexesJNDIeagendamentosdeETLssomantidoseos

    cachesdosdiversoscomponentespodemserlimpos.

    Comosconceitosapresentados,tmsesubsdiosparainiciarodesenvolvimento

    deumaaplicaoanaltica,utilizandosoftwarelivre.Aprimeiraetapadequalquer

    projetodeTIColevantamentoderequisitosederegrasdenegcio,que

    fundamentalparadelimitaroqueseesperacomoresultadodestetrabalhoecomo

    eleservalidado.ComprojetosdeBusinessIntelligencenodiferente.Para

    exemplificarasetapasdoprocessodedesenvolvimentodeBI,aseguir

    apresentamseosrequisitoseregrasdenegciodocasepropostoparaestasrie

    deartigos.

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 10/37

    RequisitoseregrasdenegciodocasepropostoParaapresentarosconceitosrelevantesparaestasriedeartigos,bemcomopara

    exemplificarousodealgumasdasferramentasdasutePentahoBusiness

    Analytics,suponhaqueodiretordaMagazineSetorial,umagrandeempresafictcia

    deecommerce,contrataosserviosdeBusinessIntelligencedeumaempresa

    especializadaeexplica,nositensaseguir,ascaractersticasenecessidadesdo

    projeto:

    1.Aempresatemanecessidadedeacompanharaevoluodecertosindicadores

    devenda,semdegradarodesempenhodosistematransacional,quegerenciaas

    vendasefetuadaspelositeeportodasasfiliaisdoBrasil

    2.Avisualizaodosdadosdeveserpossvelpelainternet,pormeiode

    computadores,tabletsoucelulares

    3.Asoluodevesercriadasemcustoalgumcomsoftware

    4.AsoluodeverodaremservidorescomqualquerSistemaOperacional

    5.Asoluodeveserfuncional,mesmoemhardwarecomconfiguraes

    discretas

    6.Asoluodevepermitircomputarasvendasefetuadasatodiaanterior,

    medindoquantidade,valordecompra,valordevendaevalordolucrototalizados

    porano,trimestre,msoudiadavenda

    7.Asoluodevepermitirtotalizarosvalores,emqualquerordemoucombinao,

    pelosseguintesatributos:filial,vendedor,cliente,notafiscal,produtoecategoria

    doproduto

    8.Umvendedor,aoexecutarumavenda,estarsempreatreladoaumafilial,mas

    podemudarafilialemquetrabalhaaqualquermomento.

    NormalmenteosrequisitosdeumcaserealsorepassadosaoanalistadeBIde

    formasucinta,talcomoforam,propositadamente,descritosnestecase.Aanlise

    dosrequisitosfundamentalparaqueasperguntascorretassejamformuladase

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 11/37

    respondidas,aindaquementalmente,paraqueentoasoluosejamodelada.

    NaFigura2apresentadooModelodeEntidadeRelacionamento(MERouER)da

    basequearmazenaosdadosdosistematransacional,emMySQL.Estaestrutura

    armazenadadosreferentessfiliaiseseusvendedores,almdosdadosdos

    clientesesuasnotasfiscais,comosprodutosdecadacompra.Percebese,alm

    disso,queosprodutossosempredeumacategoria(gnerooutipo)deproduto,

    poisatabeladeprodutostemumachaveestrangeiraapontandoparaade

    categoriadeprodutos,semaceitarnulos.

    abririmagememnovajanela

    Figura2.ModelodeERdabasetransacionalOLTP.

    BasededadosmultidimensionalOLAPApsaanlisedabaseorigemdoprocessodeETLeoconfrontocomosrequisitos

    elencados,percebesequeacriaodeumcuboparatotalizarosdadoscomtoda

    aflexibilidadesolicitadaseramelhoralternativa,umavezqueestasoluo

    contemplatodososrequisitoseousuriotertodososresultadosemumanica

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 12/37

    tela,comumaferramentaOLAP.

    Paraarmazenarosdadosdocubo,umabasemultidimensionalnecessria.Muito

    emboraexistammitossobreadificuldadenamodelagemdedados

    multidimensional,oconceitosimples.Independentedasdiferenasdoutrinrias

    deRalphKimballeWilliamInmon,doisdosprecursoresdoBI,entendesequea

    maioriadasnecessidadesapresentadaspelosusuriossocontempladaspormeio

    doesquemaestrela(starschema),defendidoporKimballequeconsisteemuma

    tabelafatoesuasvriasdimenses.Aoutravertente,tilemmuitoscasose

    defendidaporInmon,pregaomodeloflocodeneve(snowflake),ondemodelagens

    maiscomplexas(commaiornormalizao)soutilizadasparaarmazenarosdados.

    Estecaseadotaoesquemaestrelaque,talcomosalientado,utilizadonagrande

    maioriadoscasoseatendeatodososrequisitoselencadosaqui.Paratanto,

    abordarseaseguiralgunsconceitosimportantes.

    Umdatawarehousepodeterumoumaisdatamarts,queseriamumconjunto

    detabelasquearmazenamoscubosmultidimensionaisdeummesmoassunto,

    comoporexemplo,vendas.Cadadimensopermiteanalisarosfatosporuma

    determinadaviso,sejaporfilial,categoriadeproduto,datadavenda,etc.

    Asdimensespodemserbasicamentededoistipos,SimpleseSCD.Noprimeiro

    tipo,oprocessodeETLnoversionaosdadosnabaseanaltica.Issosignificaque,

    porexemplo,casootelefonedeumclientefossealteradonabasetransacional,o

    telefoneantigoseriasobrescritonadimensodeclientesnoprocessodeETL.Este

    comportamentoparaocasodotelefoneperfeito,masparaanalisarinformaes

    temporais,no.

    Imaginequeparaoseunegcio,aUFemqueoclientemoradesuma

    importnciaeumdeterminadoclientesemudouparaoutroestado.Todoohistrico

    dele,quandoelemoravanoprimeiroendereo,extremamenterelevanteepor

    issonodeveserperdido,ouseja,quandoanalisadososdadosdasvendas

    efetuadasnapocaemqueelemoravanoprimeiroendereo,estesdevemser

    computadosnasestatsticasdaprimeiraUF,eosdadosdasvendasefetuadas

    depoisdamudanadevementrarnasestatsticasdanovaUF.

    PararesolveresseproblemaexistemasdimensesdotipoSlowlyChanging

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 13/37

    Dimension(SCD),queguardamohistricodosdadoscasotenhamseuvalor

    alterado.Ohistricopodesercriadodealgumasformas,masaprincipal

    versionandooregistro.Istoquerdizerquecadaregistrotemdatasdeincioefim

    dasuavigncia,eumacolunaparaindicaronmerodaverso.Destemodo,

    apenasumregistroservigenteemumdeterminadomomento.Noexemplodo

    telefonealterado,oregistroteriasuadatadefimdevignciaalteradadovalor

    default,que01/01/2199,paraadataehoraatuaiseseriaincludoumnovo

    registrovigentecomonmerodaversoacrescidoemum.Muitosautoresdizem

    queestacaractersticaumdivisordeguasentreasverdadeirasferramentas

    deBIeasfalsas.Istoporque,muitassoluesproprietriasderelativosucesso

    nomercadonooferecemestafuncionalidade,limitandoseapenasaofereceros

    dadosatuais,desprezandotodaariquezaqueohistricotemaoferecer.

    Dandocontinuidadeaosimportantesconceitos,achaveprimriaqueasdimenses

    recebemchamadadeSurrogateKeyouchavesubstituta,daoprefixoSK_

    emseusnomes.OutranomenclaturautilizadaTechnicalKey,comoprefixo

    TK_.

    Comoboaprtica,oprimeiroregistrodetodadimensodeveteremseusatributos

    valoresnulos.Issoporque,esteregistroserutilizadonoscasosemqueaETLda

    tabelafatonoencontra,nasdimenses,oregistroprocurado.Dessaforma,a

    tabelafatosempreapontarparaumregistrodadimenso,mesmoquecom

    valoresnulos,garantindoaintegridaderelacionaledeixandoevidenciadoque

    aquelainformaonofoiencontrada.IstopermitequeoprocessodeETL,emum

    casodenoconformidadedosdados,sigasuaexecuonormalmente,sem

    dispararerroalgum.

    Outraboaprticautilizarcolunasdeauditorianasdimenses,comoadatade

    inseroeadatadealteraodoregisto.Masevitecriarestascolunascom

    valoresdefaultnobancodedados,poisassim,todoocontroleficacomoPentaho

    eocomportamentodastabelassempreomesmo,independentedoSGBDR

    envolvido.

    Apartirdestesconceitos,tmsesubsdiosparainiciarefetivamenteamodelagem

    dabasededadosanaltica.Comoprimeiratarefa,devemseverificarosdadosda

    baseorigemedefinirqualofatoqueseranalisadoapartirdocubocriado.Neste

    casesoasvendasdeprodutos.Istojdefineaorigemdosdadosdatabelafatoe,

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 14/37

    pelapadronizaosugeridanesteartigo,oseunome.Comoosdadosviroda

    tabelanotafiscal_produto,quecontmumalinhaporprodutovendido,atabela

    Destinoserchamadadeft_notafiscal_produto,queteveseunomeformadopelo

    prefixoft_epelonomedatabelaorigem.

    Analisandoosrequisitos,percebesequeodenmero7orientaadefiniode

    algumasdimenses,sendo,aprincpio,umaparacadaconceitotratado(filial,

    vendedor,cliente,notafiscal,produtoecategoriadoproduto),enquantoorequisito

    denmero8dizquefilialevendedorpodemserarmazenadasemumamesma

    dimenso,explicandoqueumvendedorsempreestarligadoaumafilial,etero

    nomedim_vendedor,obtidoconcatenandooprefixodim_comonomeda

    tabelaorigem.Comoumvendedorpodemudardefilial,estadimensodeve

    guardarohistricodosseusdados.

    Comoobjetivodefacilitaravenda,bemcomoagestodosprodutos,estesso

    agrupadosconformeognero,demodoqueumprodutocomooIpadest

    atreladocategoriaEletrnicos,simulandoaexperinciadeestaremumaloja

    comdiversoscorredores.Nestecontexto,umprodutoraramentemudade

    categoriae,emocorrendotalhiptese,podesesimplesmentesobrescrever,na

    dimensodoproduto,ovalorantigodacategoria,mantendoonovovalor.Assim,a

    dimensodim_produtodevetertambmasinformaesdacategoriadoproduto,

    almdasinformaesreferentesaoproduto,enoprecisadascolunasparao

    versionamento(nmerodeversoedatasdevignciadoregistro).

    Naprtica,oquediferenciaotipodadimensoapresenaouausnciadessas

    colunas,poisnenhumaalteraonanomenclaturadastabelasrecomendadapara

    indicarseadimensoumaSCDouSimples.Istoporque,aqualquermomento

    podeseoptarporversionaroudeixardeversionarosregistrosdeumatabela,ea

    nomenclaturapodesetornarumobstculoconsidervel,poiscomonomeda

    tabelaalterado,osmetadadosdocubodeveriamtambmrefletirestaalteraoe

    serrepublicados.

    Aindaanalisandoosprodutos,umacaractersticaquemereceespecialatenoa

    dequeosvaloresdecompraevendatambmvoparaatabelafato.Istoporque

    umservidorOLAPtemaincumbnciadetraduzirasconsultasfeitaspormeiode

    queriesmultidimensionais(MDX)emsimplesqueriesSQLparaobterosvaloresdas

    suasdiversasMedidas.Estesclculossosemprefeitoslevandoemcontaos

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 15/37

    dadosdatabelafatodecadacubo,pormeiodautilizaodeagregadorescomo

    soma,mdia,quantidadetotal,valormximoevalormnimo,etc.Entretanto,nada

    impedequeosvalorestambmsejamarmazenadoseversionadosna

    dim_produto.Apesardisso,estesvaloresseriamapenasilustrativosenoseriam

    utilizadosnosclculos.

    Paraquesejampossveisanliseslevandoemcontaocliente,adimenso

    dim_clientefundamentaleterosatributosparaversionamento,poisneste

    casoasinformaessotodasrelevantesaonegcio.Outradimensonecessriae

    presenteempraticamentetodasasaplicaesdeBIadimensotempo,aqui

    chamadadedim_data.

    NestecaseserocomputadosdadoscomasgranularidadesdeAno,Trimestre,Ms

    eDia,deacordocomosrequisitos,maspoderamosterumadimensoparaas

    horaseminutos,porexemplo,oquepermitiriaanlisessobreohorrioemque

    cadacomprafoiefetuada.Adimensodim_dataterumregistroparacadadiae

    teratributospararepresentartambmoano,trimestreemsreferentesaodia

    emquesto,semanecessidadedosatributosdeversionamento.Porexemplo,o

    registrododia01/01/2008temoatributodsAnocomovalor2008,oatributo

    dsMescomvalorJaneiroenrTrimestrecomvaloriguala1.

    Oprocessocomafinalidadedepopularestadimensocomseusdadosdevegerar

    registrossuficientesqueabranjamasdatasemqueosfatosanalisadosnocase

    ocorreramouocorrero.Porexemplo,desde01/01/2000at01/01/2020.

    Armazenamosdiassuficientesparaqueaaplicaonoexijaageraodestes

    registrosemumcurtoespaodetempo.Datasmaisavanadastambmsero

    teisparaanlisespreditivaseporestemotivodevesegerarlinhassuficientes

    parasecontemplarestaanlise.

    OmodelodedadosmultidimensionalapresentadonaFigura3segueomodelo

    estrela,defendidoporKimball,eserabaseDestinodoprocessodeETL,criando

    assimoDatamartdeVendas.Nahiptesedestecaseserpropostoadiversos

    profissionaisdareadeBusinessIntelligence,asbasesdedadosporeles

    modeladasnoseriammuitodiferentesdestafigura.

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 16/37

    abririmagememnovajanela

    Figura3.ModelodeERdabasemultidimensional,esquemaestrela.

    Comrelaoperformancedobancodedados,paraestecasefoiselecionadoo

    SGBDRMySQLcomaengineMyIsam,queotimizadaparaaleituradedados(veja

    aNotadoDevMan5).AsForeignKeysrepresentadasnaFigura3nosero

    criadasefetivamente,poisaengineMyIsamnocontacomesterecurso.Emoutros

    SGBDRs,noentanto,autilizaodaschavesestrangeriasdeintegridadereferencial

    recomendada.

    NotaDevMan5.MySQLEnginesVsBancoscolunares

    Noquetangeperformancenaleituradedados,algunsautoresdefendemque

    aengineInnoDBjatingiumaturidadesuficienteparacompetircomaengine

    MyIsam,enquantooutrosautores,visandomelhorperformancenestaleitura,

    defendemautilizaodoMySQLcomaengineMariaDb,ouentoautilizao

    debancosdedadoscolunarescomoCassandraouMongoDB.Entretanto,este

    assuntoexigeumnovoestudoefogedoescopodesteartigo.

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 17/37

    Cumpreregistrarqueestodisponveisparadownload,nositedaSQLMagazine,as

    basesdedadosOrigemeDestino,osarquivosdoPDIcapazesdeexecutartodaa

    ETLeoarquivocomosmetadadosdocubodevendas.

    Assim,paradarincioaoprocessodeETLdescritoaseguir,baixeosarquivos

    fornecidoseexecuteosdoisarquivosSQLemumaferramentaclientedoMySQL.O

    arquivoDumpMagazineSetorial.sqlcriaabaseorigem,jcomseusdados,eo

    arquivoCriaBaseDestino_OLAP.sqlcriaabasedestino,prontaparareceberos

    dadosmigradospeloprocessodeETL.

    PentahoDataIntegration(Kettle)OPentahoDataIntegration(PDI),umadasferramentasdasuteopensource

    PentahoBusinessAnalytics,comumentechamadopelonomedoprojetoquelhe

    deuorigem,oKettle.Elecompostoporquatrocomponentes,sendoomais

    importanteoSpoon,umainterfacegrficaqueserutilizadanestecaseparaa

    criaodoprocessodeETL,enquantooscomponentesPan,KitcheneCartese

    destinamexecuo,vialinhadecomandoourequisiesHTTP,dosprocessos

    criadosnoSpoon.Comopossibilitamchamadasremotasaosprocessos,estes

    componentespermitemacriaodeclustersparaaexecuodasETLsetambm

    afcilutilizaodeprocessosPentahoporsoftwaresdeterceiros.

    ComaadoodoPDI,passaaserindiferenteparaaaplicaoqualoSGBDR

    OrigemeoDestino.Elessoapenasdatasources,queforneceroosdadosque

    passaroporprocessosdevalidao,higienizao,formatao,normalizao,

    sincronizao,etc.

    OPDItemconectividadecompraticamentetodososbancosdedadosdomercado

    epodeaindaacessarwebservicesoufazerchamadasHTTP,almdeleregerar

    arquivosxml,json,csv,excel,hadoopfs,etc.

    Download,InstalaoeConfiguraodoPDIParaaconcretizaodocasepropostonesteartigo,foramutilizadosossoftwares

    PentahoDataIntegration,PentahoSchemaWorkbenchePentahoBusiness

    IntelligenceServer.TodossoexecutadosemmquinasvirtuaisJava,daa

    necessidadedaprviainstalaodoJavaRuntimeEnvironment(JRE)eda

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 18/37

    posteriorinstalaodosdriversJDBCemcadaumadasferramentasPentaho.Os

    caminhosparadownloaddossoftwaresreferidosestodestacadosnaseoLinks.

    Parainiciarasatividades,faaodownloaddaversomaisrecentedoPDIe

    descompacteoarquivo,disponibilizadoemformato.zip.Feitoisto,instalee

    executeoaplicativorealizandoasetapasapresentadasaseguir:

    ParaocasodoOSX,executedentreosarquivosdescompactadosanteriormente,

    oDataIntegration64bitouoDataIntegration32bit

    EmSOsLinux,instaleoJavaRuntimeEnvironment(JRE)comoPathapontando

    paraapasta$JAVA_HOME/bin,digitenoterminalouincluanoetc/profilea

    configuraoexportPATH=$PATH:/usr/java/jdk1.6.0_07/bineentoexecute,

    dentreosarquivosdescompactadosanteriormente,o.\spoon.sh

    CasooSOsejaoWindows,instaleoJavaRuntimeEnvironment(JRE)econfigure

    asvariveisdosistemaJAVA_HOMEePath.Paraisto,acesseoPainelde

    Controle,SistemaeSeguranae,porfim,Sistema.Aoabrirajanela,selecione

    ConfiguraesavanadasdosistemaenaabaAvanado,cliqueemVariveisde

    Ambiente.NasVariveisdosistema,cliqueemNovoe,najanelaNovaVarivelde

    Sistema,emNomedavarivel,digiteJAVA_HOME.EmValordavarivel,

    preenchacomocaminhoparaapastadoJREdasuainstalaodoJava,por

    exemplo:C:\ProgramFiles\Java\jre7.ParafinalizaraconfiguraonoWindows,

    selecionePath,aindaemVariveisdosistema,ecliqueemEditar...,completandoo

    valordePathcomumpontoevrgulaecomocaminhoparaapastajre7\bin.Alm

    disso,acrescenteC:\ProgramFiles\Java\jre7\bineexecute,dentreosarquivos

    descompactadosanteriormente,oSpoon.bat.

    DriversJDBCComoPDIinstaladoeemexecuo,aprimeiratarefaconferirseele,emsua

    configuraoinicial,jpossuiconectividadecomosSGBDRsenvolvidos.NoPDI,a

    conexoaosbancosdedadosfeitaviaJDBC,ecadabancodedadosdeveterum

    driverJDBCcorrespondenteparaele.Dessaforma,bastaqueo.jardodriverJDBC

    sejasalvoemdataintegration\libext\JDBCeoPDIsejareiniciado.

    Paraestecase,emqueutilizadooMySQL,foiutilizadoodrivermysqlconnector

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 19/37

    java5.1.17.jar.OcaminhoparadownloaddestedriverseencontranaseoLinks,

    aofinaldoartigo.

    OrganizaodasETLsOPDIpermitearmazenartodasasETLsembancodedados,entretantoparaisso

    serianecessriaacriaodorepositriodoPentaho.Nestecase,utilizaremosa

    opodesalvarasETLsemarquivos,eparaaorganizaodestas,foicriadauma

    pastachamadaSQLMagazineDW,ondeestesarquivosserosalvos.

    Aolongodestasrie,sercriadoumarquivo.ktrparacadatransformao.Cada

    qualsercompostaporumasriedecomponenteschamadosdesteps,ligados

    entresipormeiodehops,quesoasflechasindicativasdadireodofluxodos

    dados.

    UmatransformaopodeserexecutadaindividualmenteoufazerpartedeumJob,

    quepermiteaexecuodevriastransformaesouatmesmodeoutrosJobsem

    sequncia,armazenadosemarquivos.kjb.

    Tantoosarquivos.ktrquantoos.kjbsogravadosnoformatoXML,sem

    criptografia.

    CriandoaConexoOrigemParaobteracessoaosdadosdabaseorigem,hanecessidadedecriaruma

    conexocomobancodedados.Estaconfiguraofeitaumanicavezea

    conexosercompartilhadaentretodasastransformaes.Istogerauma

    flexibilidademuitogrande,permitindoqueasETLssejamcriadasacessandouma

    basededesenvolvimentoe,depoisdeefetuadosostestes,comumanica

    modificaonestaconfigurao,todasastransformaespassemaapontarparaa

    basededadosdeproduo,porexemplo.Comoobjetivodedemonstraresta

    flexibilidade,sercriadaumatransformaoeumaconexoparaabaseOrigem,

    emMySQL,conformeospassosaseguir:

    1.InicieoPDI,cliquenoconeNewfileparacriarumnovoarquivo,selecione

    TransformationecliquenoconeSalvar

    2.SelecioneapastaSQLMagazineDWesalveatransformaocomonome1

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 20/37

    Testa_Conexoes

    3.NainterfacedoPDI,aoladoesquerdo,temseabarradecomponentes(steps)

    organizadosporcategorias(vejaaNotadoDevMan6).Arrasteparaareade

    programaodoPDIostepTableinput,queficanacategoriaInput,cujafinalidade

    buscardadosviaSQL.Comumduplocliquenostepcriado,abraateladeedio

    NotaDevMan6.Comoacharumobjetonabarradeferramentas

    OPDIpossuiduasabasnoframeesquerdo.Naprimeira,chamadaView,esto

    todososobjetosutilizados,enquantonasegunda,chamadaDesign,esto

    todososcomponentesdisponveisparautilizao.Ambascontamcom,na

    partesuperior,aconveninciadeumcampodebuscapelonomedo

    componente.

    4.Natelaexibidaapartirdarealizaodopassoanterior,cliqueemNew...e

    preenchaoscamposdanovaconexocomosdadosdabasedeOrigem,em

    MySQL,conformeaFigura4

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 21/37

    abririmagememnovajanela

    Figura4.ConexoparaabaseOrigem,emMySQL.

    5.Nasequncia,cliqueemTestparasecertificarqueaconexoestcorretae

    entoemOK

    6.Paracriarautomaticamenteaquerydoselect,necessriaparaarecuperao

    dosdadosreferentesaosvendedores,cliqueemGetSQLselectstatemente,no

    componenteTableinput,selecionecomumduplocliqueatabelavendedor,como

    indicaaFigura5

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 22/37

    Figura5.TabelavendedorselecionadanoDatabaseExplorer.

    7.Superadoopassoanterior,ousuriodeverresponderseguintequesto:Do

    youwanttoincludethefieldnamesintheSQL?CliqueemYesparaqueoPDIgere

    aquerycomosnomesdascolunas,aoinvsdoperigosoSELECT*

    8.Nacontinuidade,cliqueemPrevieweemOKparavisualizarasprimeiras1000

    linhas

    9.Emseguida,cliqueemCloseparafecharoPreview

    10.NaetapaTableinput,emStepname,escrevaumnomequenodeixedvidas

    dasuafuncionalidade,como:Lvendedor

    11.Porfim,cliqueemOKparafecharostepesalveoarquivo.

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 23/37

    CriandoaConexoDestinoComaconexoparaabaseOrigemconfigurada,criarseaconexoparaabase

    destinoconformeasespecificaesaseguir:

    1.ArrasteparaareadeprogramaodoPDIostepTableoutput,queficana

    categoriaOutput

    2.Crieumasetadeligao(hop)entreosdoissteps.Paraisto,cliquenoprimeiro

    step,mantenhaateclaShiftpressionadaearrasteasetaatostepTableoutput,

    talcomosevisualizanaFigura6

    Figura6.Stepsligadosporumhop,queespecificaadireodofluxo.

    3.ComumduplocliqueemTableoutput,quetemafinalidadedepersistiros

    dados,informeemStepnameonometeste

    4.Natelaexibidaapartirdarealizaodopassoanterior,cliqueemNew...e

    preenchaoscamposcomosdadosdeconexodabasedestino,conformeaFigura

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 24/37

    7

    Figura7.ConexoparaabaseDestino,emMySQL.

    5.Nasequncia,cliqueemTestparasecertificarqueaconexoestcorretae

    entoemOK

    6.VoltandoteladeediodostepTableoutput,emTargettable,escreva

    teste

    7.Aindanestatela,cliqueemSQLevisualizeaDDLparacriaodatabela

    chamadatestenobancodestino,comtodososcamposdoresultset

    8.Feitoisso,cliqueemExecuteerecebaamensagemderetornodobancode

    dados,informandoqueatabelatestefoicriadacomsucesso

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 25/37

    9.Emseguida,cliqueemOKefecheostep

    10.Paratestarefetivamenteasconexes,executeatransformaoqueestsendo

    desenvolvida,1Testa_Conexoes,acessandoomenuAction>Run

    11.Superadasestasetapas,atelaapresentadanaFigura8servisualizada,onde

    serpossvel,masnonecessrionestecase,configuraralgunsparmetrosparaa

    suaexecuo

    abririmagememnovajanela

    Figura8.Teladeparmetrosparaexecuodatransformao.

    12.Emseguida,cliqueemLauncheacompanheaexecuo,comoexibidona

    Figura9

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 26/37

    abririmagememnovajanela

    Figura9.Resultadoobtidocomaexecuodoprocessoparatestarasconexes

    comosbancosOrigemeDestino.

    Comisso,aprimeiraETLfoiefetivada.Elabuscadadosdatabelavendedordo

    bancoOrigemeosgravanatabelatestedobancoDestino.Paraverificara

    execuodestatransformao,observeosresultadosobtidosdiretamenteno

    bancodedados.Acorretaexecuodestatransformaocomprovaaeficciado

    driverJDBCdeconexocomoMySQL,dosencodes,daspermissesdobancode

    dadosedarede

    Paraqueasconexescriadaspossamserutilizadasportodasastransformaes,

    noPDI,cliquenaabaViewedepoisemDatabaseConnections.Emcadaumadas

    duasconexescriadas,cliquecomobotodireitoedepoisemShare,comoexpe

    aFigura10.

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 27/37

    Figura10.Conexosendocompartilhada.

    Comasconexescriadas,tornasetransparenteaousuriodoPDIquaissoos

    bancosdedadosmanipulados,poisparaestaferramenta,osdadospodemter

    origenseformatosdiversos.Almdafacilidadedeacessoaosdados,aferramenta

    contacomumalongalistadesteps,cadaqualcomumaatribuiobemespecfica.

    AlgunsdestesstepsexecutamasmesmastarefasqueoscomandosSQL,masnem

    porissooconhecimentodestalinguagemdeixadeserrelevante,poisseuuso

    repercute,muitasvezes,emganhodeprodutividade.

    ConclusoNesteartigoforamabordadososprincipaisconceitosdeBusinessIntelligence,e

    paraexemplificlos,foipropostoocasedeumalojadedepartamentosfictcia,

    formadapordiversasfiliaisecomanecessidadedeanalisarosdadosdesuas

    vendas.Emseguida,foiapresentadaasutePentaho,capazdecontemplaros

    requisitoseregrasdenegcioelencados.Devoltaaoexemplo,abasededados

    Origemfoianalisada,deformaqueoraciocnionecessrioparaamodelagemda

    baseDestino,emformatoestrela,pudesseserdescrito.Porfim,asetapasparaa

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 28/37

    configuraodoPentahoDataIntegrationforamrealizadas.

    Osresultadosdessetrabalhodarosubsdiosparaque,nasegundaeltimaparte

    desteartigo,oprocessodeETLsejacriado,juntamentecomosmetadadosdo

    cubo,suapublicaonoservidorwebeaanlisedosdadosemumaferramenta

    OLAP.

    Links

    DownloaddoPentahoDataIntegrationKettle

    http://sourceforge.net/projects/pentaho/files/DataIntegration/

    DownloaddoPentahoSchemaWorkbench

    http://sourceforge.net/projects/mondrian/files/schema%20workbench/

    DownloaddoPentahoBusinessIntelligenceServer

    http://sourceforge.net/projects/pentaho/files/

    Business%20Intelligence%20Server/

    DownloaddoJavaRuntimeEnvironment

    http://www.java.com/pt_BR/download/

    DownloaddodriverJDBCparaMySQL

    http://dev.mysql.com/downloads/connector/j/

    MondrianSchemaDocumentation

    http://mondrian.pentaho.com/documentation/schema.php

    The38SubsystemsofETLRalphKimball

    http://www.informationweek.com/software

    /businessintelligence/the38subsystemsofetl/54200319

    GrupodeUsuriosPentahoBrasil

    http://br.groups.yahoo.com/group/pentahobr

    Livros

    BOUMAN,RolandDONGEN,Josvan.PentahoSolutions:BusinessIntelligence

    andDataWarehousingwithPentahoandMySQL.Indianpolis:WileyPublishing,

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 29/37

    Gostei(19) (0)

    Oquevocachoudestepost?

    Postardvida/Comentrio

    Inc.,2009.

    EduardoAlvesDeCarvalho

    EspecializadoemAdministraodeDadoseBusinessIntelligence,consultoresciodaeSetorialConsultorias.Atuah20anoscomsistemasdealtadisponibilidadeeh6anoscomasuitePentaho.Site:www.eSetorial.com.brLin[...]

    Todososcomentarios(23)Meuscomentarios

    SabrinaCruzPoderiahavermaisinformaessobreasferramentasdoPentaho.!!!

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoOlSabrina.ComoasuitePentahocontacomvriasferramentas,vouapresentandocadaumadelasconformeoprojetovaievoluindo.NaprximapartedoartigoseroapresentadasoPentahoUserConsole,PentahoAdministatorConsole,PentahoSchemaWorkbencheopluguinOLAPSaikuAnalytics,almdecitaroPentahoAggregateDesigner.AomeuveroPentahoReportDesignercomportaumnovoartigoeapartedecriaodedashboardscomcToolstambm.AguardeembrevenovosartigosaquinaSQLMagazineparacompletarasriesobrePentahoBusinessAnalytics.AbraoEduardoCarvalho

    [h+1ano]Responder

    JacquesMelloParabnspelamatriaetambmaDevMediapelasequenciadematerialligadosETL,DWeBI.

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 30/37

    IroserabordadoscenriosutilizandooKettleparaconstruodoDWounestecenriooDWe

    coletasjexistem.

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoObrigadopeloapoioJacques.OcasedesteartigotrazumtutorialdoprocessocompletodeBIcomPentaho,desdeosrequisitos,modelagemdabaseanalticaeETLsatainstalaodoBIServereacriaoepublicaodocubo.Asegundaeltimapartedesteartigo,queserpublicadanaprximaediodaSQLMagazine,traza"cerejadobolo"quevocespera!

    EleutilizacomoOrigemdosdadosabasegeradanoartigopublicadodaSQLMagazine106,quetalvezlheinteresse,ondeeuapresentoumtutorialparamigraodedadoscomoKettle(PentahoDataIntegration).http://www.devmedia.com.br/migracaodedadosutilizandopentahodataintegrationrevistasqlmagazine106/26712

    Umabrao,EduardoCarvalho

    [h+1ano]Responder

    SevaEngenhariaEletrnicaSaMuitobomoartigo,meusparabns.Agora,euconsigoobancodedadosquevocusounoartigo?Obrigado.

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoBomdia.Obrigadopeloapoio!AsbasesOrigemeDestino,emMySQL,estodisponveisparadownloadnesteartigo,juntamentecomosfontes.Qualquercoisaavise,porfavor.

    Abrao,EduardoAlvesdeCarvalho

    [h+1ano]Responder

    MrcioMoraesDaSilvaEduardo,NoartigofalaqueosarquivosDumpMagazineSetorial.sqleCriaBaseDestino_OLAP.sqlestodisponveisparadownload,masnoosencontrei.Desculpeseeunosouberprocurar,masnoosencontrei.Poderiameajudar?

    [h+1ano]Responder

    WesleyYamazack

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 31/37

    OlMrcio,tudobem?

    Colocamosnotopodessapaginaolinkparadownload,porlvocpoderencontrarosarquivosnecessrios.

    Umabrao

    [h+1ano]Responder

    JooDarciSanchesDeGonzalesParabnsEduardopeloartigo,comcertezaumdosartigosmaiscompletosqueeujvi,eobacanaquevocabordoucomumaleiturabastantesimples...GoodJob..

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoObrigadoJoo!Esperoqueoartigosirvacomostartnosestudosdemuitagente!SeoBIumcaminhosemvolta,porquenopercorreressecaminhocomoOpenSource!?VivaoPentaho!

    [h+1ano]Responder

    NilbonCardosoJuniorBomdia!

    PrezadoEduardo,gostariaquevocmetirasseumadvida,sepossvel,poisestoucomumproblemanestetutorial.estoutravadonaparteondeprecisocolocarobancodedadosdedestinoMySQLAdministrator.oqueestaocorrendoqueoMySQLAdministratornoestarealizandoorestore,simplesmentenoprocessaefalaqueorestorefoirealizadocomsucesso,pormobanconoapareceemmeucatlogoenoficaacessvel...quandodigoqueelenoprocessa,querodizerqueosatributos,NumberofBytesprocessed=0,Elapsedtime=nome,Remainingtime=unknown...

    OBS:tiqueiparaignoraroerro,queindicaque,"ThedumpfilewasnotcreatedbyMySQLAdministratorandcouldcontainunsupportedsyntax.Hencewecannotrestoreitscontent.Youcanoverridethisbehaviorbyenabling"Ignoreerrors"ontheGeneralpage."

    Casoalguemmeajudenessanecessidade,ficareieternamentegrato!Bonsestudosatodos!

    [h+1ano]Responder

    NilbonCardosoJuniorConsegui!

    Oscriptnoestavasendoreconhecidonorestore...casoalguemtenhaomesmoproblema,rodeoscriptnogerenciadordesql,(ToadMySql),ecriedozerocopiandoo

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 32/37

    codigo.

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoOlNilbon.Estranhotertidoproblema,poisoarquivoumscriptdoERwineapenascriaaestruturadobancodestino.NotemStoredProcedures,TriggersouFuctions,masmesmoassimoproblemapodeterocorridopelosdelimitadores,quenoestoexplicitadosnoarquivoquecriaabasedestino.Issopodedarproblemadependendodoclientutilizado,voctemrazo.BoaatuadicadoToad.ParamimomelhorclientSQLdomercado,tambmparaOracleeSQLServer.Notrabalhosemeleamuitosanos!

    Umabrao,EduardoCarvalho

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoOlNilbon.Estranhotertidoproblema,poisoarquivoumscriptdoERwineapenascriaaestruturadobancodestino.NotemStoredProcedures,TriggersouFuctions,masmesmoassimoproblemapodeterocorridopelosdelimitadores,quenoestoexplicitadosnoarquivoquecriaabasedestino.Issopodedarproblemadependendodoclientutilizado,voctemrazo.BoaatuadicadoToad.ParamimomelhorclientSQLdomercado,tambmparaOracleeSQLServer.Notrabalhosemeleamuitosanos!

    Umabrao,EduardoCarvalho

    [h+1ano]Responder

    YuriMatelliCalazansLuzBoatardeEduardo.

    Primeiroparabnspeloartigo!DepoisdanossaconversaacabeiporassinaraSQLMagazine,erealmentevaleumuitopena.

    Agorasobreoartigo:ImplementeiessemodelonoSaiku,comumpoucodeconhecimentoquetenhonadescriodoXML(Mondrian).Agorafiqueicomumadvida..Eseumanotafiscalfizesserefernciaamaisdeumproduto?SegundoassugestesdoKimballparaessarelaoteramosumanovatabela(dim_produto_bridge),quemandariasuachaveprimriacomochaveestrangeiraparaafatoereceberiacomochaveestrangeiraoidentificadordatabeladeproduto.

    SabecomoeuconsigofazercomqueoModrianreconheaessaestrutura?Ouvoctemumasugestomelhor?

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 33/37

    Abrao.

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoGrandeYuri!Bacanaquesemotivoucomarevistaeobrigadopeloapoio.Asituaoquevocdescreveuexatamenteamesmaqueesteartigotrataeadvidabemcomum.Achavedaquestodefinirqualoaseranalisado,quenestecasoo,noaemsi.Reparequetemosumadimensoapenasparaanotafiscal.Novejomotivosparafugirmosdonossousualmodeloestrela.Omaissimples,normalmenteomaisindicado!Comositensnafato,imaginoquevocconsigacomputartodoonecessrio.Podemoscontinuaresteassunto,meucaro!Voctemmeuskype.

    Umforteabrao,EduardoCarvalho

    [h+1ano]Responder

    YuriMatelliCalazansLuzOpa,valeuEduardo!

    Desculpa,masmeconfundiaoescreverocomentrioacima.Tudobem,afatovocmodeloudeformaquefosseanalisadoum,masesevocsoubessequeumanotapoderiaestarassociadaamaisdeumvendedor(almdeestarassociadaamaisdeumproduto)?

    Suasugestoseriapensarnuma"bridge"(aquelatabelaauxiliar)paraosvendedoresouemmaisumatabelafato?Seasadaforem2tabelasfatonoachaqueseriammuitosdadosredundantes?

    Abrao

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoAhentendioproblema.Vocjestumpassoadiante!umaquestodenegciotambm.Sepudermosdefinirumaquantidadedevendedoresquenormalmentevinculadaaumacompra(eseriarelevante)seriaoideal.Manteramosoesquemaestrelacom3FKsdevendedornafato,porexemplo.Agora,sevocrealmenteprecisadatabelinhadebridge,parafazerummanytomany,notemproblema!Parausarmososnowflake,necessrioummapeamentoespecfico,quevocpodeentendermelhorcomadocumentaodoMondrianhttp://mondrian.pentaho.com/documentation/schema.php#Star_schemas.

    AproveitoparaconvidloaparticipardogrupodeusuriosPentaho.Comcertezavoc

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 34/37

    vaiencontrarmuitaajudal!http://br.groups.yahoo.com/group/pentahobr/

    Novejocomomaisdeumafatovajudar.Semteranalisadomuitooproblema,acreditoqueeumodelariaessaquestocomummodeloestrelanormalcomumafksparavendedor.Seporacasotivermaisdeum,criariasemaisdeumregistro,cadaumapontandoparaoseuvendedor.Issoexigiriaumtrabalhomaiorparadefinirasmedidas,poisteramosexpressescom"distinct".Pense,tenteesedivirta!Tenhocertezaquevaiatingirbonsresultados.Qualquercoisaavise!Umabrao,EduardoCarvalho

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoOteumanytomanyafato.Usaumaestrelanormalepronto.Abrao

    [h+1ano]Responder

    YuriMatelliCalazansLuzGrandeEduardo,valeu!

    Voupensaremtudoquemeescreveuemecadastrarnessegrupo.

    Obrigadopelasdicas!

    Abrao.

    [h+1ano]Responder

    TiagoAugustoFigueiredoBoatarde,noexemplodoartigobancousadoparaoLoadfoiomySql?ParaperformanceosbancosBigDataseriamaisrecomendvel?

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalhoOiTiago.Ocasetratadaleituradedadostransacionais,dasnotasfiscaisdasvendasdeumaempresa.NoentendocomoaplicarBigDataajudaria,massevocquiserlerdadosemformatoBigData,utilizeoPDIesedivirta!

    Umabrao,EduardoCarvalho

    [h+1ano]Responder

    [autor]EduardoAlvesDeCarvalho

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 35/37

    http://siliconangle.com/blog/2013/10/28/pentahosetsbigdataprioritiesfor2014/

    [h+1ano]Responder

    Servios

    Incluaumcomentrio

    AdicionaraosFavoritos

    Marcarcomolido/assistido

    Incluiranotaopessoal

    Versoparaimpresso

    +SQL

    Mais postsVideo aula

    Terceira Forma Normal - Curso Modelagem de Dados - Aula26

    Video aula

    Aplicaes da Segunda Forma Normal - Curso Modelagem deDados - Aula 25

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 36/37

    Video aula

    Segunda Forma Normal - Curso Modelagem de Dados - Aula24

    Video aula

    Primeira Forma Normal - Curso Modelagem de Dados - Aula23

    Video aula

    Normalizao e Anomalias - Curso Modelagem de Dados -Aula 22

    Video aula

    Dependncias Funcionais - Curso Modelagem de Dados -Aula 21

    Video aula

    MySQL Administrador - Curso Completo de MySQL - Aula 16

    Video aula

    Ferramentas e Utilitrios - Curso Completo de MySQL - Aula15

    Video aula

    Mais sobre o Prompt de Comando - Curso Completo deMySQL - Aula 14

    Listar mais contedo

  • 08/04/2015 TrabalhandocomBusinessIntelligenceParte1RevistaSQLMagazine111

    http://www.devmedia.com.br/trabalhandocombusinessintelligenceparte1revistasqlmagazine111/27855 37/37

    Anuncie | Loja | Publique | Assine | Faleconosco

    HospedagemwebporPorta80WebHosting

    DevMediaVoccurtiuisso.

    Voceoutras63.895pessoascurtiramDevMedia.

    PluginsocialdoFacebook

    Curtir