Avançar para o conteúdo
Read this post in: de_DEen_USes_ESfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW
Home » Data Modeling / Database » Dominando o Modelagem ER: Um Guia Passo a Passo com Exemplos do Mundo Real (Parte 2 de 5)

Dominando o Modelagem ER: Um Guia Passo a Passo com Exemplos do Mundo Real (Parte 2 de 5)

Aprimorando Diagramas Entidade-Relacionamento (DERs) para um Projeto Eficiente de Banco de Dados

Descrição do Problema: Modelagem ER – Um Sistema de Empresa de Aluguel de Veículos

Uma empresa de aluguel de veículos precisa criar um banco de dados para gerenciar suas operações comerciais. A empresa possui uma grande frota de veículos que são alugados a clientes para aluguéis de curto e longo prazo. A empresa possui várias filiais em locais diferentes, e cada filial possui sua própria frota de veículos.

A empresa deseja acompanhar os veículos disponíveis para aluguel, os clientes que alugaram os veículos, os períodos de aluguel e as cobranças de cada aluguel. Eles também desejam acompanhar os cronogramas de manutenção de cada veículo e as atividades de manutenção que foram realizadas.

From conceptual to logical to physical ERD

A empresa tem os seguintes requisitos para seu banco de dados:

  1. Veículos podem ser alugados a clientes por um período específico de aluguel.
  2. Um cliente pode alugar múltiplos veículos, e um veículo pode ser alugado por múltiplos clientes.
  3. As cobranças de aluguel para cada veículo devem ser calculadas com base no período de aluguel e quaisquer cobranças adicionais, como seguros ou custos com combustível.
  4. A empresa deseja acompanhar os cronogramas de manutenção de cada veículo e as atividades de manutenção que foram realizadas.
  5. A empresa deseja poder visualizar relatórios sobre o uso de seus veículos, incluindo o número de aluguéis, os períodos de aluguel e a receita gerada.
  6. A empresa deseja poder visualizar relatórios sobre as atividades de manutenção realizadas em seus veículos, incluindo o tipo de manutenção realizada, a data em que foi realizada e o custo.
  7. A empresa deseja acompanhar os clientes que alugam seus veículos, incluindo suas informações pessoais, como nome, endereço, número de telefone e endereço de e-mail.
  8. A empresa deseja poder visualizar relatórios sobre seus clientes, incluindo o número de aluguéis, os períodos de aluguel e a receita gerada por cada cliente.

Para atender a esses requisitos, pode ser criado um diagrama Entidade-Relacionamento (ER) para modelar o sistema de aluguel de veículos. O diagrama incluirá entidades como Veículos, Clientes, Aluguéis e Manutenção, e relacionamentos como Aluguel, Aluguel do Cliente e Manutenção do Veículo.

Guia Passo a Passo para Desenvolver um Diagrama ER para um Banco de Dados

Aqui está um guia passo a passo para desenvolver um diagrama ER para um banco de dados:

  1. Identifique as entidades:Comece identificando as diferentes entidades que serão incluídas no banco de dados. Essas entidades podem ser pessoas, lugares, coisas ou conceitos relacionados ao domínio do banco de dados. Por exemplo, em um sistema de aluguel de veículos, as entidades podem incluir Veículos, Clientes, Aluguéis e Manutenção.
  2. Determine os atributos:Em seguida, determine os atributos de cada entidade. Atributos são características ou propriedades que descrevem a entidade. Por exemplo, os atributos da entidade Veículo podem incluir Marca, Modelo, Ano e Número da Placa.
  3. Identifique as relações:Depois de identificar as entidades e seus atributos, determine as relações entre as entidades. Relações são as conexões ou associações entre entidades. Por exemplo, a relação entre as entidades Veículo e Aluguel é que um veículo pode ser alugado por um período específico de aluguel.
  4. Determine a cardinalidade:A cardinalidade descreve o número de instâncias de uma entidade que podem estar associadas a instâncias de outra entidade. Por exemplo, a cardinalidade entre as entidades Veículo e Aluguel pode ser um-para-muitos, o que significa que um veículo pode ser alugado por muitos clientes.
  5. Determine o grau da relação:O grau da relação refere-se ao número de entidades envolvidas na relação. Por exemplo, a relação entre as entidades Veículo e Aluguel é uma relação binária, o que significa que envolve apenas duas entidades.
  6. Crie um diagrama preliminar:Use as informações coletadas nos passos anteriores para criar um diagrama ER preliminar. Esse diagrama deve incluir as entidades, atributos, relações, cardinalidade e grau da relação.
  7. Aprimore o diagrama: Aperfeiçoe o diagrama ER revisando sua precisão, completude e consistência. Faça quaisquer ajustes ou modificações necessárias para garantir que o diagrama represente com precisão os requisitos do banco de dados.
  8. Adicione restrições:Adicione quaisquer restrições ao diagrama que ajudem a garantir a integridade e a consistência dos dados. Restrições são regras ou condições que restringem os dados que podem ser inseridos no banco de dados. Por exemplo, uma restrição poderia ser que uma entidade Carro deve ter um número de placa válido.
  9. Finalize o diagrama:Depois que o diagrama ER tiver sido aperfeiçoado e as restrições tiverem sido adicionadas, finalize o diagrama. O diagrama final deve representar com precisão o banco de dados e seus requisitos.
  10. Gere o banco de dados:Usando o diagrama ER finalizado, gere o esquema do banco de dados. O esquema do banco de dados define a estrutura do banco de dados, incluindo as tabelas, colunas e relações entre elas.

