BI Server 3.10 CE é 99% igual à EE!

Quer dizer, quase tudo.

Foi assim: eu estava traduzindo a interface da 3.10 para português – nem toda ela vem pronta “de fábrica” – e precisei debugar algumas páginas, scripts etc. No meio do script launch.jsp eu encontrei o seguinte:

hasAnalyzer = pluginManager.getRegisteredPlugins().contains(“analyzer”);
hasIteractiveReporting = pluginManager.getRegisteredPlugins().contains(“pentaho-interactive-reporting”);
hasDashboards = pluginManager.getRegisteredPlugins().contains(“dashboards”);

isCE = !hasAnalyzer && !hasIteractiveReporting && !hasDashboards;

Eu olhei aquilo mas não entendi, de cara, a implicação da última igualdade. Assim que meu cérebro entendeu o código como uma frase em inglês, fez sentido: éCE = NÃO (Tem Analyzer) E NÃO (Tem IR) E NÃO(Tem Dashboards).

Isso mesmo: o BI Server É Community Edition se NÃO TEM (plugins da EE.) Leia ao contrário: se o BI Server não tem plugins da EE, então ele é CE. A única diferença – APARENTEMENTE!!! – entre as duas versões 3.10 é a existência dos plugins de visualização de dados! Engine, arquitetura etc. aparentemente é o mesmo. Talvez tenha alguma classe a mais, algum outro componente liberado (como clusterização, sei lá), mas ainda continua sendo praticamente o mesmo produto.

Para aqueles que sempre disseram que a Pentaho tem dois produtos, um CE e um EE, fica aqui a dica: eu nunca vi evidência que suportasse essa presunção. Muito pelo contrário. Eu acabei de achar uma evidência que suporta o que eu sempre disse: a única diferença entre os BI Servers são as coisas “a mais” que a Pentaho põe, mas nada a menos.

E só para constar: eu tive oportunidade de conversar com um engenheiro da Pentaho em maio deste ano, e perguntei isso a ele. A resposta dele bate com o que eu pus aqui: exceto por um ou outro plugin, e alguma facilidade maior na administração, são o mesmo produto. Mas até ai ele poderia estar vendendo o peixe da empresa.

Sabe, eu bem que podia bater o binário dos dois… Tipo, o compilado. Dá para fazer sem virar um inferno…

Hmm…

Ouro Escondido em Dados

Eu continuo lendo o tijolo Data Mining Techniques e mais empolgado a cada página. Ontem eu passei pelo texto abaixo:

Interviewing business experts is another good way to get started. Because people on the business side may not be fmiliar with data mining; they may not understand how to act on the results. By explaining the value of data mining to an organization, such interviews provide a forum for two-way coommunication. One of the authors once participated in a series of meetings at a telecommunications company to discuss the value of analyzing call detail records (records of completed calls made by each cstomer). During one meeting, the participants were slow in understanding how this could be useful. Then, a colleague pointed out that lurking inside their data was information on which customers used fax machines at home (the deteails of the resulting project are discussed in Chapter 16 on link analysis). This observation got the participants thinking. Click! Fax machine usage would be a good indicator of who was working from home. For the work-at-home crowd, the company already had a product bundle tailored for their needs. However, without prodding from the people who understood the data and the techniques, this marketing group would never have considered searching through data to find a worh-at-home crowd. Joining the technical andthe business highlighted a very valuable opportunity.

TIP: When talking to business users about data mining opportunities, make sure they focus on the business problems and not on technology and algorithms. Let the technical experts focus on the technology and let the business experts focus on the business.

Levaria muito tempo para traduzir tudo, mas resumidamente o que ele diz é que Data Mining não é um jogo só de técnicos nem só de analistas de negócio, mas dos dois. Mais ainda: não é um projeto de balcão! É preciso que todos envolvidos com o negócio da empresa sejam ensinados sobre o que é Data Mining, como ele funciona, o que ele pode fazer, e sobre os dados que a empresa dispõe.

Projetos de Data Mining não são caixa-preta. Muito pelo contrário, precisam ser divulgados, compartilhados e abraçados por todos na empresa.

