19

Click here to load reader

Migracao colaborativa

Embed Size (px)

Citation preview

Page 1: Migracao colaborativa

Migração colaborativa para PostgreSQL

Leonardo Cezar

Page 2: Migracao colaborativa

MotivaçãoMotivação

● Evolução no desenvolvimento de projetos de Evolução no desenvolvimento de projetos de pequena porte pequena porte

● Reutilização de rotinas e processosReutilização de rotinas e processos● Unir os esforços de migração e Unir os esforços de migração e

desenvolvimento dentro das empresasdesenvolvimento dentro das empresas● Compartilhar conhecimento e reduzir retrabalhoCompartilhar conhecimento e reduzir retrabalho

Page 3: Migracao colaborativa

Por que PostgreSQL?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 estabilidade

multiplataforma ACID Rules Integridade Referencial SSL Kerberos linguagens

procedurais LDAP tipos customizados

Page 4: Migracao colaborativa

Processo de migraçãoProcesso 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)

Page 5: Migracao colaborativa

Migração: IdentificaçãoMigração: Identificação

● Informações sobre a infraestrutura● Cópia de segurança● Disponibilidade● Compatibilidade da aplicação

Page 6: Migracao colaborativa

Migração: PlanejamentoMigraçã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

Page 7: Migracao colaborativa

Migração: AnáliseMigraçã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)

Page 8: Migracao colaborativa

Migração: ExecuçãoMigração: Execução● Migração de logins e usuários● Migração de DDL● Exportação de dados● Procedimentos armazenados● Views● Triggers● Jobs e Cargas

Page 9: Migracao colaborativa

Migração: FerramentasMigração: Ferramentas● Processo

– Eclipse EPF

● Funcionalidades– ora2pg

– mssql2pg

Page 10: Migracao colaborativa

Ferramentas de apoioFerramentas de apoio● Estrutura/Dados

– mssqltopg

– freetds

– SQLFairy

– dump2pg

● Integração– DBI Link

– dblink

Page 11: Migracao colaborativa

5 Tipos de Projetos de software livre(por Josh Berkus)

Page 12: Migracao colaborativa

Tipos de projetos Tipos de projetos

Solo● Poucos colaboradores● Derivação de outros projetos● Suporte imediato● Exemplos:

– apgdiff

– E-Maj

– pgloader

Page 13: Migracao colaborativa

Tipos de projetosTipos de projetos

Monarquia● Evolução do modelo Solo● Decisões realizadas pelos líderes● Geralmente mais formais● Muitos colaboradores

● Exemplos– pgBouncer

– pgsnmp

Page 14: Migracao colaborativa

Tipos de projetosTipos de projetos

Comunidade● Decisões baseadas na meritocracia e consenso● Suporte através de listas, fóruns, &c● Muitos contribuintes● Exemplos

– PostgreSQL

– Slony

– Pgpool

Page 15: Migracao colaborativa

Tipos de projetosTipos de projetosCorporativo● Código liberado por empresa ● Contribuição difícil● Maioria dos colaboradores são empregados ● Normalmente bi-licenciado● Suporte através de parceiros ● Exemplos

– skytools

– apgdiff

– edb-debugger

Page 16: Migracao colaborativa

Tipos de projetosTipos de projetos

Fundação● Último estágio da evolução de um projeto● Decisões formalizadas pelas necessidades

estruturais● Suporte através de patrocinadores● Exemplo:

– Apache

– LibreOffice

Page 17: Migracao colaborativa

Nem tudo são flores...Nem tudo são flores...● Cultura● Vícios● Ferramentas de modelagem● Ferramentas de administração● Capacitação da equipe

Page 18: Migracao colaborativa

RepositóriosRepositórios

● http://www.pgfoundry.org● http://projects.postgresql.org● http://www.pgxn.org● http://www.github.com