SlideShare uma empresa Scribd logo
1 de 16
Fábio Telles
– Chefe de Desenvolvimento - DTI (Prefeitura
Diadema)

Fernando Ike
- Assistente do DTI (Prefeitura Diadema)
Boas práticas



   Evitar utilizar extenções específicas de um SGBD.
●


   Utilizar ao máximo a sintaxe padrão ANSI SQL.
●


   Evite o uso de mixed case (notação Húngara), use minúsculas para 
●


nomes de objetos e maiúsculas para palavras reservadas.
   Documentar rigorosamente todo o código armazenado no banco.
●


   Utilizar tipos de dados binários somente quando necessário.
●
Antes de migrar


   Leia atentamente toda a documentação dos SGBDs e identifique 
●


diferenças na sintaxe e funcionalidades utilizadas.
   Realizar Backup antes de realizar qualquer teste.
●


   Realizar testes em um servidor de teste.
●


   Verificar codificação de caracteres e localização.
●


   Verificar espaço em disco disponível, o espaço ocupado pelo banco 
●


pode variar de SGBD para SGBD.
Durante a migração

   Registre todo o processo. 
●


   Migre primeiros sistemas não críticos.
●


   Migre primeiro o que é mais simples como tabelas e índices.
●


   Se possível,  gere scripts em texto puro com todo DDL e DML.
●


   Importe tabelas, dados e constraints separadamente.
●


   Habilitar e checar logs durante exportações e importações.
●


   Migre primeiro o que é mais simples como tabelas e índices.
●


   Homologue cada etapa antes de prosseguir.
●
Oracle != PostgreSQL
Tipos de dados
  VARCHAR2           > VARCHAR
●


 NUMBER              > NUMERIC

JOIN
   FROM t1, t2        > FROM t1 LEFT OUTER JOIN t2
●

      WHERE t1.id = t2.id(+)             ON t1.id = t2.id

