Entenda o que é Esquema de Banco de Dados - Programadores Brasil
Tutoriais

Entendendo o que é um Esquema de Banco de Dados

4 Mins read

O termo “esquema de banco de dados“, ou “schema de Banco de Dados” pode se referir a uma representação visual de um banco de dados, a um conjunto de regras que governam um banco de dados ou a todo o conjunto de objetos pertencentes a um determinado usuário. Continue lendo para descobrir mais sobre este conceito e como eles é utilizado.

O que é um esquema de banco de dados?

Um esquema de banco de dados representa a configuração lógica de todo ou parte de um banco de dados relacional. Ele pode existir tanto como uma representação visual quanto como um conjunto de fórmulas conhecidas como restrições de integridade que governam um banco de dados. Essas fórmulas são expressas em uma linguagem de definição de dados, como SQL. Como parte de um dicionário de dados, o esquema indica como as entidades que compõem o banco de dados se relacionam entre si, incluindo tabelas, visualizações, procedimentos armazenados e muito mais.

Normalmente, um designer de banco de dados cria um schema de banco de dados para ajudar os programadores cujo software irá interagir com o banco de dados. O processo de criação de um esquema é chamado modelagem de dados. Ao seguir a abordagem de três esquemas para projeto de banco de dados, esta etapa seguiria a criação de um esquema conceitual. Os esquemas conceituais enfocam as necessidades de informação de uma organização, e não a estrutura de um banco de dados.

Veja também: [+] Pacote Full Stack para Iniciantes em Programação.

Existem dois tipos principais de esquema de banco de dados:

  1. Um esquema de banco de dados lógico transmite as restrições lógicas que se aplicam aos dados armazenados. Ele pode definir restrições de integridade, visualizações e tabelas.
  2. Um esquema de banco de dados físico mostra como os dados são armazenados fisicamente em um sistema de armazenamento em termos de arquivos e índices.

No nível mais básico, um schema de banco de dados indica quais tabelas ou relações constituem o banco de dados, bem como os campos incluídos em cada tabela. Assim, os termos diagrama de esquema e diagrama entidade-relacionamento são freqüentemente intercambiáveis.

Esquema de banco de dados em um Oracle

No sistema de banco de dados Oracle, o termo esquema de banco de dados , também conhecido como “esquema SQL”, tem um significado diferente. Aqui, um banco de dados pode ter vários esquemas (ou “esquemas”, se você quiser). Cada um contém todos os objetos criados por um usuário de banco de dados específico. Esses objetos podem incluir tabelas, visualizações, sinônimos e muito mais. Alguns objetos não podem ser incluídos em um esquema, como usuários, contextos, funções e objetos de diretório.

Os usuários podem ter acesso para fazer login em esquemas individuais, caso a caso, e a propriedade é transferível. Como cada objeto está associado a um esquema específico, que serve como uma espécie de namespace, é útil fornecer alguns sinônimos, que permitem que outros usuários acessem esse objeto sem primeiro se referir ao esquema ao qual ele pertence.

Esses esquemas não indicam necessariamente as maneiras como os arquivos de dados são armazenados fisicamente. Em vez disso, os objetos de esquema são armazenados logicamente em um espaço de tabela. O administrador do banco de dados pode especificar quanto espaço atribuir a um determinado objeto em um arquivo de dados.

Finalmente, os esquemas e espaços de tabela não necessariamente se alinham perfeitamente: objetos de um esquema podem ser encontrados em vários espaços de tabela, enquanto um espaço de tabela pode incluir objetos de vários esquemas.

Veja também: [+] Pacote Full Stack para Iniciantes em Programação.

Instância de banco de dados ou esquema?

Esses termos, embora relacionados, não significam a mesma coisa. Um schema de banco de dados é um esboço de um banco de dados planejado. Na verdade, ele não contém nenhum dado.

Uma instância de banco de dados, por outro lado, é um instantâneo de um banco de dados como ele existia em um determinado momento. Assim, as instâncias de banco de dados podem mudar com o tempo, enquanto um schema de banco de dados geralmente é estático, uma vez que é difícil mudar a estrutura de um banco de dados depois que ele está operacional.

Esquemas e instâncias de banco de dados podem afetar uns aos outros por meio de um sistema de gerenciamento de banco de dados (DBMS). O SGBD certifica-se de que cada instância do banco de dados está em conformidade com as restrições impostas pelos designers do banco de dados no esquema do banco de dados.

Requisitos de integração de esquema

Pode ser útil integrar várias fontes em um único esquema. Certifique-se de que esses requisitos sejam atendidos para uma transição perfeita:

Preservação de sobreposição

Cada elemento sobreposto nos esquemas que você está integrando deve estar em uma tabela de esquema do banco de dados.

Preservação de sobreposição estendida

Elementos que aparecem apenas em uma fonte, mas que estão associados a elementos sobrepostos, devem ser copiados para o esquema de banco de dados resultante.

Normalização

Relacionamentos e entidades independentes não devem ser agrupados na mesma tabela no esquema do seu banco de dados.

Minimalidade

É ideal se nenhum dos elementos em qualquer uma das fontes for perdido.

Tipos de esquema

O tipo estrela amplamente usado também é o mais simples. Nele, uma ou mais tabelas de fatos são vinculadas a qualquer número de tabelas dimensionais. É melhor para lidar com consultas simples.

O tipo floco de neve relacionado também é usado para representar um banco de dados multidimensional. Nesse padrão, no entanto, as dimensões são normalizadas em várias tabelas separadas, criando o efeito expansivo de uma estrutura semelhante a um floco de neve.


Deixe o seu comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *