Tecnologia da Informação EmÁudio: Extensibilidade e Catálogos
Voltei, jovem! Bora continuar nossos estudos? Vem comigo! Hora de bater um papo sobre a extensibilidade e os catálogos. Ouvidos bem abertos!
Gente, o PostgreSQL é amplamente extensível, sabia? Ou seja, ele traz muitas possibilidades para que os usuários adicionem novas funcionalidades ao SGBD. Em parte, essa extensibilidade é possibilitada pelos catálogos do PostgreSQL.
O catálogo é um repositório de metadados do SGBD que contém informações sobre seus objetos como banco de dados, tabelas e colunas.
Aí, gente, esse tipo de repositório em um SGBD relacional é também formado por tabelas. Só que no lugar de armazenar os dados propriamente ditos, essas tabelas são tabelas especiais que armazenam os metadados que descrevem as estruturas do SGBD.
Aí, quando realizamos algum comando DDL, como CREATE, ALTER ou DROP, o que o SGBD faz é interpretar o comando e realizar um comando SQL na tabela correspondente do catálogo. Se executarmos um DROP TABLE, por exemplo, o SGBD irá, dentre outras tarefas, remover o registro correspondente a essa tabela no catálogo que guarda as informações de tabelas.
O PostgreSQL facilita a extensibilidade ao armazenar mais informações nos catálogos do que os SGBDs relacionais comuns. Além das informações básicas sobre bancos de dados, tabelas, colunas e outros objetos, o PostgreSQL contém uma série de catálogos que armazenam informações sobre tipos de dados, funções, métodos de acesso, dentre outras.
Essas tabelas de catálogo podem ser alteradas pelo usuário, de modo a adicionar novas funcionalidades. Por exemplo, o usuário pode adicionar um novo registro no catálogo de tipos de dados para adicionar um novo tipo ao banco de dados.
Jovem, alguns autores e SGBDs utilizam o termo catálogo para representar o conjunto de todas as tabelas que fazem parte do catálogo. Já na documentação do PostgreSQL, o termo catálogo é utilizado para se referir a cada uma dessas tabelas. Por isso usamos o termo no plural catálogos, para nos referirmos ao conjunto de todas essas tabelas.
Bora conversar sobre os catálogos? Vamos juntos então.
Pessoal, os catálogos do PostgreSQL são as tabelas que armazenam os metadados que descrevem o esquema dos bancos de dados. Esses catálogos são dinâmicos, ou seja, os comandos SQL que alteram as definições de estruturas dos bancos de dados irão refletir imediatamente essas alterações nos catálogos.
Da mesma maneira, qualquer alteração nos catálogos irá ter reflexos nas estruturas corresponden... Ler mais