Resumo Contexto .... .. Afazeres .... .. Falta ainda… A Evolução paquidérmica: para o alto, e avante! Evolução do PostgreSQL Leandro Guimarães Faria Corcete DUTRA 1 Comunidade Brasileira de PostgreSQL IV Conferência brasileira de PostgreSQL — 2011-11-3 . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… História Prehistória 1975 Ingres. 1985 Postgres: extensibilidade. 1995 Postgre95: SQL. 1996 PostgreSQL: estabilização. . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… História História 1997 6.1–2: chaves alternativas, índices compostos, seqüências, gatilhos, restrições de tabela. 1998 6.3–4: subseleção, visões, regras, PL/psSQL. 1999 6.5: MVCC, tabelas temporárias, CASE, INTERSECT, EXCEPT. 2000 7.0: restrições de integridade referencial, junções internas explícitas. 2001 7.1: registros de refazer, junções externas. 2002 7.2–3: esquemas, internacionalizações, abandono de OIDs. 2003 7.4: otimização. 2005 8.0–1: espaços de tabelas, pontos de salvamento, recuperação no tempo, exceções em funções, efetivação em duas fases, particionamento, índices de mapas Leandro Guimarães Faria Corcete DUTRA de pontos, papéis. PostgreSQL Br . A Evolução paquidérmica: para o alto, e avante! . . . . . Resumo Contexto .... .. Afazeres .... .. Falta ainda… História História 2006 8.2: reconstrução de índices em linha, espera a quente, desempenho 2008 8.3: busca textual, XML, tipos de enumeração, UUID. 2009 8.4: funções em janelas, permissões por colunas, restauração em paralelo, ordenação por base de dados, recursividade e expressões de tabelas. 2010 9.0: replicação, restrições de exclusão, gatilhos condicionais. 2011 9.1: replicação síncrona, ordenação por colunas, tabelas sem registro de alterações, expressões de tabelas para escrita, SE-Linux, SQL/MED, gatilhos em visões. . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… História História 2012 9.2 Replicação em cascata Busca somente por índice Tipos de intervalos Cópias de segurança a quente nas réplicas. ISO SQL participação na padronização. Caminho rápido de bloqueio ou lock fast path. . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Concorrência Produtos IBM DB2 grande porte: portar é improvável, mas usa-se GNU/Linux virtualizado. MS SQL Server: facilidade de integração com MS Windows. MySQL: facilidade de começar. Oracle: grupos de servidores, venda casada. . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Concorrência Capacidades Grupos de servidores: Postgres-XC Compatibilidade: dialetos proprietários, para facilitar migração. Oracle: PL/SQL, ” IS NULL &c: EnterpriseDB IBM DB2: SQL PSM MS SQL Server: Transact SQL . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Linguagem SQL Mapa do caminho não temos: ‘somos um projeto de programa livre, não comercial, totalmente voluntário… deixar desenvolvedores coçarem sua própria comichão’. Wiki de desenvolvimento tem ponteiros para itens abertos da versão atual e das passadas (que podem ter ficado abertos), mas costuma não estar muito atualizado. Festa de efetivação de alteração de código-fonte documentada. Lista de afazeres inclui o que foi concluído recentemente, e o que é fácil de fazer. Ponteiros dos afazeres para as próprias discussões. . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Lógico Linguagem SQL Sinônimos: apelidos para objetos. ROLLUP, CUBE, GROUPING SETS para massagear dados. Aviso de SQL fora de padrão MERGE, INSERT, REPLACE Modo novato WITH RECURSIVE… CYCLE Subconsulta LATERAL ALTER TABLESPACE Gatilhos de base ou transação Converter linguagem fora de padrão . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Lógico Tipos de dados TYPEs distintos DOMAINs que evitam comparações com outrem. GENERATED… AS IDENTITY: padrão SQL. Expressões regulares Flexibilizar enumerações renomear e apagar valores de ENUMs. JSON , JavaScript Object Notation. Várias moedas no tipo MONEY. ALTER DOMAIN Tipos lógicos . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Lógico Línguas Localização de funções TO DATE, TO TIMESTAMP. Ordenação e busca textual Múltiplos conjuntos de caracteres . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Lógico Visões, regras, integridade Visões automaticamente atualizáveis WITH CHECK OPTION Visões materializadas REFERENCES… MATCH PARTIAL . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Administração Gestão Particionamento: facilitar criação, com sintaxe similar à do Oracle. Variáveis definidas pelo usuário para configuração. Processos de usuários iniciando e encerrando com o PostgreSQL. Memória compartilhada Posix para facilitar configuração. Mudar configuração via SQL Melhorar configuração LDAP Ferramenta externa de ajuste de parâmetros inclusive custo de leitura. COPY continuável Índices de mapas de pontos permanentes. . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Administração Espaços de tabelas Quotas por espaço de tabelas. Espaços em memória para tabelas sem registro de alteração. . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br Resumo Contexto .... .. Afazeres .... .. Falta ainda… Lacunas Deferimento de verificação de restrições de integridade, tornando a manipulação de dados mais flexível. Chaves sobre visões permitindo usar o catálogo como parte da base de dados de aplicativo (entre outras coisas). Unicidade em índices como os usados em tipos de dados geométricos. Asserções restrições de integridade de base de dados. Tuas idéias! . Leandro Guimarães Faria Corcete DUTRA A Evolução paquidérmica: para o alto, e avante! . . . . . PostgreSQL Br