Situação do processo de
migração para PostgreSQL na
         Dataprev
         Leonardo Cezar
Sobre a Dataprev
➔
  Três centros de processamento distribuídos (SP,
RJ, DF)
➔
  Cinco unidades de desenvolvimento (CE, PB, RJ,
SC, SL)
➔
  Ambientes híbridos de sistema operacional e
banco de dados
➔
  Bilhões de informações processadas diariamente
➔
  Clientes: INSS, SRFB, MPS, MTE, MPOG
Motivação

➔
  Racionalização de licenças
➔
  Independência tecnológica
➔
  Redução de custos
Por que PostgreSQL?

 suporte da comunidade extensível escalável
 Administração simples grandes volumes de dados

  segurança gratuito e livre licença adequada
  relacional MVCC LDAP over deployment custo
 confiabilidade integridade tipos customizados
   estabilidade multiplataforma ACID Rules
Integridade Referencial SSL Kerberos linguagens procedurais LDAP
Critérios

➔
  Demanda do cliente
➔
  Quantidade de pontos de função
➔
  Complexidade das regras de negócios
➔
  Número de TPS
➔
  Arquitetura da aplicação
➔
  Estabilidade do produto
Fases da Migração

➔
  Definição de um processo (protocolo) comum para
todos ambientes
➔
  Refatoração da aplicação e conectores
➔
  Revisão da arquitetura
➔
  Sustentação operacional
Protocolo de migração (v.0.1)

➔
  Definição formal do processo
➔
  Padronização de técnicas
➔
  Monitoramento das fases de migração
➔
  Elaborado com EPF
➔
  Relacionar com fases do processo de
desenvolvimento dataprev (pddataprev)
Processo de migração

              ➔
                Tipos de migração
            ➔
              Migração de aplicação
          ➔
            Migração de base de dados
    ➔
      Migração de aplicação e base de dados
               (desenvolvimento)
Processo de migração: Identificação

➔
  Informações sobre a infraestrutura
➔
  Cópia de segurança
➔
  Disponibilidade
➔
  Compatibilidade da aplicação
Processo de migração: Planejamento

➔
  Documento de visão
     – Informações sobre a aplicação
     – Requisitos da aplicação
     – Cenário de utilização de aplicação
➔
  Documento de escopo
➔
  Cronograma preliminar
Processo de migração: Análise

➔
  Características da aplicação
➔
  Rastreabilidade de dependências
     – Estudo preliminar (obter poucas
         informações)
     – Análise completa (visões, SPs, JOBs, &c)
Processo de migração: Execução

➔
  Migração de grupos e roles
➔
  Migração de DDL
➔
  Exportação de dados
➔
  Procedimentos armazenados
➔
  Views
➔
  Triggers
➔
  Jobs e Cargas
Ferramentas de apoio

➔
    Estrutura/Dados
        – mssqltopg
        – FreeTDS
        – SQLFairy
        – Dump2pg
        – Pentaho Data Integration (kettle)
Ferramentas de apoio

➔
    Integração
        – Foreign data wrappers
        – DBI Link
        – Dblink
        – Pentaho Data Integration (kettle)
Sustentação do ambiente

➔
  Disponibilidade
➔
  Monitoramento
➔
  Manutenção evolutiva
Principais casos de sucesso

➔
  Sistema de gestão de passagens
➔
  Guia de recolhimento da união
➔
  Sistema de acompanhamento de processos
Dificuldades encontradas

           ➔
               Capacitação da equipe
        ➔
           Inconsistências no framework
               ➔
                 Extrações binárias
         ➔
            Softwares de gerenciamento
                     ➔
                        Cultura
                      ➔
                        Vícios
          ➔
            Ferramentas de modelagem
        ➔
           Ferramentas de administração
                      ➔
                         Mitos
Próximas etapas


     ➔
       Aquisição de software de modelagem
    ➔
      Aquisição de software de administração
    ➔
      Melhor integração entre outros sistemas
            ➔
              Atualização de versões
Dúvidas?

