drupalcamp campinas 2016 - exportando dados denormalizados no drupal com foco em bi (gabriel machado...

27
Gabriel Machado Arquiteto de Software CI&T Exportando dados denormalizados no Drupal com foco em BI

Upload: gabriel-machado-santos

Post on 13-Apr-2017

50 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Gabriel MachadoArquiteto de SoftwareCI&T

Exportando dados denormalizados no Drupal com foco em BI

Page 2: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Gabriel Machado Santos

Page 3: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de negócio● Futuras melhorias para o modulo

Page 4: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de negócio● Futuras melhorias para o modulo

Page 5: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Requisito do cliente

● Analisar os dados em tempo real● Possibilidade de criar relatórios flexíveis● Cruzar informações entre as entidades● Criar relatórios de média e alta complexidade

Page 6: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Requisito do cliente

● Ferramentas de relatório que o cliente suporta:○ Tableau○ Qlik○ AWS QuickSight

Page 7: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Porque não conectar o Tableau diretamente no MySQL/Drupal?

● Quantidade de tabelas no Drupal● Número de JOINs inviabiliza performance● Dificuldade para identificar dimensões e atributos no Tableau

Page 8: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de negócio● Futuras melhorias para o modulo

Page 9: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Ferramentas ETL/BI no mercado

● Ferramentas:○ Oracle Warehouse Builder (OWB)○ SAP Data Services○ IBM Infosphere Information Server○ SQL Server Integration Services (SSIS)

Page 10: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de negócio● Futuras melhorias para o modulo

Page 11: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Porque não utilizamos as ferramentas do mercado?

● Extremamente caras● Maioria não é Open Source● Profissionais especializados com alto custo● Custo para manter as aplicações

○ Licença● Servidores dedicados para manter a aplicação

Page 12: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Porque não utilizamos os modulos do Drupal?

● Node Export?

● Migrate?

Page 13: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de negócio● Futuras melhorias para o modulo

Page 14: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Enfim, decidimos criar um modulo para ETL, por quê?

● Definir quais entidades devem ser exportadas● Quais campos de cada entidade● Alterar os dados antes de persistir● Manter os dados sincronizados (Drupal Queue API)

Page 15: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de negócio● Futuras melhorias para o modulo

Page 16: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Funcionamento do modulo

● Definir quais entidades devem ser exportadas○ hook_etl_load_entities_info()

Page 17: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Funcionamento do modulo

● Quais campos por entidade devem ser exportados

Page 18: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Funcionamento do modulo

● Alterar os dados antes de persistir○ hook_etl_entity_load_data_alter(&$entity_data, $info)

Page 19: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Funcionamento do modulo

● Alterar os dados antes de persistir○ hook_etl_get_field_parser_value_alter(&$field_value,

$machine_name, $field)

Page 20: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Funcionamento do modulo

● Manter os dados atualizados○ Queue API

Page 21: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de

negócio● Futuras melhorias para o modulo

Page 23: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Sumário

● Requisito/necessidade do cliente● Ferramentas ETL/BI no mercado● Porque não utilizamos as ferramentas do mercado?● Criação do modulo ETL● Funcionamento do modulo● Demostração do modulo exportando dados● Criando relatórios com foco em inteligência de negócio● Futuras melhorias para o modulo

Page 24: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Futuras melhorias para o modulo

● Listar todas entidades na pagina de configuração● Refletir as alterações dos labels no destination database● Verificar a conexão com a base de dados● Criar tabelas automaticamente

Page 25: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Futuras melhorias para o modulo

● Lista de issues no Drupal.org

Page 26: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Futuras melhorias para o modulo

● Remover a restrição de caracteres do label

Page 27: DrupalCamp Campinas 2016 - Exportando dados denormalizados no Drupal com foco em BI (Gabriel Machado Santos)

Obrigado

Dúvidas?

● drupal.org/u/gabrielmachadosantos● linkedin.com/in/gabrielmachadosantos● twitter.com/gmachadosantos