case: o postgresql em bi milhares de operações diárias consolidadas "near-real-time"...

36
PGDAY.CAMPINAS.2014 CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014 www.object.com.br 1 Wagner Correa Ramos Anderson Massaharu Shibata

Upload: internet

Post on 21-Apr-2015

108 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

PGDAY.CAMPINAS.2014

CASE: O POSTGRESQL EM BI

Milhares de operações diárias consolidadas "near-real-time"

PGDay Campinas 2014 www.object.com.br 1

Wagner Correa RamosAnderson Massaharu Shibata

Page 2: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Roteiro

Apresentação da empresa do “CASE” Requisitos do projeto de BI Origem dos dados Modelo de dados do BI Escolha do SGBD (PostgreSQL) Tecnologia para a integração dos dados Tecnologias usadas Resultados Futuro

PGDay Campinas 2014 www.object.com.br 2

Page 3: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Requisitos do projeto de BI Aumentar velocidade da informação

para a prevenção de problemas Disponibilidade destas informações

dentro e fora da empresa Foco em qualidade dos dados Usabilidade Dados para futuras pesquisas

PGDay Campinas 2014 www.object.com.br 3

Page 4: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Origem dos dados

Cadastros (ERP) Vendas

PDV (MySQL)ERP (PostgreSQL)

Compras (ERP) Despesas (ERP) Metas (Excel)

Vendas, Compras, Despesas RH (WS)

PGDay Campinas 2014 www.object.com.br 4

Page 5: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Modelo de dados do BI

Primeira tentativaCompras e Vendas: Tabela única com totais

por loja, mercadoria, ano, mes, dia e horaProblema de desempenho nas consultas e

na qualidade dos dados

PGDay Campinas 2014 www.object.com.br 5

Page 6: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Modelo de dados do BI

PGDay Campinas 2014 www.object.com.br 6

Page 7: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Modelo de dados do BI

Segunda tentativaCompras e Vendas, ainda juntos mas com 3

tabelas (hora/dia/mês)Melhor desempenho nas consultasAinda problemas na qualidade dos dados

PGDay Campinas 2014 www.object.com.br 7

Page 8: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Modelo de dados do BI

Terceira tentativaNas 2 tentativas iniciais faziamos a

totalização durante a replicação dos dados dos PDVs para o BI

Na terceira criamos no BI as tabelas de cupons e itens de cupons de venda

Simplificação das transformações necessárias nos dados entre PDVs e BI

Qualidade dos dados 100%

PGDay Campinas 2014 www.object.com.br 8

Page 9: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Modelo de dados do BI

Modelo desnormalizado x normalizadoDesempenho de consultasFacilidade de consultasManutenção do correto histórico dos dados

em consultas retroativasProblema do reaproveitamento de “IDs”

PGDay Campinas 2014 www.object.com.br 9

Page 10: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Modelo de dados do BI

Tabelas: 63 – Views: 4 Volume atual de dados (6/set/14)

mercadoria: 439.033cupom: 9.279.743 (jan/14)cupom_item: 33.713.982 (jan/14)mercadoria_hora: 153.891.136 (mai/12)mercadoria_dia: 58.523.056 (nov/12)mercadoria_mes: 9.338.419 (nov/12)mercadoria_estoque: 6.452.036 (mai/12)

PGDay Campinas 2014 www.object.com.br 10

Page 11: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Escolha do SGBD Fatores para decisão

Ferramentas existentes para BICustoFacilidade de usoEquipe existenteEvolução

Gerenciadores consideradosOracleMS SQLServerPostgreSQLMySQL

PGDay Campinas 2014 www.object.com.br 11

Page 12: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Escolha do SGBD

2012 a 2013 – Oracle e PostgreSQL 2014 – MySQL e PostgreSQL Atual - PostgreSQL

PGDay Campinas 2014 www.object.com.br 12

Page 13: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Escolha do SGBD Algum receio em usar um software open

source como o PostgreSQL ? NÃOA rede Shibata usa o PostgreSQL open source

desde 2004 sem NUNCA parar por algum motivo de bug, etc, no software.

Alguma motivação para uso de versão comercial do PostgreSQL ? NÃOPara ficar novamente dependente de uma única

empresa ? Melhor opção contratar suporte de empresa

nacional especializada no PostgreSQL open source.

PGDay Campinas 2014 www.object.com.br 13

