BT

PostgreSQL 9.3: Melhor suporte a JSON e Streaming independente de arquitetura

por Marcelo Costa em 17 Set 2013 |

Lançado no dia 9 de setembro, a versão mais recente do sistema gerenciador de banco de dados de código livre PostgreSQL 9.3. Entre as principais melhorias, destacam-se o novo suporte a JSON, melhor indexação para expressões regulares, possibilidade de escrita em tabelas externas (FWD) e streaming independente de arquitetura.

A funcionalidade que possibilita a escrita em tabelas esternas (FDW), a partir desta versão fornece uma maneira de acessar fontes de dados externas de dentro do PostgreSQL usando apenas SQL. Na implementação original, essa operação permitia apenas acesso de leitura. Este novo recurso permite integrar fontes de dados externas com dados internos. Com o novo FDW é possível visualizar as tabelas de um outro banco de dados de forma transparente, como se fosse uma tabela interna.

Esta nova versão também trouxe recursos extras para melhorar a confiabilidade e disponibilidade, começando com o suporte de failover rápido que promete trocas rápidas a partir de um banco de dados mestre para um banco de dados de réplica.

Como foi publicado no InfoQ Brasil, as verificações em páginas de dados foram adicionadas para alertar os administradores sobre problemas, como a falta de espaço em disco ou dados corrompidos. Uma outra melhoria no suporte a failover é o chamado Streaming-Only Remastering, uma técnica que propõe tornar mais fácil e mais rápido reconfigurar réplicas em cascata após um failover.

O streaming independente de arquitetura permite realizar backups de bases de dados (usando pg_basebackup) e arquivamento de log (usando pg_receivexlog) entre diferentes sistemas operacionais e arquiteturas de hardware. (Note que ainda é necessário a existência de uma mesma arquitetura de dados para restaurar os backups). Essa funcionalidade é útil, por exemplo, no uso com os servidores de backup centralizado.

A maior novidade para os desenvolvedores é a adição de um construtor/extrator de JSON. O tipo de dados JSON e as suas funções de apoio para a conversão de linhas e matrizes foram introduzidos na versão 9.2 do PostgreSQL. Nesta nova versão, são adicionados operadores dedicados, mais funções, e um parser foi exposto para uso por outros módulos, tais como extensões para uso com uma API.

Também foi adicionado suporte a Join lateral. Isto significa que ao escrever uma consulta onde seja possível especificar colunas de uma cláusula FROM, agora é possível escrever uma subconsulta que faça referência a essas colunas.

Outra adição interessante é o conceito chamado de Tarefas de Background Definidas pelo Usuário. Essa nova funcionalidade permite desenvolver módulos que sejam registrados como "processos de trabalho em background", para que efetivamente funcionem como processos de servidor personalizados. Com isso, é possível monitorar a atividade do servidor, ou mesmo escrever seus próprios gerenciadores de tarefas, manipuladores de solicitação, processadores paralelos ou ferramentas de filas. A ideia é tornar possível usar o PostgreSQL como coordenador de carga de trabalho. Segundo as notas de lançamento, um exemplo dessa funcionalidade foi liberado na forma de Mongres, que trata-se de uma tarefa em background que aceita consultas MongoDB, realiza a interpretação e passa para PostgreSQL .

Mais detalhes sobre as novas funcionalidades podem ser consultados diretamente no Wiki do projeto PostgreSQL 9.3.

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber menssagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber menssagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber menssagens dessa discussão

Dê sua opinião

Conteúdo educacional

Feedback geral
Bugs
Publicidade
Editorial
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2013 C4Media Inc.
Política de privacidade
BT