Ele dá um exemplo: como especialista em Data Mining, ele colocou o pessoal de marketing para conversar com pessoal técnico sobre o valor do CDR, o Call Detail Record, ou registro detalhado de chamada, que é o registro gerado a cada ligação completada em uma central, e serve para fazer o billing do cliente. A certa altura, alguém lembrou que o CDR guarda a informação sobre que cliente usa máquina de fax em casa. Click! (sic) Quem usa muito fax em casa provavelmente tem home office, e a tal companhia tinha um pacote pronto para esse público!

Mais que tirar relatórios, responder perguntas e montar dashboards, Business Intelligence é sobre melhorar a gestão e os resultados da empresa a partir da montanha de dados que ela gera. Esse livro fala sobre isso: como BI/Data Mining pode mudar sua empresa para ser realmente centrada no cliente e com isso crescer.

Se quiserem aprender sobre BI, leiam esse livro. Ele é imprescindível para sua formação como analista de BI. Meu post Não é Bem Assim era exatamente sobre o que ele fala: usar o conhecimento extraído dos dados para ajudar a empresa a crescer. Eu voltei ao mesmo tema no post O Andar  Bêbado do Negócio tentando mostrar um exemplo, mas o que eu coloquei aqui, tirado do livro, é matador.

A mensagem é essa: construa sua infra/solução de BI mantendo o olho em Data Mining. É daí que virá o verdadeiro ouro que seus dados escondem.

BI em Tempo Real

Eu li um post sobre o perigo de se usar informações de sistemas transacionais para estabelecer a estratégia da organização, e achei muito legal. Inspirado por ele, e por sua coragem em chamar essa atitude de BD – Business Dumbness, hehe – eu resolvi compartilhar aqui minha opinião sobre outra dessas variações, na minha opinião, perigosas.

O que é Inteligência de Negócio? (De novo, não!!)

Definir BI é o mesmo que definir Deus: cada um tem a sua definição particular, pessoal e intransferível. Ocasionalmente, algumas pessoas concordam sobre entre si, mas é apenas uma coincidência – a quantidade de conceitos e definições é vasta, se não infinita. Um desses conceitos do mundo de BI é “Tempo Real,” que é “o BI feito em tempo real”, enquanto tudo está acontecendo. De cara: na minha cartilha, isso não existe.

Primeiro: a expressão “o BI feito em tempo real” carece de significado.

Como assim “BI feito”?? Inteligência de Negócio é uma disciplina de administração, não um tipo de BIscoito! Vamos postular que quem diz isso pretendia dizer algo como “são os relatórios e análises feitas sobre dados que estão entrando no DW em tempo real.” Já soa mais inteligível e possui algum significado.

Segundo: o que é que você conclui do lançamento de uma moeda?

Vou colocar de outra forma: você quer descobrir qual é a chance de, quando se joga uma moeda para cima e a deixamos cair no chão, a face da cara estar para cima. Beleza? Esse é o seu problema de negócio: estimar quando vai sair cara no lançamento de uma moeda. Volte à pergunta: que conclusão você chega se analisar o último lançamento, apenas? E os dois últimos? A partir de quantos lançamentos você pode ter segurança para afirmar que cara e coroa saem com a mesma proporção em lançamentos de moedas normais?

Não sei se ficou clara a questão: não se obtém nenhum ou quase nenhum conhecimento sobre o negócio analisando-se os dados que estão entrando agora, neste momento, enquanto as coisas estão acontecendo. Para entender o negócio você precisa de histórico, precisa ter passado pelos acontecimentos que afetam seu negócio. Não há praticamente nenhuma informação a ser tirada das vendas do último segundo, do último minuto, hora, dia. Eu não tenho uma prova matemática, mas você deve concordar comigo que essa é uma possibilidade razoável.

Case: Venda de Jogos de Celular

Em uma das turmas de Pentaho que eu ministrei na 4Linux eu tive um aluno de uma empresa que desenvolve jogos para celular. Seus jogos são vendidos online, num modelo comercial comum o bastante hoje em dia para dispensar uma explicação aqui.

Esse aluno colocou exatamente essa questão: ele disse que sua empresa precisava de BI Real Time (coincidência: BI RT) porque eles precisavam saber o que estava acontecendo para poder aproveitar as oportunidades. Oportunidades como oferecer um desconto-relâmpago em um jogo que está começando a gerar um volume de vendas razoável, e precipitar mais vendas ao baixar o preço.

