apresentação ftsl 2014 utfpr curitiba - pentaho multi tenancy

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

Upload: vinicius-elyseu

Post on 14-Jun-2015

1.792 views

Category:

Data & Analytics


15 download

DESCRIPTION

Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

TRANSCRIPT

Page 1: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

[Projeto B.I – Grupo Sage]

Pentaho CEMulti Tenancy

Page 2: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

l 2/28

Agenda

l Apresentação Pessoal/Profissional

l Conceito/Ideia Multi Tenancy

l Case Grupo Sage – Pentaho Multi Tenancy

l Resultados

Page 3: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

ApresentaçãoPessoal e Profissional

Vinicius Alexandre Elyseu24 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- Empresa: Millennials – Consultoria em BI- Central do Jogo: www.centraldojogo.com.br- Entre outros

l 3/28

Page 4: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

ApresentaçãoGrupo 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 empresasEBS SistemasIOB FOLHAMATIC

Principais Segmentos:ContábilERPConsultoria Tributária

Mais de 40.000 mil clientes

Page 5: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Case Grupo SageSituaçã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

Page 6: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

ConceitoMulti 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)

Page 7: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

ConceitoMulti Tenancy

Multi-Tenancy: Multi-Inquilinos Os Clientes utilizam (No Servidor) 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

Page 8: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyInfraestrutura 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

Page 9: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyServidor 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?

Page 10: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyEnvio 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?

Page 11: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyFuncionamento Servidores

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

Page 12: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyProcesso 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 MySQLCria as configurações do DW no HSQLDB

Datawarehouse_CodCliente

Page 13: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyProcesso Criação DW PAC

l 13/28

Page 14: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyCriação de Usuários no HSQLDB

Criação automatizada dos usuários para integração: no Banco de dados HSQLDB (InMemory) do Pentaho

l 14/28

Page 15: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyCriação de Usuários no HSQLDB

l 15/28

Page 16: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyCache 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:\opt\pentaho\biserver-ce\pentaho-solutions\system\ e adicionar uma nova propriedade dentro da tag XML:<property name=”hibernateProperties”> e <props> após a última <prop>

l 16/28

Page 17: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyCache 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

Page 18: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyAcesso Clientes

l 18/28

Page 19: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyDesabilitar 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

Page 20: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

l 20/28

MAS COMO O PENTAHO VAI BUSCAR E MOSTRAR OS DADOS CORRETOS PARA O USUÁRIO AUTENTICADO ?

Pentaho Multi TenancyDiferenciação dos dados

Page 21: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyCustomizaçõ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

Page 22: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyCustomizaçõ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

Page 23: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyVisualização após Autenticação utilizando CST

l 23/28

Page 24: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyVisualizaçã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…)

Page 25: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

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 TenancyVantagens e Benefícios

- Pode acessar de qualquer dispositivo que tenha conexão a internet;

l 25/28

Page 26: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

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 TenancyDesvantagens

l 26/28

Page 27: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyCusto 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

Page 28: Apresentação FTSL 2014 UTFPR Curitiba - Pentaho Multi Tenancy

Pentaho Multi TenancyContato

Dúvidas e/ou Sugestões?

Obrigado,

Vinicius Alexandre Elyseu

l 28/28

Contato: [email protected] (41) 9993-4377 Blog: pentahobrazil.wordpress.com.br

www.millennialscwb.com.br