Compreendendo as diferenças entre modelagem de dados conceitual, lógica e física

Conceitual, Lógico e Físico são as três principais etapas da modelagem de dados, que é o processo de projetar um banco de dados para representar os dados e relações dentro de uma organização ou sistema.

A seguir, uma visão geral do que cada etapa envolve:

  1. Modelo de dados conceitual:Esta etapa está focada em compreender a visão de alto nível dos dados e das relações entre eles. É independente de qualquer tecnologia específica ou sistema de gerenciamento de banco de dados (SGBD). O principal objetivo é identificar as principais entidades, suas relações e seus atributos. O resultado desta etapa é um modelo de dados conceitual que é usado para orientar o desenvolvimento de um modelo de dados lógico.
  2. Modelo de dados lógico:Esta etapa está focada em definir as estruturas de dados e relações em detalhe. Inclui um esquema lógico que mapeia os conceitos de modelo de dados identificados na etapa conceitual, utilizando um diagrama entidade-relacionamento (DER) ou ferramenta semelhante. O modelo de dados lógico representa os requisitos do negócio em termos de estrutura de dados e relações e é independente do design físico do banco de dados. O resultado desta etapa é um modelo de dados lógico que é usado para orientar o desenvolvimento de um modelo de dados físico.
  3. Modelo de dados físico:Esta etapa está focada em traduzir o modelo de dados lógico para um sistema específico de gerenciamento de banco de dados, levando em consideração o desempenho, os requisitos de armazenamento e as restrições técnicas do SGBD-alvo. O modelo de dados físico descreve os objetos do banco de dados, como tabelas, colunas e índices, bem como seus tipos de dados, tamanhos e restrições. O resultado desta etapa é um modelo de dados físico que é usado para criar e implementar o banco de dados.

Em resumo, a etapa conceitual define as entidades de dados e suas relações em nível alto, a etapa lógica define as estruturas de dados e relações detalhadas, e a etapa física mapeia o modelo de dados lógico para uma tecnologia específica de banco de dados, incluindo considerações de desempenho e armazenamento.

Criando o DER conceitual a partir da descrição do problema

O DER inclui quatro entidades: Carro, Cliente, Aluguel e Manutenção. Cada entidade possui seus atributos, como car_id, modelo, marca, ano, daily_rate, tipo_de_combustível, is_available para a entidade Carro, first_name, last_name, email, phone_number e address para a entidade Cliente, start_date, end_date, rental_rate, insurance_charge, fuel_charge para a entidade Aluguel, e type, description, cost e maintenance_date para a entidade Manutenção.

O DER também mostra as relações entre as entidades, incluindo a relação Aluguel entre as entidades Carro e Aluguel, a relação Cliente Aluguel entre as entidades Aluguel e Cliente, e a relação Carro Manutenção entre as entidades Carro e Manutenção.

Car rental conceptual ERD

Aperfeiçoe o DER conceitual para o DER lógico