Minha resposta foi: e como é que você sabe quando agir? Ele, o meu aluno, só conseguiria descobrir que uma oportunidade apareceu se ele conhecer o padrão de uma oportunidade. Sem entender o que os dados significam, ele continua sem saber nada! Para que ele possa montar uma monitoração em tempo real (o que não é só fazer um relatório) e com ela buscar sinais de oportunidades surgentes, ele precisa primeiro entender o que é uma oportunidade e como ela se manifesta. Ou seja, ele precisa rodar um projeto de Data Mining sobre uma base histórica e descobrir o padrão a ser buscado.

Conclusão

Como diria o padre Quevedo, “BI em tempo real non ecsiste!” Claro, essa é a minha opinião. Pode ser que amanhã eu perceba que estava errado sobre BI RT e tenha que rever esse post, mas até onde eu consigo ver, não há muita informação a ser extraída da análise em tempo real (ainda mais porque depois de um dia a informação ficou mais precisa e já não é mais tempo real.)

Até esse dia chegar, eu continuo acreditando que informação sobre o negócio depende de possuir dados analisáveis, e isso só se obtém acumulando histórico em um DW.

Monitorar o sistema transacional em tempo real, buscando micro-eventos que denotem oportunidades instantâneas é uma grande e poderosa idéia. Saber o que buscar, porém, não há como ser feito em tempo real, por definição.

É isso.

Definição de Dashboard

Um dashboard é uma exibição da informação que é a mais importante e necessária para atingir um ou mais objetivos, consolidada e arrumada em uma única tela tal que a informação possa ser monitorada em um relance.

Essa é a definição que Stephen Few dá no livro Information Dashboard Design. O original diz o seguinte:

A dashboard is a visual display of the most important information needed to achieve one or more objectives; consolidated and arranged on a single screen so the information can be monitored at a glance.

Ele publicou isso pela primeira vez na Intelligent Enterprise Magazine, em 17 de março de 2004 (às 14H00min, hehe.)

O mais legal é que ele chegou nessa definição depois de analisar vários exemplos. Ou seja, ao invés de postular o que deve ser um painel de instrumentos de BI e procurar evidências de que ele está correto, ele analisou vários painéis, sob vários assuntos e feito por várias empresas (desde fornecedores aos próprios clientes) e só então sumariou o que viu na definição acima.

Bom, eu não sou ninguém nessa área, como são nossos amigos Pedro Alves e Caio Moreno, mas eu concordo com ele. Primeiro porque ele interpretou o uso dado à tecnologia, capturando a realidade. Segundo, porque a função de um painel de instrumentos é, de uma olhada, captar o estado da máquina e decidir ou não pela ação (e eventualmente qual.)

E qual é a importância disso? Toda e nenhuma (Edu, essa foi por você! ;-) )

Toda, porque se alguém hoje me perguntar “o que é um dashboard?” eu vou saber responder, com uma definição sensata, prática e útil.

Nenhuma, porque se alguém decidir construir um dashboard “analítico”, do tipo que é clicável até na linha de status, que faz tudo e mostra tudo, é polimórfico, animado e tem som, ele vai construir. Quem decidir fazer qualquer coisa que não sirva para, em um relance, assimilar a informação necessária para atingir um ou mais objetivos, vai fazer. O que fica é a sempre a pergunta: serviu ao seu cliente? Entregou o que ele pediu, foi o que você prometeu? Se sim, então as palavras do sr. Few são apenas cócegas no hipotálamo (você já sentiu cócegas lá? Não? Sim? Fez diferença?) ;-)

É isso. Acabou minha hora de almoço. Vamos lá!

Treinamento SpagoBI 4Linux

O treinamento acabou semana passada, mas eu só tive tempo de retomar esse post (que começou com o treinamento) agora.

Muitas coisas novas e principalmente uma nova visão do SpagoBI.

What is in a name?

Antes de mais nada, o nome: spago é italiano para cordão, barbante, e é a metáfora usada pela Engineering para o conceito de integração de software livre para criação de soluções complexas. Mais ou menos a mesma coisa que eu prego neste post do meu outro blog, Solução em Aberto. Vem daí, eu acredito, a palavra que descreve o macarrão fino e comprido – spagetti.

Logo, SpagoBI não tenta evocar a Itália com a estilização de uma palavra famosa mundialmente (era o que eu pensava), mas sim especificar a parte da visão de integração da Engineering para BI!

