Modelagem Entidade-Relacionamento
A modelagem entidade-relacionamento é uma técnica de design conceitual que descreve um domínio como uma coleção de conjuntos de entidades, seus atributos e os relacionamentos entre eles, produzindo um diagrama de alto nível que pode ser traduzido em um esquema relacional.
Definition
O modelo entidade-relacionamento é um modelo de dados conceitual no qual um banco de dados é descrito por conjuntos de entidades (coleções de objetos semelhantes do mundo real), os atributos que os caracterizam e conjuntos de relacionamentos que associam entidades, anotados com cardinalidade e restrições de participação.
Scope
Este tópico abrange os construtos do modelo entidade-relacionamento (ER) — conjuntos de entidades, atributos (simples, compostos, multivalorados, derivados), conjuntos de relacionamentos, cardinalidade e restrições de participação, entidades fracas e hierarquias de generalização/especialização no modelo ER estendido — e as regras sistemáticas para mapear um diagrama ER para tabelas relacionais. Exclui o refinamento lógico do esquema resultante por normalização e a própria estrutura do modelo relacional.
Core questions
- Como entidades, atributos e relacionamentos são identificados a partir dos requisitos?
- O que as restrições de cardinalidade e participação expressam sobre um relacionamento?
- Quando uma entidade é fraca e como ela é identificada através de outra entidade?
- Como a generalização e a especialização são capturadas no modelo ER estendido?
- Quais são as regras para traduzir um diagrama ER em tabelas relacionais?
Key concepts
- conjunto de entidades e entidade
- atributos: simples, compostos, multivalorados, derivados
- conjunto de relacionamentos
- restrições de cardinalidade (mapeamento)
- restrições de participação
- conjuntos de entidades fracas
- generalização e especialização
- mapeamento ER para relacional
Key theories
- Entidades, relacionamentos e atributos
- O modelo ER unifica a descrição de dados distinguindo as coisas de interesse (entidades), as associações entre elas (relacionamentos) e as propriedades descritivas (atributos) de cada uma, fornecendo um vocabulário para o design conceitual independente da implementação.
- Restrições de cardinalidade e participação
- As cardinalidades de mapeamento (um-para-um, um-para-muitos, muitos-para-muitos) e a participação total versus parcial especificam quantas entidades podem participar de um relacionamento e se a participação é obrigatória, restringindo estados válidos do banco de dados.
- Mapeamento ER para relacional
- Regras sistemáticas convertem conjuntos de entidades em tabelas, conjuntos de relacionamentos em tabelas ou chaves estrangeiras dependendo da cardinalidade, e entidades fracas e subclasses em estruturas relacionais apropriadas, fazendo a ponte entre o design conceitual e lógico.
Clinical relevance
A modelagem ER é a interface padrão de design de banco de dados em toda a indústria: analistas e desenvolvedores usam diagramas ER para capturar e comunicar requisitos com as partes interessadas antes que qualquer tabela seja construída, reduzindo a redundância e erros de design em sistemas empresariais, web e de gerenciamento de informações.
History
Peter Chen introduziu o modelo entidade-relacionamento em 1976 como uma forma de unificar as visões de rede, relacional e de conjunto de entidades dos dados com uma notação conceitual gráfica. O modelo foi posteriormente estendido com generalização e especialização (o modelo ER aprimorado) e influenciou a modelagem de objetos e classes UML, permanecendo um pilar da educação e prática de design de banco de dados.
Key figures
- Peter Chen
Related topics
Seminal works
- chen1976
- silberschatz2019
Frequently asked questions
- Qual é a diferença entre um diagrama entidade-relacionamento e um esquema relacional?
- Um diagrama ER é uma descrição conceitual e tecnologicamente independente de um domínio em termos de entidades e relacionamentos, destinada à análise e comunicação. Um esquema relacional é o design lógico de tabelas, colunas e chaves reais. As regras de mapeamento ER para relacional convertem o primeiro no segundo.
- Quando um relacionamento deve se tornar sua própria tabela?
- Relacionamentos muitos-para-muitos sempre exigem uma tabela separada contendo os atributos-chave de ambas as entidades participantes. Relacionamentos um-para-muitos e um-para-um geralmente podem ser representados adicionando uma chave estrangeira a uma das tabelas de entidades, em vez de criar uma nova tabela.