Funções:
   DECODE (sexo, 'M',         > CASE WHEN sexo = 'M' then 'Masculino'
●


      'Masculino,'F','Feminino')        WHEN sexo = 'F' then 'Feminino' END
  NVL                   > COALESCE
●


   sysdate, systimestamp      > current_date, current_timestamp
●




UNION
     MINUS           > EXCEPT
●




Clausula LIMIT e OFSET:
     ROWNUM, ROWID         > LIMIT, OFSET, OID
●
SQL

  Catálogo de sistema SYS e SYSTEM  do Oracle são equivalentes ao 
●


pg_catalog e information_schema no PostgreSQL.
  PostgreSQL é Sensitive Case. Todos nomes de objetos com letras 
●


maiúsculas devem estar entre aspas.
  O PostgreSQL não necessita do uso da tabela “DUAL”. Pode ser 
●


criada uma para manter a compatibilidade.
  Implementação de hierarquia entre tabelas, XML, Database Link e 
●


outras funções avançadas possuem diferenças.
  O PostgreSQL não possui  visões materializadas. No entanto é 
●


possível contornar este problema com gatilhos e funções.
PL/SQL X PLpg/SQL
   Ambos possuem PL/Java, funções em C dentro do banco. No 
●


PostgreSQL há outras linguagens como PL/Perl, PL/Pyhton, etc.
   Não existem procedures no PostgreSQL, no entanto uma função pode 
●


ser utilizada retornando o tipo VOID.
   Não existem valores DEFAULT para parâmetos recebidos no 
●


PL/SQL, no entanto é possível utilizar sobrecarga de funções.
   Não existem Packages no PostgreSQL, no entanto os objetos podem 
●


ser organizados num esquema separado. Variáveis de nível de pacote 
podem ser armazenadas em tabelas temporárias mantidas durante a 
sessão.
   Cursores não são necessários no PostgreSQL. A consulta deve ser 
●


declarada junto a cláusula FOR do laço.
   O corpo da função deve estar delimitado com marcas de dólar no 
●


PostgreSQL
   Os gatilhos no PostgreSQL chamam uma e apenas uma função, não 
●


havendo código em seu corpo.
Storage

   O conceito de Espaço de Tabelas no PostgreSQL se refere a uma pasta que 
●


é gerenciada pelo SGBD. Não é possível definir DataFiles específicos. A 
única influência sobre os DataFiles é especificar o formato de 
armazenamento nas colunas com valores grandes.
   O PostgreSQL não tem implementado explicitamente o conceito de 
●


extensões e segmentos.
   Ainda não é possível especificar o local de armazenamento separado para 
●


áreas temporárias (para operações de Rollback, Ordenação, Indexação, etc). 
Estas áreas ficam todas no mesmo local que o catálogo do sistema.
Backup


   Conceito de Redo no Oracle é semelhante ao conceito de WAL no 
●


PostgreSQL.
   Conceito de DUMP é semelhante em ambos.
●


   DUMP no PostgreSQL permite redirecionamento via pipe. 
●


   Conceito de cópia de arquivos de dados é semelhante em ambos.
●


   Conceito de Stand By é semelhante em ambos.
●


   O PostgreSQL não possui uma ferramenta de FlashBack.
●


   O PostgreSQL não possui ferramenta nativa no estilo do RMAN.
●
Segurança

  GRANT e REVOKE tem funcionalidade semelhante.
●


  SCHEMAS não são automaticamente atrelados ao usuário no PostgreSQL. 
●


Eles precisam ser criados manualmente. Depois disso se comporta de maneira 
parecida. No entanto um esquema pode possuir objetos de outro dono se ele 
tiver as permissões necessárias para isso.
  O ROLE “connect” no Oracle é realizado através do pg_hba.conf no 
●


PostgreSQL.
  O ROLE “resource” no Oracle é semelhante a possuir privilégio para criar 
●


objetos num esquema do PostgreSQL.
  O Role DBA é no Oracle é semelhante ao superusuário do PostgreSQL.
●


  O Role SYS é no Oracle é semelhante ao usuário POSTGRES no 
●


PostgreSQL.

* Os GROUPs foram convertidos  para ROLEs  na versão 8.1
Lógica da Migração - Ora2pg
Ora2pg
   Feito em PERL. Depende dos módulos DBI, DBD::Pg e DBD::Oracle.
●


   Importa dados e definições do Oracle para um arquivo texto ou direto 
●


para um banco no PostgreSQL.
   Suporte a extração de DDL de tabelas, indices, constraints, views, 
●


triggers, procedures, functions, packages e grants.
   Dados podem ser exportados no formato INSERT ou COPY.
●


   Pode ser selecionado um esquema ou tabela específico para ser 
●


importado. 
   Corrige nomes de tipos de dados diferentes.
●


   Extrai o código do corpo de triggers numa função.
●


   Algumas funções com nome diferente precisam.
●


   Funções em PL/SQL geralmente precisam de um pouco de edição 
●


manual.
   Funções SQL diferentes precisam de edição manual.
●
DBI-Link


­ Pl/Perl Untrusted.
­ DBI/DBD.
­  Mapeamento  de  tabelas  remotas  utilizando  Views  +  Rules  + 
Triggers.
­  Acesso  Transparente  a  tabelas  de  Banco  de  Dados  Remotos 
(Oracle, MSSQL, MySQL).
Referências



Oracle ­ http://www.oracle.com
PostgreSQL ­ http://www.postgresql.org
TechDocs (Migração) ­ http://www.postgresql.org/docs/techdocs.3 
Ora2Pg ­ http://www.samse.fr/GPL/ora2pg/ora2pg.html 
DBI­Link ­ http://pgfoundry.org/projects/dbi­link/ 
História de horror de Migração para PostgreSQL ­
 http://www.frankhilliard.com/horrorstory.cfm 
Contatos

Fábio Telles
<fabio.telles@diadema.sp.gov.br>
<fabio.telles@gmail.com>

Fernando Ike
<fernando.ike@diadema.sp.gov.br>
<fernando.ike@gmail.com>

Mais conteúdo relacionado

Mais procurados

3963066 pl-sql-notes-only
3963066 pl-sql-notes-only3963066 pl-sql-notes-only
3963066 pl-sql-notes-onlyAshwin Kumar
 
How the Postgres Query Optimizer Works
How the Postgres Query Optimizer WorksHow the Postgres Query Optimizer Works
How the Postgres Query Optimizer WorksEDB
 
Tema 3: Tipos y clases en Haskell
Tema 3: Tipos y clases en HaskellTema 3: Tipos y clases en Haskell
Tema 3: Tipos y clases en HaskellJosé A. Alonso
 
The Future of Java: Records, Sealed Classes and Pattern Matching
The Future of Java: Records, Sealed Classes and Pattern MatchingThe Future of Java: Records, Sealed Classes and Pattern Matching
The Future of Java: Records, Sealed Classes and Pattern MatchingJosé Paumard
 
Guía 05. Consultas resumen con MySQL - José J Sánchez H
Guía 05. Consultas resumen con MySQL - José J Sánchez HGuía 05. Consultas resumen con MySQL - José J Sánchez H
Guía 05. Consultas resumen con MySQL - José J Sánchez HJosé Ricardo Tillero Giménez
 
Exercicio banco de_dados
Exercicio banco de_dadosExercicio banco de_dados
Exercicio banco de_dadosRafael Lima
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoelliando dias
 
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)Helder da Rocha
 