O DER lógico inclui uma notação mais formal e detalhada, enfatizando tabelas, colunas, chaves e relações. Especificamente, os tipos de dados das colunas são apresentados. Além disso, rótulos são adicionados às relações (“aluga”, “alugado por” e “requer”) para indicar a natureza de cada relação.

Car rental logical ERD

Aperfeiçoe o DER lógico para o DER físico

O DER físico é um ‘diagrama de esquema de banco de dados’ que fornece detalhes suficientes para implementar o banco de dados em um SGBD específico. A nomenclatura de entidades e colunas é revisada para:

  • Suportar a sintaxe específica do SGBD.
  • Garantir o uso de palavras não reservadas (por exemplo, order -> purchase_order, desc -> description)
  • Adequar-se à convenção de nomenclatura específica da organização

A coluna ‘desc’ na entidade Manutenção é renomeada para ‘description’.

Car rental physical ERD

Geração do esquema do banco de dados: transformando o DER em um esquema físico

O esquema do banco de dados é uma representação visual da estrutura do banco de dados que define a organização dos dados em um sistema de gerenciamento de banco de dados relacional. O esquema é criado com base no diagrama entidade-relacionamento (DER), que é usado para modelar as relações entre diferentes entidades em um sistema.

Neste caso, o ERD foi primeiro refinado em um ERD lógico que definia as relações entre entidades como Carros, Clientes, Aluguéis e Manutenção, e seus respectivos atributos. O ERD lógico ajudou a estabelecer as relações e a cardinalidade entre as entidades.

Após refinar o ERD lógico, o próximo passo foi gerar um ERD físico que define o esquema real do banco de dados com todos os tipos de dados necessários, chaves primárias e estrangeiras, e quaisquer restrições. O ERD físico reflete o ERD lógico, mas com mais detalhes sobre como os dados são armazenados no banco de dados.

Com base no ERD físico, foi escrito o código SQL para criar o esquema do banco de dados com as tabelas apropriadas, colunas e relações entre elas. Cada tabela no esquema representa uma entidade no sistema, e as colunas representam os atributos dessa entidade. As chaves primárias foram definidas para identificar unicamente cada registro na tabela, e as chaves estrangeiras foram usadas para estabelecer relações entre as tabelas.

CRIAR TABELA Carro (
car_id INT CHAVE PRIMÁRIA,
modelo VARCHAR(255),
marca VARCHAR(255),
ano INT,
valor_diario DECIMAL(10, 2),
tipo_combustivel VARCHAR(255),
é_disponível BOOLEAN
);

CRIAR TABELA Cliente (
customer_id INT CHAVE PRIMÁRIA,
nome VARCHAR(255),
sobrenome VARCHAR(255),
email VARCHAR(255),
número_telefone VARCHAR(255),
endereço VARCHAR(255)
);

CRIAR TABELA Aluguel (
rental_id INT CHAVE PRIMÁRIA,
data_inicio DATE,
data_fim DATE,
valor_aluguel DECIMAL(10, 2),
valor_seguro DECIMAL(10, 2),
valor_combustivel DECIMAL(10, 2),
car_id INT,
customer_id INT,
CHAVE ESTRANGEIRA (car_id) REFERENCIA Car(car_id),
CHAVE ESTRANGEIRA (customer_id) REFERENCIAS Customer(customer_id)
);

CRIAR TABELA Maintenance (
maintenance_id INT CHAVE PRIMÁRIA,
type VARCHAR(255),
description TEXT,
cost DECIMAL(10, 2),
maintenance_date DATE,
car_id INT,
CHAVE ESTRANGEIRA (car_id) REFERENCIAS Car(car_id)
);

Resumo

O artigo discute o processo de aprimoramento de diagramas de entidade-relacionamento (ERD) para gerar um esquema de banco de dados eficaz. Os ERDs são aprimorados a partir de um nível conceitual para um nível lógico e depois para um nível físico. O ERD lógico estabelece as relações e a cardinalidade entre as entidades, enquanto o ERD físico define o esquema real do banco de dados com todos os tipos de dados necessários, chaves primárias e estrangeiras, e restrições.

O código SQL é então escrito com base no ERD físico para criar o esquema do banco de dados com as tabelas, colunas e relações apropriadas. O artigo enfatiza a importância de aprimorar os ERDs para um design eficaz de banco de dados e fornece insights sobre o processo de gerar um esquema de banco de dados a partir de um ERD.

Deixe um comentário