DEV Community

Cover image for Design de uma Base de Dados Modular
Ortiz de Arcanjo António David
Ortiz de Arcanjo António David

Posted on

Design de uma Base de Dados Modular

As aplicações possuem várias tabelas, cada uma ligada a um domínio específico.

Uma boa prática é organizar a base de dados por módulos, alinhados a esses domínios.

Conceitos

  • Base de Dados Modularizada: Base de dados dividida em módulos que representam áreas específicas do sistema.
  • Schema: Conjunto de objectos de uma base de dados, organizados de forma lógica.
  • Objectos do Schema: Tabelas, views, triggers e funções que fazem parte do schema.

Equivalência entre Módulo e Schema

  • A opção adequada para representar os módulos é a utilização de Schemas.
  • Cada módulo é representado por um schema na base de dados.
  • Cada schema contém seus próprios objectos, como views, tabelas, triggers e functions.
  • Ao construir queries complexas, é crucial considerar o schema onde a tabela está localizada.

Passos para a criação

  • Criar uma base de dados.
  • Configurar os ajustes iniciais.
  • Criar os schemas necessários.
  • Criar as tabelas, views, triggers e funções em cada schema.
  • Se necessário, definir as regras de acesso específicas para cada schema.

Inicialização

  • Ler os scripts SQL de cada diretório.
  • Verificar se os scripts existem antes de executar.
  • Executar os scripts na ordem correta.
  • Executar os scripts dentro de uma transação.
  • Iniciar os scripts ao abrir a aplicação.
  • Registar logs do progresso e erros.

Vantagens da Criação de Schemas

  • Organização
  • Modularização da Base de Dados
  • Separação de Responsabilidades
  • Navegabilidade
  • Reusabilidade de Código
  • Segurança Aprimorada
  • Aprimoramento na Colaboração

Desafios

  • Complexidade nas Consultas.
  • Verbosidade no Código.
  • Manutenção da Consistência entre módulos
  • Padronização e Consistência na Nomenclatura.
  • Treinamento da Equipa.

Código Fonte:

LinkedIn: https://www.linkedin.com/in/ortiz-david

Image description

Image description

Image description

Image description

Image description

Image description

Image description

Image description

Image description

Reinvent your career. Join DEV.

It takes one minute and is worth it for your career.

Get started

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Dive into an ocean of knowledge with this thought-provoking post, revered deeply within the supportive DEV Community. Developers of all levels are welcome to join and enhance our collective intelligence.

Saying a simple "thank you" can brighten someone's day. Share your gratitude in the comments below!

On DEV, sharing ideas eases our path and fortifies our community connections. Found this helpful? Sending a quick thanks to the author can be profoundly valued.

Okay