Java 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas InterfacesJava 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas InterfacesRegis Magalhães
 
Implementing the IO Monad in Scala
Implementing the IO Monad in ScalaImplementing the IO Monad in Scala
Implementing the IO Monad in ScalaHermann Hueck
 
MongoDB Aggregation Framework
MongoDB Aggregation FrameworkMongoDB Aggregation Framework
MongoDB Aggregation FrameworkCaserta
 
PLPgSqL- Datatypes, Language structure.pptx
PLPgSqL- Datatypes, Language structure.pptxPLPgSqL- Datatypes, Language structure.pptx
PLPgSqL- Datatypes, Language structure.pptxjohnwick814916
 

Mais procurados (20)

3963066 pl-sql-notes-only
3963066 pl-sql-notes-only3963066 pl-sql-notes-only
3963066 pl-sql-notes-only
 
How the Postgres Query Optimizer Works
How the Postgres Query Optimizer WorksHow the Postgres Query Optimizer Works
How the Postgres Query Optimizer Works
 
Tema 3: Tipos y clases en Haskell
Tema 3: Tipos y clases en HaskellTema 3: Tipos y clases en Haskell
Tema 3: Tipos y clases en Haskell
 
The Future of Java: Records, Sealed Classes and Pattern Matching
The Future of Java: Records, Sealed Classes and Pattern MatchingThe Future of Java: Records, Sealed Classes and Pattern Matching
The Future of Java: Records, Sealed Classes and Pattern Matching
 
Guía 05. Consultas resumen con MySQL - José J Sánchez H
Guía 05. Consultas resumen con MySQL - José J Sánchez HGuía 05. Consultas resumen con MySQL - José J Sánchez H
Guía 05. Consultas resumen con MySQL - José J Sánchez H
 
Exercicio banco de_dados
Exercicio banco de_dadosExercicio banco de_dados
Exercicio banco de_dados
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScriptCurso de Desenvolvimento Web - Módulo 03 - JavaScript
Curso de Desenvolvimento Web - Módulo 03 - JavaScript
 
jQuery
jQueryjQuery
jQuery
 
Tipos de dados em MySQL
Tipos de dados em MySQLTipos de dados em MySQL
Tipos de dados em MySQL
 
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
Curso de RESTful WebServices em Java com JAX-RS (Java EE 7)
 
Java 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas InterfacesJava 10 Classes Abstratas Interfaces
Java 10 Classes Abstratas Interfaces
 