Page 14: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

PostgreSQL

100% de satisfação Uso de recursos avançados

Triggers e funções executando com excelente desempenho complexas regras de negócio

Regras de negócio que se implementadas em linguagem de programação ficariam inviáveis devido ao baixo desempenho

PGDay Campinas 2014 www.object.com.br 14

Page 15: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

PostgreSQL

PGDay Campinas 2014 www.object.com.br 15

Page 16: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

PostgreSQL

PGDay Campinas 2014 www.object.com.br 16

Page 17: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

PostgreSQL

PGDay Campinas 2014 www.object.com.br 17

Page 18: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

PostgreSQL

PGDay Campinas 2014 www.object.com.br 18

Page 19: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Tecnologia Integração de dados

O principal requisito para o projeto de BI foi e continua sendo a alta velocidade na obtenção de informações consolidadas

Escolhemos então uma ferramenta para garantir a consolidação “near-real-time”

Outro requisito importante é a disponibilidade das informações dentro e fora da empresa

PGDay Campinas 2014 www.object.com.br 19

Page 20: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Tecnologia Integração de dados

A rede Shibata utiliza o software replicador OBJECTMMRS com objetivo de descentralização

No projeto BI o objetivo é praticamente o contrário, queremos a consolidação dos dados em um único servidor central

PGDay Campinas 2014 www.object.com.br 20

Page 21: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Tecnologia Integração de dados

Motivos que levaram à escolha novamente do OBJECTMMRSCompatível com outros SGBDs (Oracle,

SQLServer, MySQL, etc)Flexibilidade. Pode-se desenvolver classes

java para realização de transformações de dados

Qualidade dos dados

PGDay Campinas 2014 www.object.com.br 21

Page 22: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Classe customizada OBJECTMMRS

PGDay Campinas 2014 www.object.com.br 22

Page 23: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Classe customizada OBJECTMMRS

PGDay Campinas 2014 www.object.com.br 23

Page 24: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Tecnologia Integração de dados

PGDay Campinas 2014 www.object.com.br 24

Page 25: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Tecnologia Integração de dados

PGDay Campinas 2014 www.object.com.br 25

Page 26: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Tecnologia Integração de dados

PGDay Campinas 2014 www.object.com.br 26

Page 27: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Tecnologias usadas

Banco de dados: PostgreSQL 8.x e 9.x Replicação e integração:

OBJECTMMRS 6.x e 7.x Interface Web do BI: PHP 5.4, Apache

2.2, HTML5 Webservices BI: Java, Jetty, Restlet Desenvolvimento Mobile: Phonegap 3.5

PGDay Campinas 2014 www.object.com.br 27

Page 28: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Resultados

Totais de vendas acumulados e disponíveis para consultas “near-real-time”

Informações sobre compras também disponíveis “near-real-time”

BI além de mostrar resultados ajuda na prevenção de problemas (ruptura)

Informação disponível dentro e fora da empresa (online e/ou offline)

PGDay Campinas 2014 www.object.com.br 28

Page 29: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Resultados

PGDay Campinas 2014 www.object.com.br 29

Page 30: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Resultados

PGDay Campinas 2014 www.object.com.br 30

Page 31: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Resultados

PGDay Campinas 2014 www.object.com.br 31

Page 32: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Resultados

PGDay Campinas 2014 www.object.com.br 32

Page 33: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Resultados

PGDay Campinas 2014 www.object.com.br 33

Page 34: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Resultados

PGDay Campinas 2014 www.object.com.br 34

Page 35: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

Futuro

O volume de dados sendo armazenado no banco BI é gigantesco. A cada ano mais de 100 milhões de novas linhas.

Cluster de Pg x Big Data Data mining Ferramenta para consultas/gráficos “ad-

hoc”

PGDay Campinas 2014 www.object.com.br 35

Page 36: CASE: O POSTGRESQL EM BI Milhares de operações diárias consolidadas "near-real-time" PGDay Campinas 2014  Wagner Correa Ramos Anderson

CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"

PGDAY Campinas 2014 Questões / Comentários Obrigado a todos pela presença Parabéns à Dextra pela organização do

evento Contato

[email protected]

Principais projetos de replicação com OBJECTMMRSTJAM, PRODAM, Exército Brasileiro, Shibata

PGDay Campinas 2014 www.object.com.br 36