Uma camada de abstração da base de dados é uma representação simplificada de uma base de dados na forma de uma descrição escrita ou de um diagrama.
Abstração, em geral, é o processo de tirar ou remover características de algo a fim de reduzi-lo a um conjunto de características essenciais. As três camadas de abstração formais:
- Modelo de usuário: Uma representação informal de como o usuário descreve a base de dados.
- Modelo lógico: Mais formal, com mais detalhes e muitas vezes renderizado como um modelo de relação entidade (ERM).
- Modelo físico: Mais detalhes adicionados, como indexação e tipos de dados.
A alternativa às camadas de abstração são regras de codificação rígidas e metadados na base de dados durante o desenvolvimento. Nesse caso, a codificação também estabelece como termos de negócios, definições, regras e outras informações são definidas em nome das aplicações que acessam a base de dados.
Codificação difícil é boa para as aplicações que estão originalmente planejadas para acessar a base de dados. Entretanto, essa abordagem torna muito mais complicado para outras aplicações com requisitos diferentes comunicar-se com a base de dados. Uma camada de abstração de dados permite a máxima flexibilidade e garante que quando aplicações de negócios adicionais precisam acessar a base de dados, não é necessário fazer mudanças significativas para apoiá-las.