A
“Metamorfose
 Ambulante”
 do Postgres



      por Fábio Telles Rodriguez
           03 de outubro de 2012
Como tudo começou...
● 1970 – IBM - Teoria Relacional por E. F. Codd
● 1973 – IBM – Começa o desenvolvimento do


System R (System Relational)
  ● Primeira implementação da teoria relacional;

  ● Desenvolvimento do SQL;

  ● Publicação de documentos descrevendo o


    System R;
●1974 – Berkeley – Desenvolvimento do Ingres


(INteractive Graphics REtrieval System)

                                         por Fábio Telles Rodriguez
                                              03 de outubro de 2012
A primeira mutação
● 1982: Michael Stonebraker sai de Berkeley para
comercializar o Ingres;
● 1985: Stonebraker volta para Berkeley para


iniciar o Postgres (Post Ingres)
  ● Tipos de dados e domínios definidos pelo


    usuário;
  ● Arrays;

  ● Tabelas hierárquicas;

  ● Substituiu o QUEL pelo PostQUEL...




                                        por Fábio Telles Rodriguez
                                             03 de outubro de 2012
A primeira mutação

● 1989 – Primeira versão do Postgres;
● 1994 - Postgres 4.2 – Última versão lançada em


  Berkeley;
● 1995 - Postgres95 – Versão lançada por alunos


recém-graduados de Berkeley;
 ● Substituição do PostQUEL pelo SQL;

 ● Subconsultas;




                                        por Fábio Telles Rodriguez
                                             03 de outubro de 2012
A segunda mutação...
●   1996 – PostgreSQL 6.0 - Primeira versão lançada
    como Software Livre, fora de Berkeley;
    ● Primeiro servidor do projeto em Hub.org;




                                          por Fábio Telles Rodriguez
                                               03 de outubro de 2012
A segunda mutação...




                   por Fábio Telles Rodriguez
                        03 de outubro de 2012
●   De 1997 a 2007 – PostgreSQL 6.0, 6.1, 6.2,
    6.3, 6.4, 6.5, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1,
    8.2
    ● PL/CTL, PL/Python, PL/Perl, PL/pgSQL;

    ● Compatibilidade com SQL;

    ● Porte nativo para Windows;

    ● Gborg, pgFoundry;

    ● 1º PGCon (Congresso anual);

    ● fsync, synchronous_commit,


       full_page_writes


                                            por Fábio Telles Rodriguez
                                                 03 de outubro de 2012
A Metamorfose Ambulante
●   2008 – PostgreSQL 8.3
    ● Salto de performance;

    ● Fim dos CASTs implícitos;

    ● UUID, XML, ENUM, Arrays de tipos


       compostos;
    ● Full Text Search;

●   2009 – PostgreSQL 8.4
    ● Window Functions, CTE




                                     por Fábio Telles Rodriguez
                                          03 de outubro de 2012
A Metamorfose Ambulante
●    2010 – PostgreSQL 9.0
     ● Streaming Replication;

     ● Melhorias no Listen/Notify e no Hstore;

●   2011 – PostgreSQL 9.1
     ● Extensions (PGXN);

     ● Foreign Tables;

     ● Unlogged Tables;

●   2012 – PostgreSQL 9.2
     ● Range types, JSON, PLV8;

     ● Postgres-XC 1.0 é lançado




                                          por Fábio Telles Rodriguez
                                               03 de outubro de 2012
Extensões




 por Fábio Telles Rodriguez
      03 de outubro de 2012
Foreign Data Wrappers


● Infraestrutura para conexão com
  outras fontes de dados;
● Completamente transparente para a

  aplicação;
● Qualquer um pode construir seu

  próprio plugin em horas;
● Alguns já criados: oracle, mysql, odbc,

  couchdb, ldap, twitter, web services,
  Amazon S3, etc;
                                            por Fábio Telles Rodriguez
                                                 03 de outubro de 2012
Dá até para usar GPU c/ FDW
PGStrom: 10x a 20x mais rápido
      http://wiki.postgresql.org/wiki/PGStrom




                                                por Fábio Telles Rodriguez
                                                     03 de outubro de 2012
Comunidade Vibrante
● Novas versões lançadas anualmente

● 17 listas por e-mail + 42 listas regionais

● Acesso direto e on-line aos

  desenvolvedores via IRC
● Dezenas de eventos exclusivos de postgres

  todos os anos. Em 2011 foram 6 só no
  Brasil