leonardo.cezar@dataprev.gov.br
@lhcezar

Situação da migração para PostgreSQL

  • 1.
    Situação do processode migração para PostgreSQL na Dataprev Leonardo Cezar
  • 2.
    Sobre a Dataprev ➔ Três centros de processamento distribuídos (SP, RJ, DF) ➔ Cinco unidades de desenvolvimento (CE, PB, RJ, SC, SL) ➔ Ambientes híbridos de sistema operacional e banco de dados ➔ Bilhões de informações processadas diariamente ➔ Clientes: INSS, SRFB, MPS, MTE, MPOG
  • 3.
    Motivação ➔ Racionalizaçãode licenças ➔ Independência tecnológica ➔ Redução de custos
  • 4.
    Por que PostgreSQL? suporte da comunidade extensível escalável Administração simples grandes volumes de dados segurança gratuito e livre licença adequada relacional MVCC LDAP over deployment custo confiabilidade integridade tipos customizados estabilidade multiplataforma ACID Rules Integridade Referencial SSL Kerberos linguagens procedurais LDAP
  • 5.
    Critérios ➔ Demandado cliente ➔ Quantidade de pontos de função ➔ Complexidade das regras de negócios ➔ Número de TPS ➔ Arquitetura da aplicação ➔ Estabilidade do produto
  • 6.
    Fases da Migração ➔ Definição de um processo (protocolo) comum para todos ambientes ➔ Refatoração da aplicação e conectores ➔ Revisão da arquitetura ➔ Sustentação operacional
  • 7.
    Protocolo de migração(v.0.1) ➔ Definição formal do processo ➔ Padronização de técnicas ➔ Monitoramento das fases de migração ➔ Elaborado com EPF ➔ Relacionar com fases do processo de desenvolvimento dataprev (pddataprev)
  • 8.
    Processo de migração ➔ Tipos de migração ➔ Migração de aplicação ➔ Migração de base de dados ➔ Migração de aplicação e base de dados (desenvolvimento)
  • 9.
    Processo de migração:Identificação ➔ Informações sobre a infraestrutura ➔ Cópia de segurança ➔ Disponibilidade ➔ Compatibilidade da aplicação
  • 10.
    Processo de migração:Planejamento ➔ Documento de visão – Informações sobre a aplicação – Requisitos da aplicação – Cenário de utilização de aplicação ➔ Documento de escopo ➔ Cronograma preliminar
  • 11.
    Processo de migração:Análise ➔ Características da aplicação ➔ Rastreabilidade de dependências – Estudo preliminar (obter poucas informações) – Análise completa (visões, SPs, JOBs, &c)
  • 12.
    Processo de migração:Execução ➔ Migração de grupos e roles ➔ Migração de DDL ➔ Exportação de dados ➔ Procedimentos armazenados ➔ Views ➔ Triggers ➔ Jobs e Cargas
  • 15.
    Ferramentas de apoio ➔ Estrutura/Dados – mssqltopg – FreeTDS – SQLFairy – Dump2pg – Pentaho Data Integration (kettle)
  • 16.
    Ferramentas de apoio ➔ Integração – Foreign data wrappers – DBI Link – Dblink – Pentaho Data Integration (kettle)
  • 17.
    Sustentação do ambiente ➔ Disponibilidade ➔ Monitoramento ➔ Manutenção evolutiva
  • 18.
    Principais casos desucesso ➔ Sistema de gestão de passagens ➔ Guia de recolhimento da união ➔ Sistema de acompanhamento de processos
  • 19.
    Dificuldades encontradas ➔ Capacitação da equipe ➔ Inconsistências no framework ➔ Extrações binárias ➔ Softwares de gerenciamento ➔ Cultura ➔ Vícios ➔ Ferramentas de modelagem ➔ Ferramentas de administração ➔ Mitos
  • 20.
    Próximas etapas ➔ Aquisição de software de modelagem ➔ Aquisição de software de administração ➔ Melhor integração entre outros sistemas ➔ Atualização de versões
  • 21.