Boas-vindas ao nosso curso de modelagem de dados, onde iremos desenvolver um modelo físico! Meu nome é Beatriz Magalhães e serei sua instrutora nesta jornada!
Audiodescrição: Beatriz se descreve como uma mulher branca, de cabelos longos, ondulados e loiros. Veste uma camiseta verde e está sentada em uma cadeira gamer. Ao fundo, uma janela e móveis iluminados sob tons de verde.
Neste curso, vamos nos concentrar na construção do modelo físico, que é a etapa final do processo de modelagem de dados. Abordaremos a tipificação das colunas em nossas tabelas, o limite de caracteres, e a aplicação de restrições de negócios ao nosso modelo de dados.
Além disso, veremos como integrar esse modelo de dados com outras ferramentas e softwares que utilizamos no dia a dia, especialmente para quem trabalha com dados.
Discutiremos também a importância da modelagem de dados em diversas áreas profissionais e como esse processo é fundamental, independentemente da ferramenta que você utiliza para gerenciar seus dados.
Esperamos que aproveite esta jornada de aprendizado! Lembre-se de que é importante ter concluído os três cursos anteriores desta formação, pois o projeto que desenvolveremos é uma continuação das etapas anteriores de modelagem de dados.
Se tudo estiver em ordem, nos vemos no próximo vídeo. Até lá!
Neste curso, vamos focar na última etapa do processo de modelagem de dados: a construção do modelo físico. Essa fase é crucial, pois o modelo físico é o elo entre a parte conceitual e teórica que desenvolvemos até agora e a implementação prática, onde transformamos o modelo em um banco de dados acessível por um Sistema de Gerenciamento de Banco de Dados (SGBD).
No modelo físico, tomaremos decisões importantes sobre o banco de dados, como os tipos de dados, restrições, e regras para cada coluna. Esta etapa final é essencial para a construção do nosso banco de dados.
Para começar a construir o modelo físico, precisamos validar o modelo lógico já normalizado, que foi desenvolvido no curso anterior pela instrutora Daniele. A validação de cada etapa, garantindo que esteja alinhada com os requisitos levantados junto à Flex Empresta, é fundamental. Isso assegura que o modelo reflita fielmente as necessidades e processos da empresa, bem como os dados que ela deseja armazenar.
Utilizaremos a plataforma Visual Paradigm Online para criar nossos diagramas. Caso você ainda não tenha uma conta, pode criar uma facilmente com seu e-mail e senha. Na parte superior direita da tela, você encontrará um botão azul com a opção "Crie um novo". Após baixar o arquivo do modelo lógico normalizado, ele será salvo em seus documentos. Na seta do botão "Crie um novo", há a opção "Importar/Abrir". Vamos clicar sobre ela.
Na tela central, há várias opções para importar o arquivo. O formato que disponibilizamos, salvo diretamente como .vpd
, pode ser aberto a partir da sua máquina. Para isso, clicamos em "Dispositivo" e vamos em "Escolher arquivo". Se você já baixou o arquivo fornecido na atividade anterior a este vídeo, ele estará disponível em seu computador com o nome Modelagem de dados - Normalização.vpd
, então basta selecioná-lo e abri-lo.
Agora, vamos revisar o levantamento de requisitos. Este levantamento foi realizado no primeiro curso para entender exatamente o que a Flex Empresta precisava incluir no banco de dados.
Disponibilizaremos nas atividades a documentação necessária para que você possa fazer detalhadamente esse levantamento de requisitos.
No levantamento de requisitos, identificamos quais dados precisam ser armazenados. É essencial garantir que todos esses dados estejam representados em nosso modelo.
Por exemplo, para clientes, devemos armazenar informações como nome, CPF, telefone, endereço, data de nascimento, e-mail, dados bancários, tipo de conta, saldo e número da conta. Vamos conferir se o nosso modelo inclui todos esses elementos.
No modelo, observamos que a tabela de clientes contém ID do cliente, data de nascimento, CPF, nome, e-mail, endereço e ID do colaborador. Para facilitar a consulta e melhorar a eficiência, o endereço foi dividido em rua, bairro, cidade, estado e CEP. O ID do colaborador também está presente na tabela de clientes para rastrear qual colaborador atendeu cada cliente.
Essa verificação é crucial para garantir que todos os atributos e entidades mencionados pela Flex Empresta estejam representados fielmente no modelo lógico. Faça a verificação com cuidado para as demais tabelas!
Além disso, algumas restrições de negócios serão especificadas no modelo físico. Por exemplo, foi determinado que cada cliente deve fornecer dois telefones, um e-mail e um endereço completo. Isso significa que os campos de telefone, e-mail e endereço não podem ser nulos. Além disso, o campo de telefone deve conter dois números de telefone.
Outro passo importante na construção do modelo físico é a escolha do Sistema de Gerenciamento de Banco de Dados (SGBD). O SGBD é a ferramenta que será usada para armazenar e gerenciar o banco de dados da Flex Empresta.
Não nos aprofundaremos em SGBD neste curso, mas há formações específicas sobre este tema.
A empresa já optou por usar o MySQL como seu SGBD devido a várias vantagens: é gratuito, tem uma ótima usabilidade, e conta com uma grande comunidade de usuários, o que facilita o acesso a suporte e treinamento.
É muito importante escolher o SGBD antes de iniciar a construção do modelo. Isso porque cada SGBD trabalha com tipos de dados específicos, além de restrições e regras próprias, que influenciam diretamente na forma como o modelo físico será implementado.
Agora que já escolhemos o SGBD, revisamos o levantamento de requisitos e confirmamos que nosso modelo lógico está correto, podemos começar a construção do modelo físico. O primeiro passo será classificar os tipos de dados para cada coluna, ou seja, para cada atributo das nossas entidades.
Faremos isso no próximo vídeo. Espero você lá. Até mais!
Agora, vamos começar a trabalhar no diagrama do modelo físico, que é a etapa final do processo de modelagem de dados.
Antes de avançarmos, é importante entender que, ao migrarmos para o modelo físico, alguns termos mudam de nome. Usaremos a tabela a seguir como base:
Dicionário de modelagem
MODELO CONCEITUAL MODELO LÓGICO MODELO FÍSICO Entidade Entidade/Relação Tabela Entidade fraca Entidade dependente Tabela Entidade forte Entidade independente Tabela Atributo Atributo Coluna Atributo chave Chave primária Chave primária Atributo chave Chave estrangeira Chave estrangeira Atributo chave Chave Composta Chave Composta Regra de negócio Regra de negócio Restrição de integridade
No modelo conceitual, cada elemento importante com atributos associados é chamado de "entidade". No modelo lógico, ainda podemos chamá-lo de "entidade" ou "relação". No entanto, no modelo físico, esses elementos são chamados de "tabelas". Assim, uma entidade, seja ela fraca ou forte, será representada como uma tabela.
Os "atributos", que no modelo conceitual e lógico eram chamados assim, agora são chamados de "colunas", referindo-se às colunas das nossas tabelas. Essa mudança de nomenclatura reflete a terminologia usada nos Sistemas de Gerenciamento de Banco de Dados (SGBDs), que se baseia na estrutura interna do banco de dados.
As regras de negócio, que identificamos no levantamento de requisitos, agora são chamadas de "restrições de integridade". Estas restrições representam as regras de negócio dentro dos SGBDs.
Vamos começar classificando os tipos de dados em nosso modelo físico. Para isso, abrimos o Visual Paradigma e carregamos o modelo lógico normalizado, que disponibilizamos no início da aula. A estrutura básica será a mesma, mas vamos adicionar informações essenciais para o SGBD, como os tipos de dados.
Por exemplo, se trouxéssemos a estrutura atual para o banco de dados sem especificar os tipos de dados, poderíamos ter problemas, como alguém inserir um texto na coluna de CPF. Isso causaria desorganização no banco de dados. Portanto, ao especificarmos os tipos de dados permitidos para cada coluna, garantimos que o banco de dados possa detectar e prevenir erros, mantendo a organização dos dados.
Existem alguns tipos de dados principais que precisamos conhecer. Por exemplo, VARCHAR
e CHAR
são tipos usados para armazenar texto, enquanto INTEGER
é utilizado para números inteiros, e DATE
para datas. Há vários outros tipos, e vamos disponibilizar uma atividade para que você possa aprender mais sobre cada um deles.
Vamos começar pela tabela de clientes. A primeira coluna é o ID do cliente, que já está definida como a chave primária da tabela. Esse ID pode ser armazenado como texto (usando o tipo VARCHAR
) ou como um número inteiro (INTEGER
), dependendo do tipo de informação que queremos guardar.
O MySQL aceita diferentes tipos de dados como chave primária, mas para se aprofundar nesse assunto, recomendamos que você faça a formação de MySQL, onde explicamos todos os detalhes sobre os tipos de dados e suas especificidades.
Neste caso, como o ID do cliente pode incluir letras e números, vamos classificá-lo como VARCHAR
, que permite armazenar qualquer tipo de texto. É uma boa prática escrever os tipos de dados em letras maiúsculas, então vamos seguir essa convenção: id_cliente: VARCHAR
.
Agora, vamos para data de nascimento. Esse dado é do tipo DATE
, que é específico para armazenar datas. Há variações como DATETIME
, que inclui tanto a data quanto a hora, mas, neste caso, como estamos lidando apenas com a data de nascimento, o tipo DATE
é suficiente: DataNascimento: DATE
.
Em seguida, temos o CPF. Vamos classificá-lo também como VARCHAR
, pois, embora o CPF seja numérico, ele tem um formato específico que precisa ser respeitado. Podemos definir o tamanho máximo do VARCHAR
para garantir que o CPF tenha a quantidade correta de dígitos, evitando erros. Ao longo do curso, mostraremos como definir esses detalhes. Por enquanto, vamos focar na atribuição do tipo de dado, que neste caso será VARCHAR
.
Uma dica importante é sobre o tipo de dado VARCHAR
, que será amplamente utilizado. Ele é popular porque tem uma característica muito útil: ocupa apenas o espaço necessário para cada valor armazenado, tornando o banco de dados mais eficiente, sem desperdiçar espaço. É uma ótima escolha para armazenar textos ou strings.
Agora, vamos para a coluna de nome, que também será do tipo VARCHAR
. Se olharmos para a tabela de clientes, veremos as demais colunas como Email
, Rua
, Bairro
, Cidade
, Estado
, CEP
, e id_colaborador
. Todas essas colunas também serão do tipo VARCHAR
, então basta preenchê-las corretamente.
TabelaClientes |
---|
id_cliente: VARCHAR |
DataNascimento: DATE |
CPF: VARCHAR |
Nome: VARCHAR |
Email: VARCHAR |
Rua: VARCHAR |
Bairro: VARCHAR |
Cidade: VARCHAR |
Estado: VARCHAR |
CEP: VARCHAR |
id_colaborador: VARCHAR |
Vamos agora explorar tabelas que contêm tipos de dados diferentes, para entender melhor como funcionam.
Na tabela de empréstimos, por exemplo, temos uma coluna de status, que indica se o empréstimo está ativo ou inativo. Este tipo de dado é chamado de BOOLEANO
, ideal para situações com respostas binárias, como "sim" ou "não" ou "ativo ou inativo", entre outras. O dado booleano é armazenado de forma muito eficiente, ocupando apenas um bit (1 ou 0), o que contribui para a eficiência do banco de dados.
Veja que nesta fase da modelagem, já estamos focando na praticidade e eficiência do SGBD. Para o status, vamos usar o tipo BOOLEANO
.
A coluna de prazo, que indica um número em dias, será do tipo INTEGER
, adequado para números inteiros e cálculos.
Agora, vamos falar sobre valores monetários, que são um pouco diferentes. Para valores em dinheiro, como o valor de um empréstimo, usaremos o tipo DECIMAL
. Esse tipo é ideal para números com casas decimais, como os centavos, garantindo precisão no armazenamento.
TabelaEmprestimo |
---|
id_emprestimo |
Status: BOOLEANO |
Prazo: INTEGER |
DataInicio |
Tipo |
Valor: DECIMAL |
id_cliente |
Agora é a sua vez de classificar as colunas:
VARCHAR
.INTEGER
.DECIMAL
.DATE
.Preencha as colunas das tabelas como um exercício, aplicando essa lógica. No próximo vídeo, vamos falar sobre como definir o número máximo de caracteres para cada coluna, evitando, por exemplo, que um CPF seja cadastrado com dígitos a mais. Nos vemos lá!
O curso Modelagem de dados: construindo o modelo físico possui 99 minutos de vídeos, em um total de 46 atividades. Gostou? Conheça nossos outros cursos de SQL e Banco de Dados em Data Science, ou leia nossos artigos de Data Science.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.