• PostgreSQL 9.1 com Replicação Síncrona

    O PostgreSQL traz uma inovação para a sua versão 9.1: a replicação síncrona. Isso garante que, para cada operação de escrita, o master (mestre) espera até que pelo menos um nó slave (escravo) tenha escrito os dados para seu log de ​​transações. Este aumento na confiabilidade está no custo dos tempos de resposta mais longos, mas agora pode ser limitado a transações individuais. Enquanto o superusuário costumava ser o único que poderia lançar a replicação, o novo privilégio de replicação pode ser atribuído a qualquer usuário ou função.

    Há também introdução de "unlogged tables", para o qual o servidor não grava dados em logs de transação, tornando-os uma espécie de buffer storage rápido. Pela primeira vez, PostgreSQL 9.1 permite que a ordem de classificação para strings ("agrupamento") sejam determinadas separadamente para cada banco de dados, tabela e coluna. Até agora, este valor foi definido para o servidor inteiro.

    Expressões de tabela comuns, agora podem ser utilizadas por escrito em instruções SQL. Dessa forma, o wiki traz um exemplo muito simples de remover todos os registros de dados contendo "hello" a partir de uma tabela, e colocá-los em outra:

    Código :
    WITH deleted AS
    (DELETE FROM test_trgm
    WHERE text_data like '%hello%'
    RETURNING text_data)
    INSERT INTO old_text_data SELECT * FROM deleted;

    Todas as mudanças implementadas na versão 9.1 do PostgreSQL estão contidas em suas notas de lançamento. Como acontece habitualmente, fontes e versões executáveis ​​(para FreeBSD, Linux, Mac OS X, Solaris e Windows) estão disponíveis a partir do projeto (área de download).


    Saiba Mais:

    [1] PostgreSQL 9.1 http://www.postgresql.org/docs/9.1/static/release-9-1.html
    [2] Download do PostgreSQL 9.1 http://www.postgresql.org/ftp/source/v9.1.0/