case: o postgresql em bi milhares de operações diárias consolidadas "near-real-time"...
TRANSCRIPT
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
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
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
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
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
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
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
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
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
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
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
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
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
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
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
PostgreSQL
PGDay Campinas 2014 www.object.com.br 15
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
PostgreSQL
PGDay Campinas 2014 www.object.com.br 16
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
PostgreSQL
PGDay Campinas 2014 www.object.com.br 17
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
PostgreSQL
PGDay Campinas 2014 www.object.com.br 18
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
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
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
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
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
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
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
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
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
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
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
Resultados
PGDay Campinas 2014 www.object.com.br 29
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
Resultados
PGDay Campinas 2014 www.object.com.br 30
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
Resultados
PGDay Campinas 2014 www.object.com.br 31
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
Resultados
PGDay Campinas 2014 www.object.com.br 32
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
Resultados
PGDay Campinas 2014 www.object.com.br 33
CASE: O POSTGRESQL EM BI - Milhares de operações diárias consolidadas "near-real-time"
Resultados
PGDay Campinas 2014 www.object.com.br 34
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
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
Principais projetos de replicação com OBJECTMMRSTJAM, PRODAM, Exército Brasileiro, Shibata
PGDay Campinas 2014 www.object.com.br 36