PostgreSQL é um sistema de gerenciamento de banco de dados relacional orientado a objetos e gratuito, lançado sob a licença PostgreSQL, semelhante ao BSD ou MIT.
Como muitos outros projetos de código aberto, O desenvolvimento do PostgreSQL não é gerenciado por uma empresa ou pessoa, mas é executado por uma comunidade de desenvolvedores que trabalham de forma abnegada, altruísta, livre ou apoiada por organizações comerciais.
Algumas de suas principais características são:
Alta freqüência
Através de um sistema denominado MVCC (Multi-Version Concurrent Access, por sua sigla em inglês) PostgreSQL permite que enquanto um processo grava em uma tabela, outros acessam a mesma tabela sem a necessidade de bloqueios. Cada usuário obtém uma visão consistente.
PostgreSQL fornece suporte nativo para:
- Números de precisão arbitrária.
- Texto de comprimento ilimitado.
- Figuras geométricas (com uma variedade de funções associadas).
- Endereços IP (IPv4 e IPv6).
- Blocos de endereço de estilo CIDR.
- Endereços MAC.
Matrizes.
Adicionalmente os usuários podem criar seus próprios tipos de dados, que podem ser totalmente indexáveis graças à infraestrutura GiST do PostgreSQL. Alguns exemplos são os tipos de dados GIS criados pelo projeto PostGIS.
Sobre a nova versão do PostgreSQL 11.0
Há poucos dias foi lançada a nova versão do PostgreSQL que atingiu sua versão PostgreSQL 11 com a qual adiciona novos recursos e, acima de tudo, várias correções de bugs.
A principal novidade é que eles focaram no gerenciamento de bancos de dados com grande volume de dados.
Partição aprimorada
PostgreSQL já permite particionamento há muito tempo, trata-se de armazenar dados em várias tabelas separadas que estão logicamente em uma única tabela.
O usuário do banco de dados não vê este layout e isso torna possível armazenar dados em vários sistemas de arquivos com características diferentes de acordo com os dados. Por exemplo, os dados recentes são armazenados no SSD e os dados mais antigos são armazenados no disco rígido.
Foi possível particionar em listas de dados ou intervalos. Agora é possível particionar um hash de chave para randomizar os dados.
Isso torna possível distribuir operações de leitura e gravação em vários armazenamentos.
As chaves primárias e externas, bem como os índices e gatilhos, agora podem ser declarados no nível da tabela primária e serão refletidas em todas as tabelas membro da partição.
PostgreSQL agora você também pode alterar os dados da partição automaticamente se a chave de distribuição for alterada.
O desempenho de leitura de tabelas particionadas também foi aprimorado com uma nova estratégia de remoção de partição.
A característica perturbar agora disponível para tabelas particionadas.
Disponibilidade de transações em procedimentos armazenados
Os procedimentos armazenados estão disponíveis no PostgreSQL há muito tempo, mas não foi possível criar transações lá. Agora é possível.
Performance melhorada
Agora várias operações podem ser feitas em paralelo para aproveitar as vantagens dos muitos núcleos dos processadores atuais.
Portanto, as tabelas particionadas podem ser lidas em paralelo, mas também quando uma consulta SELECIONE inclui uma cláusula UNIÃO .
A criação de índices também ocorre em paralelo, assim como outros comandos da Data Definition Language (DDL) , Como CRIAR TABELA o CRIE VISÃO MATERIALIZADA.
Construir em movimento
Um compilador de tempo está disponível. Você pode otimizar consultas complexas para melhorar sua velocidade de execução. O PostgreSQL usa o compilador LLVM para este propósito.
Para ativá-lo, eles devem adicioná-lo jit = onal arquivo de configuração ou definir variável de sessão SET jit = on.
Simplificação = velocidade
Não há necessidade de reescrever toda a tabela quando a chamada é feita ALTER TABLE… ADD COLUMN… DEFAULT … Com um valor padrão que não é NULL. Isso melhora muito a velocidade de execução desse comando, se a tabela for grande.
Experiência do Usuário
palavras-chave saída de qualidade eles agora são reconhecidos pela interface de linha de comando (psql) para concluir o processo, além de \ q.
Para obter esta nova versão você pode visitar o seguinte link.