Atenção: esse artigo tem uma palestra complementar. Clique e assista!

De que se trata o artigo:

Demonstração de como o PostgreSQL gerencia sua estrutura lógica. Para tanto, será explicado o conceito de tablespace no PostgreSQL, e como, por meio dele, se dá a interação entre a estrutura lógica e física. Descreveremos também o conceito de esquemas e como o SGBD procura os objetos de uma base de dados, através do caminho de procura ou path.


Para que serve:

Fornecer um material base para estudos mais aprofundados sobre o SGBD em questão, levando estudantes, profissionais da área e/ou DBAs PostgreSQL a conhecerem particularidades da sua organização lógica.


Em que situação o tema é útil:

Conhecer como é feito todo o gerenciamento da estrutura lógica de um SGBD pode ser um passo importante para ajudar na organização das informações de uma base de dados, tornando-a menos complexa e de simples entendimento e desenvolvimento.

Estrutura Lógica do PostgreSQL:

Conceitualmente, todo e qualquer banco de dados pode ser dividido em dois tipos de estruturas: física e lógica. Estas duas estruturas juntas podem ser entendidas como a parte organizacional de um banco de dados, ou seja, a forma como os objetos são organizados dentro do mesmo, para prover o armazenamento e gerenciamento dos dados.

Este artigo apresenta como o PostgreSQL funciona internamente, descrevendo a estrutura lógica do mesmo, ajudando as pessoas que trabalham com este SGBD a entenderem um pouco mais, como as informações são organizados e guardadas em suas bases de dados.

Em nosso último artigo (SQL Magazine n° 65) descrevemos a estrutura física do PostgreSQL, ou seja, como o SGBD trata da forma como os arquivos são criados, gerenciados e organizados fisicamente no sistema de arquivos do sistema operacional.

Mas não há como falar sobre a estrutura física sem descrever também a lógica, que compreende a estrutura usada para organizar os dados (tablespaces e esquemas) que podem ou não estar relacionadas com a estrutura física.

Neste artigo descreveremos inicialmente como o PostgreSQL gerencia os tablespaces, relacionando-os com a parte física do banco. Depois mostraremos como se comportam os esquemas dentro do SGBD e como os mesmos podem ser usados para facilitar as divisões dos vários objetos da base de dados. E por fim, falaremos superficialmente sobre o esquema onde é armazenado o catálogo ou dicionários de dados do PostgreSQL.

Tablespaces

A partir da versão 8.0 do PostgreSQL, foram incluídas várias funcionalidades importantes. Uma destas melhorias diz respeito ao gerenciamento dos discos, permitindo assim, selecionar os sistemas de arquivos que irão armazenar as informações e objetos das bases de dados como esquemas, tabelas e índices.

O conceito segue o mesmo princípio do Oracle, com uma diferença: um tablespace no Oracle é formado por um ou mais arquivos localizados em um determinado sistema de arquivos. Já no PostgreSQL, um tablespace é apenas um lugar, onde serão armazenados os objetos.

Com o controle em mãos do layout organizacional das bases de dados em disco, podemos usar o conceito do tablespace para:

· Melhoria de performance: O DBA pode usar o conhecimento do uso dos objetos de um banco de dados para otimizar determinados pontos em que existem problemas de performance. Pode-se, por exemplo, colocar um índice bastante acessado em um disco mais rápido. Assim como uma tabela que não é muito acessada pode ser colocada em um disco mais lento;

...

Quer ler esse conteúdo completo? Tenha acesso completo