Independência de dados em DBMS: física e lógica com exemplos

O que é independência de dados do SGBD?

A Independência de Dados é definida como uma propriedade do SGBD que ajuda você a alterar o esquema do banco de dados em um nível de um sistema de banco de dados sem precisar alterar o esquema no próximo nível superior. A independência de dados ajuda você a manter os dados separados de todos os programas que os utilizam.

Você pode usar esses dados armazenados para computação e apresentação. Em muitos sistemas, a independência de dados é uma função essencial para os componentes do sistema.

Tipos de independência de dados

In DBMS existem dois tipos de independência de dados

  1. Independência física de dados
  2. Independência lógica de dados.

Níveis de banco de dados

Antes de aprendermos sobre independência de dados, é importante relembrar os níveis de banco de dados. O banco de dados possui 3 níveis conforme mostrado no diagrama abaixo

  1. Físico/Interno
  2. Conceitual
  3. Externo
Níveis de banco de dados
Níveis de SGBD Archidiagrama de arquitetura

Considere um exemplo de banco de dados universitário. Nos diferentes níveis, a implementação será assim:

Tipo de Esquema Implementação
Esquema Externo

Ver 1: Informações do curso (cid:int,cname:string)

Ver 2: studeninfo(id:int. nome:string)

Shemá Conceitual
Students(id: int, name: string, login: string, age: integer) 
Courses(id: int, cname:string, credits:integer) 
Enrolled(id: int, grade:string)
Esquema Físico
  • Relações armazenadas como arquivos não ordenados.
  • Índice na primeira coluna de Alunos.

Independência de dados físicos

A independência física dos dados ajuda a separar os níveis conceituais dos níveis internos/físicos. Ele permite fornecer uma descrição lógica do banco de dados sem a necessidade de especificar estruturas físicas. Comparado à independência lógica, é fácil alcançar a independência física dos dados.

Com a independência física, você pode alterar facilmente as estruturas ou dispositivos de armazenamento físico com efeito no esquema conceitual. Qualquer mudança realizada seria absorvida pelo mapeamento entre os níveis conceitual e interno. A independência física dos dados é alcançada pela presença do nível interno do banco de dados e depois pela transformação do nível conceitual do banco de dados para o nível interno.

Exemplos de alterações na Independência de Dados Físicos

Devido à independência física, qualquer uma das alterações abaixo não afetará a camada conceitual.

  • Usando um novo dispositivo de armazenamento como disco rígido ou fitas magnéticas
  • Modificando a técnica de organização de arquivos no Banco de Dados
  • Mudando para diferentes estruturas de dados.
  • Alterando o método de acesso.
  • Modificando índices.
  • Mudanças nas técnicas de compressão ou algoritmos de hash.
  • Mudança de localização do banco de dados da unidade C para a unidade D

Independência de dados lógicos

Independência Lógica de Dados é a capacidade de alterar o esquema conceitual sem alterar

  1. Visualizações externas
  2. API ou programas externos

Qualquer mudança realizada será absorvida pelo mapeamento entre os níveis externo e conceitual.

Quando comparado à independência dos dados físicos, é um desafio alcançar a independência lógica dos dados.

Exemplos de alterações na Independência de Dados Lógicos

Devido à independência lógica, qualquer uma das alterações abaixo não afetará a camada externa.

  1. Adicionar/Modificar/Excluir um novo atributo, entidade ou relacionamento é possível sem reescrever os programas aplicativos existentes
  2. Mesclando dois registros em um
  3. Quebrar um registro existente em dois ou mais registros

Diferença entre independência de dados físicos e lógicos

Independência de dados da Logica Independência de dados físicos
A Independência Lógica de Dados preocupa-se principalmente com a estrutura ou alteração da definição de dados. Principalmente preocupado com o armazenamento dos dados.
É difícil porque a recuperação de dados depende principalmente da estrutura lógica dos dados. É fácil de recuperar.
Comparado à independência física lógica, é difícil alcançar a independência lógica dos dados. Comparado à Independência Lógica, é fácil alcançar a independência física dos dados.
Você precisará fazer alterações no programa Aplicativo se novos campos forem adicionados ou excluídos do banco de dados. Uma mudança no nível físico geralmente não requer mudança no nível do programa aplicativo.
A modificação nos níveis lógicos é significativa sempre que as estruturas lógicas do banco de dados são alteradas. As modificações feitas nos níveis internos podem ou não ser necessárias para melhorar o desempenho da estrutura.
Preocupado com o esquema conceitual Preocupado com o esquema interno
Exemplo: Adicionar/Modificar/Excluir um novo atributo Exemplo: mudança nas técnicas de compressão, algoritmos de hash, dispositivos de armazenamento, etc.

Importância da Independência de Dados

  • Ajuda você a melhorar a qualidade dos dados
  • A manutenção do sistema de banco de dados torna-se acessível
  • Aplicação de padrões e melhoria na segurança do banco de dados
  • Você não precisa alterar a estrutura de dados em programas aplicativos
  • Permitir que os desenvolvedores se concentrem na estrutura geral do banco de dados em vez de se preocuparem com a implementação interna
  • Ele permite que você melhore o estado que está intacto ou indiviso
  • A incongruência do banco de dados é bastante reduzida.
  • Fazer modificações facilmente no nível físico é necessário para melhorar o desempenho do sistema.

Resumo

  • Independência de dados é propriedade do SGBD que ajuda você a alterar o Esquema do banco de dados em um nível de um sistema de banco de dados sem precisar alterar o esquema no próximo nível superior.
  • Dois níveis de independência de dados são 1) Físico e 2) Lógico
  • A independência física dos dados ajuda a separar os níveis conceituais dos níveis internos/físicos
  • Independência Lógica de Dados é a capacidade de alterar o esquema conceitual sem alterar
  • Quando comparado à independência de dados físicos, é um desafio alcançar a independência lógica de dados
  • Independência de dados Ajuda você a melhorar a qualidade dos dados