Conceitos E Aplicações
Click here to load reader
-
Upload
fabio-telles-rodriguez -
Category
Technology
-
view
857 -
download
4
description
Transcript of Conceitos E Aplicações
por Fábio Telles28 de Abril de 2009
PostgreSQLConceitos e Aplicações
por Fábio Telles28 de Abril de 2009
Histórico
60s● CODASYL● IBM IMS70s● ADABAS● Teoria Relacional (Codd)
● IBM System R (DB2)● Berkeley Ingres● Oracle
por Fábio Telles28 de Abril de 2009
Histórico
80s● System R DB2→● Ingres CA Ingres, Sybase, Informix, SQL →Server, Interbase, Postgres
● Teradata● SQL 86, 8990s● ISO SQL 92, 99● Access, MySQL
por Fábio Telles28 de Abril de 2009
Postgres
19861994: Postgres● Michael Stonebraker, Berkeley● Evolução do Ingres com idéias ObjetoRelacional1995: Postgres 95● Andrew Yu and Jolly Chen● Inclusão do SQL1996 em diante: PostgreSQL● Desenvolvimento fora de Berkeley por uma comunidade
por Fábio Telles28 de Abril de 2009
Pontos Fortes
● Suporte não é exclusivo do fornecedor;● Desenvolvimento ativo;● Bugs são realmente conhecidos;● Boa documentação;● Bom suporte da comunidade;● Conformidade total com ACID;● Conformidade com SQL;● Extensível ;● Multiplataforma;
por Fábio Telles28 de Abril de 2009
Pontos Fracos?
● Não existe suporte corporativo oficial;● Não existe certificação;● Não existem boas ferramentas gráficas;● Não é estável;● Instável em Windows;● Baixa performance (lento);● Não tem uma campanha de marketing agressiva.
por Fábio Telles28 de Abril de 2009
Sim, pontos fracos
● Não há soluções de replicação no core;● Particionamento ainda precário (melhor no 8.5)● Não há transações autônomas em PL;● Vacuum degrada performance em OLTP em grande
escala (diminuindo, mas ainda significativo);● Não há uma boa ferramenta de monitoramento gráfico;● Não tem backup incremental;● Não é possível fazer HOT Backup físico por
tablespace;● Não existem gatilhos de sistema.
por Fábio Telles28 de Abril de 2009
em ambiente OLTP● MVCC;● Tablespaces;● Particionamento de tabelas (melhorias previstas
para 8.5);● Common Tables Expressions e recursividade;● PL/Proxy (Cluster Shared Nothing)● Gatilhos;● PL/pgSQL, PL/Python, PL/Perl, PL/Tcl, ...● Sequências;● Suporte a Kerberos, LDAP, etc.
por Fábio Telles28 de Abril de 2009
em ambiente BI● Índices parciais e com expressões (bitmap previsto para 8.5);
● Visões;● Copy com suporte a CSV;● Subconsultas;● Windowing Functions;● PGPool II;● Visões Materializadas (previsto para 8.5)
por Fábio Telles28 de Abril de 2009
em ambiente WEB● Pool de conexões com PGPool ou PGBouncer;
● XML;● Suporte a localização e internacionalização;● Suporte nativo a SSL;● Full Text Search
por Fábio Telles28 de Abril de 2009
Alta Disponibilidade● Point In Time Recovery;● Warm Stand By (Hot Stand By previsto para 8.5);
● Hot Backup;● Slony, PGPool, PGCluster, etc;
por Fábio Telles28 de Abril de 2009
Segurança● pg_hba.conf;● Configurações padrões são seguras;● Dollar Quoting;● MD5, SHA1;● Várias opções para criar o usuário;● Uso de visões, gatilhos e funções para limitar acesso a dados;
● SE PostgreSQL;● Várias opções de logs;
por Fábio Telles28 de Abril de 2009
Migração● Aderência ao padrão SQL;● Existência de funções com sintaxe compatíveis;
● DBILink;● Information Schema;● ora2pg, my2pg, dbf2pg, etc.
por Fábio Telles28 de Abril de 2009
OBRIGADO
Dúvidas, sugestões, correções, indignações e cervejas são bem vindas!
Fábio Telles Rodriguez,
SAVEPOINT: http://www.midstorm.org/~telles email: [email protected]