palestra pentaho multi tenancy - pentaho day 2014

28
1 [Projeto B.I – Grupo Sage] Pentaho CE Multi Tenancy

Upload: vinicius-elyseu

Post on 21-Nov-2014

1.220 views

Category:

Business


10 download

DESCRIPTION

Palestra Pentaho Day 2014 - Universidade de São Paulo

TRANSCRIPT

  • 1. 1 [Projeto B.I Grupo Sage] Pentaho CE Multi Tenancy
  • 2. l 2/28 Agenda l Apresentao Pessoal/Profissional l Conceito/Ideia Multi Tenancy l Case Grupo Sage Pentaho Multi Tenancy l Resultados
  • 3. Apresentao Pessoal e Profissional Vinicius Alexandre Elyseu 24 anos - Curitiba PR. Formao - Sistemas de Informao (Universidade Positivo 2011 Curitiba PR). - MBA Business Intelligence (Universidade Positivo 2014 Curitiba PR). Experincias Profissionais - Grupo Sage: EBS Sistemas Analista de Sistemas/B.I - Grupo Positivo: Tecnologia Educacional Desenvolvedor - Grupo Barigui: Barigui Financeira Analista de Sistemas Demais Experincias/Projetos - Blog: pentahobrazil.wordpress.com.br - Curso de B.I: Pentaho Ambiente Livre - Central do Jogo: www.centraldojogo.com.br - Entre outros l 3/28
  • 4. Apresentao Grupo Sage O Grupo Sage uma multinacional, lder mundial no desenvolvimento e comercializao de Software de Gesto para Pequenas e Mdias Empresas (PME). Conta com mais de 6 milhes de clientes em todo o Mundo. l 4/28 Grupo Sage Brasil: Formado pela juno de trs grandes empresas EBS Sistemas IOB FOLHAMATIC Principais Segmentos: Contbil ERP Consultoria Tributria Mais de 40.000 mil clientes
  • 5. Case Grupo Sage Situao O software possui a mesma estrutura de tabelas e cada instalao realizada no prprio servidor do cliente. Para implantar o B.I em cada servidor precisaramos instalar a ferramenta de B.I, banco de dados e outros requisitos. Porm utilizando esse formato de projeto a implantao seria longa e muitas vezes invivel. l 5/28 O objetivo do Grupo Sage implantar B.I em um software ERP existente onde mais de 800 clientes j o utilizam. CARACTERSTICA PRINCIPAL: Todo processo deve estar automatizado. COMO FAZER ISTO DE MANEIRA GIL E COM BAIXO CUSTO? Projeto em parceria
  • 6. Conceito Multi Tenancy O Conceito multi-tenancy vem de princpios da arquitetura de software, a fim de padronizar, otimizar e minimizar estruturas e ideias. A ideia do conceito ter um nico Servidor de B.I servindo diversos clientes. l 6/28 UTILIZANDO O CONCEITO MULTI-TENANCY (Multi-Inquilinos/Clientes)
  • 7. Conceito Multi Tenancy Multi-Tenancy: Multi-Inquilinos Os Clientes utilizam a mesma: Aplicao Sistema operacional Hardware Banco de dados. Porm de maneira que um usurio de um Tenant no possa ver ou alterar os dados de outros Tenants. l 7/28
  • 8. Pentaho Multi Tenancy Infraestrutura Utilizada O Grupo Sage possui dois servidores externos em Nuvem na Amazon. 1- Servidor de Aplicao (WebService - Windows). 2- Servidor de B.I (Pentaho e MySQL - Linux). l 8/28 SERVIDORES
  • 9. Pentaho Multi Tenancy Servidor B.I Banco de Dados l 9/28 Cada cliente ter o seu Datawarehouse em um database (MySQL) com seu cdigo de identificao que o Cdigo do Cliente. COMO O SERVIDOR DE BI VAI DIFERENCIAR OS DADOS DE CADA CLIENTE?
  • 10. Pentaho Multi Tenancy Envio dos dados do Cliente Servidor do Cliente: Roda um processo de ETL (Kettle) que gera arquivos CSV (Ex: 10123-clientes.csv) com os dados do BD do Cliente. Processo feito quando o cliente habilita/compra o B.I Aps a gerao dos arquivos, o Kettle os envia para o Servidor de Aplicao atravs de um WebService (utiliza a mesma porta do HTTP). O Servidor de Aplicao roda um processo de ETL (Kettle) de 15 em 15 minutos que l os arquivos CSV, identifica qual o cliente atravs do nome do arquivo, cria o datawarehouse do cliente, se necessrio, e insere os dados do cliente no Servidor de B.I. l 10/28 MAS COMO OS DADOS SERO ENVIADOS A ESTE SERVIDOR?
  • 11. Funcionamento/Estrutura Multi Tenancy Servidor do B.I (Pentaho e MySQL): Responsvel por administrar o Pentaho e o Banco de dados. Servidor de aplicao (WebService): Responsvel por receber os dados e enviar via ETL (Kettle) para o banco de dados no Servidor do B.I. l 11/28
  • 12. Pentaho Multi Tenancy Processo Kettle (Servidor Aplicao) l 12/28 De 15 em 15 minutos roda o processo ETL (Kettle) no Servidor de aplicao Recebe parmetro de Cdigo do Cliente atravs do nome do arquivo Cria o DatawareHouse no MySQL Cria as configuraes do DW no HSQLDB Datawarehouse_CodCliente
  • 13. Pentaho Multi Tenancy Processo Criao DW PAC l 13/28
  • 14. Pentaho Multi Tenancy Criao de Usurios no HSQLDB Criao automatizada dos usurios para integrao: USER@CODCLIENTE no Banco de dados HSQLDB (InMemory) do Pentaho l 14/28
  • 15. Pentaho Multi Tenancy Criao de Usurios no HSQLDB l 15/28
  • 16. Pentaho Multi Tenancy Cache do Hibernate Aps a criao/atualizao dos usurios pelo Kettle, subentende-se que o usurio j poder acessar o sistema com seu login, porm o Pentaho tem um cache que s pega novos usurios quando o servidor do pentaho reiniciado. Para solucionar este problema, temos que desabilitar o cache do Hibernate. Para desabilitar o mesmo: ir at o arquivo applicationContext-spring-security-hibernate.xml que no meu caso fica no diretrio C:optpentahobiserver-cepentaho-solutionssystem e adicionar uma nova propriedade dentro da tag XML: e aps a ltima l 16/28
  • 17. Pentaho Multi Tenancy Cache do Hibernate l 17/28 Vale lembrar que esta situao s acontece para verses inferiores a 5.0. Quem utiliza superior ou igual a 5.0 no precisa fazer esta customizao
  • 18. Pentaho Multi Tenancy Acesso Clientes l 18/28
  • 19. Pentaho Multi Tenancy Desabilitar Cache CDA l 19/28 Em todos os DataSources, alterar a propriedade Cache para false, devido a inexistncia de suporte do cache do CDA ao Multi-Tenancy
  • 20. l 20/28 MAS COMO O PENTAHO VAI BUSCAR E MOSTRAR OS DADOS CORRETOS PARA O USURIO AUTENTICADO ? Pentaho Multi Tenancy Diferenciao dos dados
  • 21. Pentaho Multi Tenancy Customizaes no Servidor do B.I Para que seja possvel utilizar a estrutura de acessos com o conceito Mutli Tenancy, necessrio mudar o cdigo de um arquivo. Editar o arquivo pentahoObjects.sprint.xml que fica no diretrio do /pentaho/biserver-ce/pentaho-solutions/system/ com as seguintes alteraes: Localizar a tag , coment-la ou retir-la. l 21/28
  • 22. Pentaho Multi Tenancy Customizaes no Servidor do B.I Adicionar o seguinte cdigo: (TENANT) (PAC) (USURIO@BASE PUC) (CONSIDERA DIREITA DO @) l 22/28
  • 23. Pentaho Multi Tenancy Visualizao aps Autenticao utilizando CST l 23/28
  • 24. Pentaho Multi Tenancy Visualizao aps Autenticao utilizando CST l 24/28 Vale lembrar que todas as ferramentas do Pentaho Server estaro disponveis para os clientes utilizarem respeitando o conceito Multi- Tenancy. -> OLAP (SAIKU, Jpivot, etc) -> Reporter (PRD, SAIKU Report, etc) -> MetaDados (PME, etc) -> Dashboards (Ctools, etc)
  • 25. Custo - Baixo nmero de servidores; Consequentemente: nmero de licenas de S.O e nmero de SGDB reduzido; Agilidade - Estrutura de implantao nos clientes genrica; - Fcil implantao nos clientes; - Projeto de curto/mdio prazo; - Manuteno no Servidor de B.I gil porque s existe uma estrutura Mobilidade Pentaho Multi Tenancy Vantagens e Benefcios - Pode acessar de qualquer dispositivo que tenha conexo a internet; l 25/28
  • 26. Manuteno -Se acontecer algum problema no Servidor de B.I, como a estrutura nica, ir afetar todos os clientes; -Complexidade em controlar a troca de informaes do Cliente x Servidor; Customizao - No customizvel por cliente devido ter a mesma estrutura para todos; (DashBoards pr-definidos); Pentaho Multi Tenancy Desvantagens l 26/28
  • 27. Pentaho Multi Tenancy Custo aproximado Recursos e Custo l Tempo de projeto: 4 meses l Custo por Servidor Externo (mdia mensal): Amazon m1.large l $180 x 2 = $360 x 2.20 = R$ 792,00 l Homens ms: Um analista de B.I (Mdia R$ 5.000,00) l Curso e consultoria: R$ 225,00/h (Se necessrio) l 27/28
  • 28. Pentaho Multi Tenancy Contato Dvidas e/ou Sugestes? Obrigado, Vinicius Alexandre Elyseu l 28/28 Contato: [email protected] (41) 9993-4377 Blog: pentahobrazil.wordpress.com.br