● Novos artigos nos planetas diariamente

● Amigável para novos usuários e novos

  desenvolvedores
                                   por Fábio Telles Rodriguez
                                        03 de outubro de 2012
Sociedade Alternativa




             por Fábio Telles Rodriguez
                  03 de outubro de 2012
SIM, Software Livre tem Suporte
● Você pode contar com o suporte da
  comunidade
● Você pode escolher

● Você pode trocar de empresa

● Você pode encomendar novas

  funcionalidades no Postgres para você
● Você não precisa pagar um suporte para ter

  acesso à documentação e os últimos patches


                                    por Fábio Telles Rodriguez
                                         03 de outubro de 2012
Ser maluco não é ser burro




                  por Fábio Telles Rodriguez
                       03 de outubro de 2012
Em resumo
● Bancos de Dados Objeto-Relacional nunca foram muito bem
definidos, já a teoria relacional sim.
   ● Isto não nos impede de criar extensões não relacionais

     para resolver problemas complexos;
● NoSQL contém uma salada de definições, boa parte delas

não são tecnologias novas;
   ● Você pode abrir mão do lado transacional para todo o

     cluster (fsync off) ou apenas para uma tabela (unlogged
     table);
   ● Você pode utilizar tipos não estruturados também;

   ● Você Vpode usar um DataWraper para a sua base NoSQL




                                                por Fábio Telles Rodriguez
                                                     03 de outubro de 2012
OBRIGADO

Dúvidas, sugestões, correções,
  indignações e cervejas são
          bem vindas!

  Fábio Telles Rodriguez,
Timbira: http://timbira.com.br
          SAVEPOINT:
 http://tellesr.wordpress.com/
             ● e-mail:

       telles@timbira.com.br




                por Fábio Telles Rodriguez
                     03 de outubro de 2012

Mais conteúdo relacionado

PDF
PostgreSQL Wonderland TDC-SP 2015
ODP
Metamorfose ambulante
PDF
Metamorfose 2ª fase (mudança de valores) Romanos 12
PPTX
Trabalho de filosofia pronto
PDF
Postgres Wonderland - PGDay CE2013
ODP
Postgres Wonderland - PGDay Cascavél 2013
PDF
Palestra nosql
PDF
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
PostgreSQL Wonderland TDC-SP 2015
Metamorfose ambulante
Metamorfose 2ª fase (mudança de valores) Romanos 12
Trabalho de filosofia pronto
Postgres Wonderland - PGDay CE2013
Postgres Wonderland - PGDay Cascavél 2013
Palestra nosql
Oracle para PostgreSQL: Conseguir migrar e não parar UTI

Semelhante a Postgres, a "Metamorfose Ambulante" (20)

PDF
Bancos de dados open source
ODP
Persistência Poliglota, Big Data e NoSQL FISL 15
PPTX
Big data da teoria à prática
PPT
PostgreSQL
KEY
Utilizando NoSQL no desenvolvimento de soluções inteligentes
PDF
Programação Orientada a Aspectos
PDF
PHP Turbinado com CodeIgniter - Conisli 2011
PPS
Da introdução à prática com Drools Expert e Drools Flow
PDF
Frameworks Web e Python
PDF
Apresentacao redis
PDF
Migracao colaborativa
PPT
PDF
PostgreSQL: O melhor banco de dados Universo
PDF
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
PDF
NoSql e NewSql
PPTX
Fazendo barba, cabelo e bigode com REDIS
PPTX
Fazendo barba, cabelo e bigode com REDIS
PPTX
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
PDF
Solisc2009 Migrando de Oracle para Postgresql
PDF
Por que PostgreSQL?
Bancos de dados open source
Persistência Poliglota, Big Data e NoSQL FISL 15
Big data da teoria à prática
PostgreSQL
Utilizando NoSQL no desenvolvimento de soluções inteligentes
Programação Orientada a Aspectos
PHP Turbinado com CodeIgniter - Conisli 2011
Da introdução à prática com Drools Expert e Drools Flow
Frameworks Web e Python
Apresentacao redis
Migracao colaborativa
PostgreSQL: O melhor banco de dados Universo
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
NoSql e NewSql
Fazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDIS
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
Solisc2009 Migrando de Oracle para Postgresql
Por que PostgreSQL?
Anúncio

Mais de Fabio Telles Rodriguez (20)