Cursors.ppt
Cursors.pptCursors.ppt
Cursors.ppt
 
PLSQL
PLSQLPLSQL
PLSQL
 
Implementing the IO Monad in Scala
Implementing the IO Monad in ScalaImplementing the IO Monad in Scala
Implementing the IO Monad in Scala
 
02 data types in java
02 data types in java02 data types in java
02 data types in java
 
Access modifiers in java
Access modifiers in javaAccess modifiers in java
Access modifiers in java
 
MongoDB Aggregation Framework
MongoDB Aggregation FrameworkMongoDB Aggregation Framework
MongoDB Aggregation Framework
 
PLPgSqL- Datatypes, Language structure.pptx
PLPgSqL- Datatypes, Language structure.pptxPLPgSqL- Datatypes, Language structure.pptx
PLPgSqL- Datatypes, Language structure.pptx
 

Semelhante a Boas práticas para migração Oracle para PostgreSQL

Oracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIOracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIFernando Ike
 
Migração de Oracle para PostgreSQL - FISL
Migração de Oracle para PostgreSQL - FISLMigração de Oracle para PostgreSQL - FISL
Migração de Oracle para PostgreSQL - FISLFabio Telles Rodriguez
 
Solisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para PostgresqlSolisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para PostgresqlLeonardo Medeiros Martins
 
Scala - Uma Breve (breve mesmo) Introdução
Scala - Uma Breve (breve mesmo) IntroduçãoScala - Uma Breve (breve mesmo) Introdução
Scala - Uma Breve (breve mesmo) Introduçãopaulosuzart
 
Funcionalidades Oracle
Funcionalidades OracleFuncionalidades Oracle
Funcionalidades Oracleharlycarreiro
 
PHP - Programação para seres humanos
PHP - Programação para seres humanosPHP - Programação para seres humanos
PHP - Programação para seres humanosCaike Souza
 
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidademetzen
 
Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)
Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)
Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)Dickson S. Guedes
 
Fluentd/LogStash + elastic search + kibana
Fluentd/LogStash + elastic search + kibanaFluentd/LogStash + elastic search + kibana
Fluentd/LogStash + elastic search + kibanaCésar Araújo
 
Curso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como ProgramarCurso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como ProgramarTiago Antônio da Silva
 
Busca textual com solr e sunspot no rails
Busca textual com solr e sunspot no railsBusca textual com solr e sunspot no rails
Busca textual com solr e sunspot no railsMaurício Linhares
 
Lib.SAPO.JS - Codebits2007
Lib.SAPO.JS  - Codebits2007Lib.SAPO.JS  - Codebits2007
Lib.SAPO.JS - Codebits2007Claudio Gamboa
 
Smarty Template Engine
Smarty Template EngineSmarty Template Engine
Smarty Template EngineDiego Tremper
 
Apresentação sobre postgresl - O Básico
Apresentação sobre postgresl - O BásicoApresentação sobre postgresl - O Básico
Apresentação sobre postgresl - O BásicoIsaac Maciel
 
CouchDB vs Postgres em Rails
CouchDB vs Postgres em RailsCouchDB vs Postgres em Rails
CouchDB vs Postgres em RailsJuan Maiz
 

Semelhante a Boas práticas para migração Oracle para PostgreSQL (20)

Oracle T Opgsql
Oracle T OpgsqlOracle T Opgsql
Oracle T Opgsql
 
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIOracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
 
Migração de Oracle para PostgreSQL - FISL
Migração de Oracle para PostgreSQL - FISLMigração de Oracle para PostgreSQL - FISL
Migração de Oracle para PostgreSQL - FISL
 
Solisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para PostgresqlSolisc2009 Migrando de Oracle para Postgresql
Solisc2009 Migrando de Oracle para Postgresql
 
Scala - Uma Breve (breve mesmo) Introdução
Scala - Uma Breve (breve mesmo) IntroduçãoScala - Uma Breve (breve mesmo) Introdução
Scala - Uma Breve (breve mesmo) Introdução
 