Acredite se quiser, isso simplificou muito a compreensão do SpagoBI.

O que é o SpagoBI?

SpagoBI é uma plataforma de integração de componentes, que reúne componentes externos mas também traz componentes criados pela equipe da SpagoBI, como GIS e Real Time BI.

Do começo: ele não é uma suite de BI nos mesmos moldes do Pentaho. Ele é uma ferramenta de construção de soluções de visualização de dados, voltada para facilidade de integração. Ele não inclui, por exemplo, uma ferramenta de ETL. Para quaisquer necessidades de ETL, a Engineering recomenda o uso do Talend. Entre outras coisas (como um relacionamento comercial significativo na Itália), o SpagoBI Server possui a capacidade de rodar jobs Talend. Como disse o Andreas, SpagoBI é ETL-agnostic.

Todas as suas funcionalidades são pensadas para ajudar o provedor de serviços e soluções (que pode ser um integrador ou um departamento da sua empresa) a criar a funcionalidade de visualização de dados que você precisa.

Como funciona?

Grosso modo, o SpagoBI amarra um metamodelo – criado com o SpagoStudio – a um recurso chamado Analytical Driver e disponibiliza relatórios e ferramentas de relatórios ad-hoc via web, com controle de acesso por usuário e papel.

O metamodelo é um mapeamento da camada física de um banco de dados em uma camada lógica, de apresentação, e é feito no SpagoStudio, um Eclipse especialista. O metamodelo absorve toda complexidade do relacionamento entre os dados, simplificando a criação de relatório e integrando-se completamente ao Analytical Drivers.

Analytical Drive é a combinação de papéis com filtros de exibição. O desenvolvedor deve criar os ADs que atendem a comunidade de usuários da empresa e associá-los a cada recurso disponibilizado (relatório, gráfico etc.) Boa parte do curso foi dedicado a explorar a flexibilidade e o poder desse recurso.

A maioria dos relatórios pode ser criada com a ferramenta de relatórios ad-hoc via web do SpagoBI, que é muito boa e tem capacidade de criar relatório sofisticados, com uso de gráficos, subrelatórios etc. Se relatórios mais complexos forem necessários, o SpagoStudio traz embutido o BIRT. BIRT é uma ferramenta de relatórios open source muito flexível e poderosa, que foi pensada para o mundo web. Como reflexo desse direcionamento, por exemplo, é possível embutir códigos JavaScript no relatório, e fazê-lo muito mais versátil – uma coisa mais difícil com outros geradores de relatório, como o Jasper Reports e o Pentaho Report Designer.

Diferenças

Uma pergunta que foi feita logo de saída, e não foi por mim (hehe), é “qual é a principal diferença entre Spago e Pentaho.” Segundo Andrea, é o business model: o SpagoBI tem apenas uma versão, a comunitária, e usa-a para tudo, já que a Engineering foca em vender serviço com a ferramenta, e não a ferramenta. A suite Pentaho, por outro lado vêm em duas versões: comunitária, gratuita, e corporativa, paga – justamente porque a Pentaho Corp. vive de vender suporte e licença. Apesar de versão comunitária Pentaho ser completa e fazer tudo que a corporativa faz, essa faz as mesmas coisas com um acabamento bem melhor.

Na verdade, os outros fornecedores de ferramentas de BI – Pentaho, Jasper, Talend etc. – vendem ferramenta, e nesse ponto são todos diferente do SpagoBI.

Conclusão

O SpagoBI é uma grande ferramenta, com muitos recursos, pensado para criação e integração de soluções de BI. Ele tem uma curva de aprendizado mais inclinada, e demanda um certo acúmulo inicial de conhecimento, mas depois dessa etapa – que ainda assim é acessível ao autodidata – ela se torna muito produtiva.

A principal vantagem do SpagoBI, na minha opinião, é que ele está sendo trazido ao Brasil pelo maior nome do mercado de software livre: a 4Linux.

Eu sou suspeito para falar deles (sou um grande fã da empresa), mas é notória a qualidade de seus cursos e impressionante sua lista de clientes – EMBRAER, Ministério da Educação, Casa da Moeda, EDS, Caixa Econômica Federal e Banco Votorantim para citar os que aparecem no site.