PDF
Data Hero: Sua carreira na área de dados
PPTX
Postgres level up
PDF
Explain this!
PDF
High concurrency with Postgres
PDF
Aplicações 10x a 100x mais rápida com o postgre sql
PDF
Novidades do PostgreSQL 10
PDF
Migre seu banco de dados para a nuvem. Pergunte-me como!
PDF
Trabalhando com Logs no PostgreSQL
PDF
PostgreSQL Rock Star
PDF
Oracle x PostgreSQL
PDF
Trabalhando com Logs no PostgreSQL
PDF
Postgres Big data
PDF
Postgres Chainsaw Massacre
PDF
Postgres Tuning
PDF
Postgres Wonderland - Campus Party 2013
PDF
Alta Concorrência com Postgres
PDF
Alta Concorrência com Postgres
ODP
Fazendo uma manada de elefantes passar por baixo da porta
PDF
Discos & Cia em PostgreSQL
ODP
Conceitos E Aplicações
Data Hero: Sua carreira na área de dados
Postgres level up
Explain this!
High concurrency with Postgres
Aplicações 10x a 100x mais rápida com o postgre sql
Novidades do PostgreSQL 10
Migre seu banco de dados para a nuvem. Pergunte-me como!
Trabalhando com Logs no PostgreSQL
PostgreSQL Rock Star
Oracle x PostgreSQL
Trabalhando com Logs no PostgreSQL
Postgres Big data
Postgres Chainsaw Massacre
Postgres Tuning
Postgres Wonderland - Campus Party 2013
Alta Concorrência com Postgres
Alta Concorrência com Postgres
Fazendo uma manada de elefantes passar por baixo da porta
Discos & Cia em PostgreSQL
Conceitos E Aplicações
Anúncio

Último (17)

PDF
Banco de Dados 2atualização de Banco de d
PPTX
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
PPTX
Tipos de servidor em redes de computador.pptx
PPTX
Analise Estatica de Compiladores para criar uma nova LP
PPT
Conceitos básicos de Redes Neurais Artificiais
PDF
Jira Software projetos completos com scrum
PPTX
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
PPT
Aula de Engenharia de Software principais caracteristicas
PDF
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
PDF
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
PPTX
ccursoammaiacursoammaiacursoammaia123456
PDF
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
PDF
Processos no SAP Extended Warehouse Management, EWM100 Col26
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PPTX
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
PDF
Processamento da remessa no SAP ERP, SCM610 Col15
PDF
SEMINÁRIO DE IHC - A interface Homem-Máquina
Banco de Dados 2atualização de Banco de d
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
Tipos de servidor em redes de computador.pptx
Analise Estatica de Compiladores para criar uma nova LP
Conceitos básicos de Redes Neurais Artificiais
Jira Software projetos completos com scrum
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
Aula de Engenharia de Software principais caracteristicas
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
ccursoammaiacursoammaiacursoammaia123456
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
Processos no SAP Extended Warehouse Management, EWM100 Col26
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
Processamento da remessa no SAP ERP, SCM610 Col15
SEMINÁRIO DE IHC - A interface Homem-Máquina