Funcionalidades Oracle
Funcionalidades OracleFuncionalidades Oracle
Funcionalidades Oracle
 
PHP - Programação para seres humanos
PHP - Programação para seres humanosPHP - Programação para seres humanos
PHP - Programação para seres humanos
 
Otimização e Escalabilidade
Otimização e EscalabilidadeOtimização e Escalabilidade
Otimização e Escalabilidade
 
nDeveloper Framework
nDeveloper FrameworknDeveloper Framework
nDeveloper Framework
 
Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)
Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)
Estripando o Elefante - (Trabalhando com extensões no PostgreSQL)
 
Fluentd/LogStash + elastic search + kibana
Fluentd/LogStash + elastic search + kibanaFluentd/LogStash + elastic search + kibana
Fluentd/LogStash + elastic search + kibana
 
Php 07 Cakephp
Php 07 CakephpPhp 07 Cakephp
Php 07 Cakephp
 
Aula 200309
Aula 200309Aula 200309
Aula 200309
 
Curso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como ProgramarCurso JavaScript - Aula de Introdução como Programar
Curso JavaScript - Aula de Introdução como Programar
 
Busca textual com solr e sunspot no rails
Busca textual com solr e sunspot no railsBusca textual com solr e sunspot no rails
Busca textual com solr e sunspot no rails
 
Lib.SAPO.JS - Codebits2007
Lib.SAPO.JS  - Codebits2007Lib.SAPO.JS  - Codebits2007
Lib.SAPO.JS - Codebits2007
 
Smarty Template Engine
Smarty Template EngineSmarty Template Engine
Smarty Template Engine
 
Apresentação sobre postgresl - O Básico
Apresentação sobre postgresl - O BásicoApresentação sobre postgresl - O Básico
Apresentação sobre postgresl - O Básico
 
Zend Framework
Zend FrameworkZend Framework
Zend Framework
 
CouchDB vs Postgres em Rails
CouchDB vs Postgres em RailsCouchDB vs Postgres em Rails
CouchDB vs Postgres em Rails
 

Mais de Fernando Ike

Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro ServiçosFernando Ike
 
(Quase) 10 anos de DevOps, e agora?
(Quase) 10 anos de DevOps, e agora? (Quase) 10 anos de DevOps, e agora?
(Quase) 10 anos de DevOps, e agora? Fernando Ike
 
Containers and Databases
Containers and DatabasesContainers and Databases
Containers and DatabasesFernando Ike
 
Infraestrutura Imutável - Agile Trends
Infraestrutura Imutável - Agile TrendsInfraestrutura Imutável - Agile Trends
Infraestrutura Imutável - Agile TrendsFernando Ike
 
Infraestrutura imutável - A base das aplicações na nuvem
Infraestrutura imutável - A base das aplicações na nuvemInfraestrutura imutável - A base das aplicações na nuvem
Infraestrutura imutável - A base das aplicações na nuvemFernando Ike
 
DevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus PartyDevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus PartyFernando Ike
 
Blameless: A culpa não é sua
Blameless: A culpa não é suaBlameless: A culpa não é sua
Blameless: A culpa não é suaFernando Ike
 
DevOps: A revolução ruidosa da TI
DevOps: A revolução ruidosa da TIDevOps: A revolução ruidosa da TI
DevOps: A revolução ruidosa da TIFernando Ike
 
Docker Swarm Cluster
Docker Swarm ClusterDocker Swarm Cluster
Docker Swarm ClusterFernando Ike
 
DevOps - Por onde começar
DevOps - Por onde começarDevOps - Por onde começar
DevOps - Por onde começarFernando Ike
 
DevOps Anti-Patterns
DevOps Anti-PatternsDevOps Anti-Patterns
DevOps Anti-PatternsFernando Ike
 
