Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Palestra Pentaho Multi Tenancy - Pentaho Day 2014

Palestra Pentaho Day 2014 - Universidade de São Paulo

Related Books

Free with a 30 day trial from Scribd

See all

Palestra Pentaho Multi Tenancy - Pentaho Day 2014

  1. 1. 1 [Projeto B.I – Grupo Sage] Pentaho CE Multi Tenancy
  2. 2. l 2/28 Agenda l Apresentação Pessoal/Profissional l Conceito/Ideia Multi Tenancy l Case Grupo Sage – Pentaho Multi Tenancy l Resultados
  3. 3. Apresentação Pessoal e Profissional Vinicius Alexandre Elyseu 24 anos - Curitiba – PR. Formação - Sistemas de Informação (Universidade Positivo – 2011 – Curitiba PR). - MBA Business Intelligence (Universidade Positivo – 2014 – Curitiba PR). Experiências Profissionais - Grupo Sage: EBS Sistemas – Analista de Sistemas/B.I - Grupo Positivo: Tecnologia Educacional – Desenvolvedor - Grupo Barigui: Barigui Financeira – Analista de Sistemas Demais Experiências/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. 4. Apresentação Grupo Sage O Grupo Sage é uma multinacional, líder mundial no desenvolvimento e comercialização de Software de Gestão para Pequenas e Médias Empresas (PME). Conta com mais de 6 milhões de clientes em todo o Mundo. l 4/28 Grupo Sage Brasil: Formado pela junção de três grandes empresas EBS Sistemas IOB FOLHAMATIC Principais Segmentos: Contábil ERP Consultoria Tributária Mais de 40.000 mil clientes
  5. 5. Case Grupo Sage Situação O software possui a mesma estrutura de tabelas e cada instalação é realizada no próprio servidor do cliente. Para implantar o B.I em cada servidor precisaríamos instalar a ferramenta de B.I, banco de dados e outros requisitos. Porém utilizando esse formato de projeto a implantação seria longa e muitas vezes inviável. l 5/28 O objetivo do Grupo Sage é implantar B.I em um software ERP existente onde mais de 800 clientes já o utilizam. CARACTERÍSTICA PRINCIPAL: Todo processo deve estar automatizado. COMO FAZER ISTO DE MANEIRA ÁGIL E COM BAIXO CUSTO? Projeto em parceria
  6. 6. Conceito Multi Tenancy O Conceito multi-tenancy vem de princípios 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. 7. Conceito Multi Tenancy Multi-Tenancy: Multi-Inquilinos Os Clientes utilizam a mesma: → Aplicação → Sistema operacional → Hardware → Banco de dados. Porém de maneira que um usuário de um “Tenant” não possa ver ou alterar os dados de outros “Tenants”. l 7/28
  8. 8. Pentaho Multi Tenancy Infraestrutura Utilizada O Grupo Sage possui dois servidores externos em Nuvem na Amazon. 1- Servidor de Aplicação (WebService - Windows). 2- Servidor de B.I (Pentaho e MySQL - Linux). l 8/28 SERVIDORES
  9. 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 código de identificação que é o Código do Cliente. COMO O SERVIDOR DE BI VAI DIFERENCIAR OS DADOS DE CADA CLIENTE?
  10. 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 Após a geração dos arquivos, o Kettle os envia para o Servidor de Aplicação através de um WebService (utiliza a mesma porta do HTTP). O Servidor de Aplicação roda um processo de ETL (Kettle) de 15 em 15 minutos que lê os arquivos CSV, identifica qual o cliente através do nome do arquivo, cria o datawarehouse do cliente, se necessário, e insere os dados do cliente no Servidor de B.I. l 10/28 MAS COMO OS DADOS SERÃO ENVIADOS A ESTE SERVIDOR?
  11. 11. Funcionamento/Estrutura Multi Tenancy Servidor do B.I (Pentaho e MySQL): Responsável por administrar o Pentaho e o Banco de dados. Servidor de aplicação (WebService): Responsável por receber os dados e enviar via ETL (Kettle) para o banco de dados no Servidor do B.I. l 11/28
  12. 12. Pentaho Multi Tenancy Processo Kettle (Servidor Aplicação) l 12/28 De 15 em 15 minutos roda o processo ETL (Kettle) no Servidor de aplicação Recebe parâmetro de Código do Cliente através do nome do arquivo Cria o DatawareHouse no MySQL Cria as configurações do DW no HSQLDB Datawarehouse_CodCliente
  13. 13. Pentaho Multi Tenancy Processo Criação DW PAC l 13/28
  14. 14. Pentaho Multi Tenancy Criação de Usuários no HSQLDB Criação automatizada dos usuários para integração: USER@CODCLIENTE no Banco de dados HSQLDB (InMemory) do Pentaho l 14/28
  15. 15. Pentaho Multi Tenancy Criação de Usuários no HSQLDB l 15/28
  16. 16. Pentaho Multi Tenancy Cache do Hibernate Após a criação/atualização dos usuários pelo Kettle, subentende-se que o usuário já poderá acessar o sistema com seu login, porém o Pentaho tem um cache que só pega novos usuários 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 diretório C:optpentahobiserver-cepentaho-solutionssystem e adicionar uma nova propriedade dentro da tag XML: <property name=”hibernateProperties”> e <props> após a última <prop> l 16/28
  17. 17. Pentaho Multi Tenancy Cache do Hibernate l 17/28 Vale lembrar que esta situação só acontece para versões inferiores a 5.0. Quem utiliza superior ou igual a 5.0 não precisa fazer esta customização
  18. 18. Pentaho Multi Tenancy Acesso Clientes l 18/28
  19. 19. Pentaho Multi Tenancy Desabilitar Cache CDA l 19/28 Em todos os DataSources, alterar a propriedade Cache para false, devido a inexistência de suporte do cache do CDA ao Multi-Tenancy
  20. 20. l 20/28 MAS COMO O PENTAHO VAI BUSCAR E MOSTRAR OS DADOS CORRETOS PARA O USUÁRIO AUTENTICADO ? Pentaho Multi Tenancy Diferenciação dos dados
  21. 21. Pentaho Multi Tenancy Customizações no Servidor do B.I Para que seja possível utilizar a estrutura de acessos com o conceito Mutli Tenancy, é necessário mudar o código de um arquivo. Editar o arquivo pentahoObjects.sprint.xml que fica no diretório do /pentaho/biserver-ce/pentaho-solutions/system/ com as seguintes alterações: → Localizar a tag <bean “IdatasourceService”>, comentá-la ou retirá-la. l 21/28
  22. 22. Pentaho Multi Tenancy Customizações no Servidor do B.I Adicionar o seguinte código: <bean id="IDatasourceService" class="org.pentaho.platform.engine.services.connection.datasource.dbcp. tenantaware.TenantAwareLoginParsingDatasourceService" scope="singleton"> <property name="requireTenantId" value="false" /> (TENANT) <property name="datasourceNameFormat" value="{0}-{1}" /> (PAC) <property name="tenantSeparator" value="@" /> (USUÁRIO@BASE – PUC) <property name="tenantOnLeft" value="false" /> (CONSIDERA DIREITA DO @) </bean> l 22/28
  23. 23. Pentaho Multi Tenancy Visualização após Autenticação utilizando CST l 23/28
  24. 24. Pentaho Multi Tenancy Visualização após Autenticação utilizando CST l 24/28 Vale lembrar que todas as ferramentas do Pentaho Server estarão disponíveis 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. 25. Custo - Baixo número de servidores; Consequentemente: número de licenças de S.O e número de SGDB reduzido; Agilidade - Estrutura de implantação nos clientes é genérica; - Fácil implantação nos clientes; - Projeto de curto/médio prazo; - Manutenção no Servidor de B.I é ágil porque só existe uma estrutura Mobilidade Pentaho Multi Tenancy Vantagens e Benefícios - Pode acessar de qualquer dispositivo que tenha conexão a internet; l 25/28
  26. 26. Manutenção -Se acontecer algum problema no Servidor de B.I, como a estrutura é única, irá afetar todos os clientes; -Complexidade em controlar a troca de informações do Cliente x Servidor; Customização - Não é customizável por cliente devido ter a mesma estrutura para todos; (DashBoards pré-definidos); Pentaho Multi Tenancy Desvantagens l 26/28
  27. 27. Pentaho Multi Tenancy Custo aproximado Recursos e Custo l Tempo de projeto: 4 meses l Custo por Servidor Externo (média mensal): Amazon “m1.large” l $180 x 2 = $360 x 2.20 = R$ 792,00 l Homens mês: Um analista de B.I (Média R$ 5.000,00) l Curso e consultoria: R$ 225,00/h (Se necessário) l 27/28
  28. 28. Pentaho Multi Tenancy Contato Dúvidas e/ou Sugestões? Obrigado, Vinicius Alexandre Elyseu l 28/28 Contato: vinicius_cwb@hotmail.com (41) 9993-4377 Blog: pentahobrazil.wordpress.com.br

×