Postgres, a "Metamorfose Ambulante"

  • 1. A “Metamorfose Ambulante” do Postgres por Fábio Telles Rodriguez 03 de outubro de 2012
  • 2. Como tudo começou... ● 1970 – IBM - Teoria Relacional por E. F. Codd ● 1973 – IBM – Começa o desenvolvimento do System R (System Relational) ● Primeira implementação da teoria relacional; ● Desenvolvimento do SQL; ● Publicação de documentos descrevendo o System R; ●1974 – Berkeley – Desenvolvimento do Ingres (INteractive Graphics REtrieval System) por Fábio Telles Rodriguez 03 de outubro de 2012
  • 3. A primeira mutação ● 1982: Michael Stonebraker sai de Berkeley para comercializar o Ingres; ● 1985: Stonebraker volta para Berkeley para iniciar o Postgres (Post Ingres) ● Tipos de dados e domínios definidos pelo usuário; ● Arrays; ● Tabelas hierárquicas; ● Substituiu o QUEL pelo PostQUEL... por Fábio Telles Rodriguez 03 de outubro de 2012
  • 4. A primeira mutação ● 1989 – Primeira versão do Postgres; ● 1994 - Postgres 4.2 – Última versão lançada em Berkeley; ● 1995 - Postgres95 – Versão lançada por alunos recém-graduados de Berkeley; ● Substituição do PostQUEL pelo SQL; ● Subconsultas; por Fábio Telles Rodriguez 03 de outubro de 2012
  • 5. A segunda mutação... ● 1996 – PostgreSQL 6.0 - Primeira versão lançada como Software Livre, fora de Berkeley; ● Primeiro servidor do projeto em Hub.org; por Fábio Telles Rodriguez 03 de outubro de 2012
  • 6. A segunda mutação... por Fábio Telles Rodriguez 03 de outubro de 2012
  • 7. De 1997 a 2007 – PostgreSQL 6.0, 6.1, 6.2, 6.3, 6.4, 6.5, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2 ● PL/CTL, PL/Python, PL/Perl, PL/pgSQL; ● Compatibilidade com SQL; ● Porte nativo para Windows; ● Gborg, pgFoundry; ● 1º PGCon (Congresso anual); ● fsync, synchronous_commit, full_page_writes por Fábio Telles Rodriguez 03 de outubro de 2012
  • 8. A Metamorfose Ambulante ● 2008 – PostgreSQL 8.3 ● Salto de performance; ● Fim dos CASTs implícitos; ● UUID, XML, ENUM, Arrays de tipos compostos; ● Full Text Search; ● 2009 – PostgreSQL 8.4 ● Window Functions, CTE por Fábio Telles Rodriguez 03 de outubro de 2012
  • 9. A Metamorfose Ambulante ● 2010 – PostgreSQL 9.0 ● Streaming Replication; ● Melhorias no Listen/Notify e no Hstore; ● 2011 – PostgreSQL 9.1 ● Extensions (PGXN); ● Foreign Tables; ● Unlogged Tables; ● 2012 – PostgreSQL 9.2 ● Range types, JSON, PLV8; ● Postgres-XC 1.0 é lançado por Fábio Telles Rodriguez 03 de outubro de 2012
  • 10. Extensões por Fábio Telles Rodriguez 03 de outubro de 2012
  • 11. Foreign Data Wrappers ● Infraestrutura para conexão com outras fontes de dados; ● Completamente transparente para a aplicação; ● Qualquer um pode construir seu próprio plugin em horas; ● Alguns já criados: oracle, mysql, odbc, couchdb, ldap, twitter, web services, Amazon S3, etc; por Fábio Telles Rodriguez 03 de outubro de 2012
  • 12. Dá até para usar GPU c/ FDW PGStrom: 10x a 20x mais rápido http://wiki.postgresql.org/wiki/PGStrom por Fábio Telles Rodriguez 03 de outubro de 2012
  • 13. Comunidade Vibrante ● Novas versões lançadas anualmente ● 17 listas por e-mail + 42 listas regionais ● Acesso direto e on-line aos desenvolvedores via IRC ● Dezenas de eventos exclusivos de postgres todos os anos. Em 2011 foram 6 só no Brasil ● Novos artigos nos planetas diariamente ● Amigável para novos usuários e novos desenvolvedores por Fábio Telles Rodriguez 03 de outubro de 2012
  • 14. Sociedade Alternativa por Fábio Telles Rodriguez 03 de outubro de 2012
  • 15. SIM, Software Livre tem Suporte ● Você pode contar com o suporte da comunidade ● Você pode escolher ● Você pode trocar de empresa ● Você pode encomendar novas funcionalidades no Postgres para você ● Você não precisa pagar um suporte para ter acesso à documentação e os últimos patches por Fábio Telles Rodriguez 03 de outubro de 2012
  • 16. Ser maluco não é ser burro por Fábio Telles Rodriguez 03 de outubro de 2012
  • 17. Em resumo ● Bancos de Dados Objeto-Relacional nunca foram muito bem definidos, já a teoria relacional sim. ● Isto não nos impede de criar extensões não relacionais para resolver problemas complexos; ● NoSQL contém uma salada de definições, boa parte delas não são tecnologias novas; ● Você pode abrir mão do lado transacional para todo o cluster (fsync off) ou apenas para uma tabela (unlogged table); ● Você pode utilizar tipos não estruturados também; ● Você Vpode usar um DataWraper para a sua base NoSQL por Fábio Telles Rodriguez 03 de outubro de 2012
  • 18. OBRIGADO Dúvidas, sugestões, correções, indignações e cervejas são bem vindas! Fábio Telles Rodriguez, Timbira: http://timbira.com.br SAVEPOINT: http://tellesr.wordpress.com/ ● e-mail: [email protected] por Fábio Telles Rodriguez 03 de outubro de 2012