A lista do PostgerSQL Brasil caiu?
A lista do PostgerSQL Brasil caiu? A lista do PostgerSQL Brasil caiu?
A lista do PostgerSQL Brasil caiu? Fernando Ike
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucaoFernando Ike
 
Akamai Cloud Security
Akamai Cloud SecurityAkamai Cloud Security
Akamai Cloud SecurityFernando Ike
 
Management 3.0 - a vida pós-agilidade
Management 3.0 - a vida pós-agilidadeManagement 3.0 - a vida pós-agilidade
Management 3.0 - a vida pós-agilidadeFernando Ike
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida realFernando Ike
 
Docker e postgresql
Docker e postgresqlDocker e postgresql
Docker e postgresqlFernando Ike
 
Um milhao de usuários simultâneos
Um milhao de usuários simultâneosUm milhao de usuários simultâneos
Um milhao de usuários simultâneosFernando Ike
 
Banco caiu! E a gora?
Banco caiu! E a gora?Banco caiu! E a gora?
Banco caiu! E a gora?Fernando Ike
 

Mais de Fernando Ike (20)

Arquitetura de Micro Serviços
Arquitetura de Micro ServiçosArquitetura de Micro Serviços
Arquitetura de Micro Serviços
 
(Quase) 10 anos de DevOps, e agora?
(Quase) 10 anos de DevOps, e agora? (Quase) 10 anos de DevOps, e agora?
(Quase) 10 anos de DevOps, e agora?
 
Containers and Databases
Containers and DatabasesContainers and Databases
Containers and Databases
 
Infraestrutura Imutável - Agile Trends
Infraestrutura Imutável - Agile TrendsInfraestrutura Imutável - Agile Trends
Infraestrutura Imutável - Agile Trends
 
Infraestrutura imutável - A base das aplicações na nuvem
Infraestrutura imutável - A base das aplicações na nuvemInfraestrutura imutável - A base das aplicações na nuvem
Infraestrutura imutável - A base das aplicações na nuvem
 
DevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus PartyDevOps Anti-Patterns - Campus Party
DevOps Anti-Patterns - Campus Party
 
Blameless: A culpa não é sua
Blameless: A culpa não é suaBlameless: A culpa não é sua
Blameless: A culpa não é sua
 
DevOps: A revolução ruidosa da TI
DevOps: A revolução ruidosa da TIDevOps: A revolução ruidosa da TI
DevOps: A revolução ruidosa da TI
 
Docker Swarm Cluster
Docker Swarm ClusterDocker Swarm Cluster
Docker Swarm Cluster
 
DevOps - Por onde começar
DevOps - Por onde começarDevOps - Por onde começar
DevOps - Por onde começar
 
DevOps Anti-Patterns
DevOps Anti-PatternsDevOps Anti-Patterns
DevOps Anti-Patterns
 
A lista do PostgerSQL Brasil caiu?
A lista do PostgerSQL Brasil caiu? A lista do PostgerSQL Brasil caiu?
A lista do PostgerSQL Brasil caiu?
 
Container revolucao
Container revolucaoContainer revolucao
Container revolucao
 
Akamai Cloud Security
Akamai Cloud SecurityAkamai Cloud Security
Akamai Cloud Security
 
Management 3.0 - a vida pós-agilidade
Management 3.0 - a vida pós-agilidadeManagement 3.0 - a vida pós-agilidade
Management 3.0 - a vida pós-agilidade
 
Docker na vida real
Docker na vida realDocker na vida real
Docker na vida real
 
Devops
DevopsDevops
Devops
 
Docker e postgresql
Docker e postgresqlDocker e postgresql
Docker e postgresql
 
Um milhao de usuários simultâneos
Um milhao de usuários simultâneosUm milhao de usuários simultâneos
Um milhao de usuários simultâneos
 
Banco caiu! E a gora?
Banco caiu! E a gora?Banco caiu! E a gora?
Banco caiu! E a gora?
 

Boas práticas para migração Oracle para PostgreSQL