Article image
Belisnalva Jesus
Belisnalva Jesus20/08/2024 23:03
Compartilhe

#Aprendizagem Contínua

    O que é um Banco de Dados Relacional?

    image

    Um banco de dados relacional é um sistema de gerenciamento de banco de dados (SGBD) que organiza dados em tabelas relacionadas entre si. Ele utiliza o modelo relacional, no qual as tabelas são compostas por linhas (registros) e colunas (campos). Cada tabela contém dados relacionados a uma entidade específica, e as relações entre as tabelas são estabelecidas através de chaves primárias e chaves estrangeiras.

    Quando se trata de armazenamento e gerenciamento de dados, os bancos de dados desempenham um papel fundamental. Existem diferentes tipos de bancos de dados disponíveis, sendo os mais comuns os bancos de dados relacionais e não relacionais. Cada um possui características distintas e é adequado para diferentes tipos de aplicações.

    Características:

    Os bancos de dados relacionais possuem algumas características distintas, incluindo:

    Estrutura organizada em tabelas e colunas;

    Relações definidas entre as tabelas;

    Integridade referencial mantida através de chaves primárias e estrangeiras;

    Consulta utilizando a Linguagem de Consulta Estruturada (SQL);

    Consistência e conformidade garantidas através de restrições;

    Capacidade de realizar operações complexas, como junções e agregações.

    Tabela Cliente:

    | ID_Cliente | Nome     | Email      | Telefone  |

    |------------|---------------|------------------|-------------|

    | 1     | Gilda da Silva | gilda@mail.com  | 91234-5678  |

    | 2     | Maria Souza  | maria@mail.com  | 5345-6789  |

    Tabela Endereço:

    | ID_Endereço | ID_Cliente | Rua      | Cidade   | Estado |

    |-------------|------------|----------------|------------|--------|

    | 1      | 1     | Rua A, 123   | São Paulo | SP   |

    | 2      | 2     | Rua B, 456   | Rio de Janeiro | RJ |

    Consultas SQL:

    - Obter informações de um cliente junto com o endereço:

     ```sql

     SELECT Cliente.Nome, Cliente.Email, Endereço.Rua, Endereço.Cidade, Endereço.Estado

     FROM Cliente

     JOIN Endereço ON Cliente.ID_Cliente = Endereço.ID_Cliente

     WHERE Cliente.ID_Cliente = 1;

    ```

     Consulta SQL:

    SELECT Cliente.Nome, Cliente.Email, Endereço.Rua, Endereço.Cidade, Endereço.Estado
    FROM Cliente
    JOIN Endereço ON Cliente.ID_Cliente = Endereço.ID_Cliente
    WHERE Cliente.ID_Cliente = 1;
    

    O que é um Banco de Dados Não Relacional?

    Um banco de dados não relacional, também conhecido como NoSQL (Not Only SQL), é um tipo de banco de dados que não utiliza o modelo relacional para armazenar e recuperar dados. Ao contrário dos bancos de dados relacionais, os bancos de dados não relacionais são mais flexíveis em relação à estrutura dos dados e não requerem um esquema fixo. Eles são projetados para lidar com grandes volumes de dados, oferecendo escalabilidade e desempenho elevados.

    Características de um Banco de Dados Não Relacional

    Apresentam características distintas, tais como:

    Estrutura flexível, não baseada em tabelas;

    Não requer um esquema fixo;

    Escalabilidade horizontal para lidar com grandes volumes de dados;

    Modelos de dados diversos, como documentos, colunas, grafos e chave-valor;

    Alta disponibilidade e tolerância a falhas;

    Desempenho otimizado para operações de leitura e gravação em grande escala.

    Um banco de dados não relacional pode utilizar documentos (como JSON) para armazenar dados de forma mais flexível.

    Documento Cliente:

    {
    "_id": "1",
    "nome": "João da Silva",
    "email": "joao@mail.com",
    "telefone": "1234-5678",
    "endereco": {
      "rua": "Rua A, 123",
      "cidade": "São Paulo",
      "estado": "SP"
    }
    }
    

    Outro Documento Cliente:

    {
    "_id": "2",
    "nome": "Maria Souza",
    "email": "maria@mail.com",
    "telefone": "2345-6789",
    "endereco": {
      "rua": "Rua B, 456",
      "cidade": "Rio de Janeiro",
      "estado": "RJ"
    }
    }
    

    ***** Resumo: Diferenças Fundamentais *****

    - Relacional: Estrutura rígida, normalização de dados e uso de SQL para consultas.

    - Não Relacional: Estrutura flexível, sem normalização e comumente usa JSON para modelar dados complexos.

    Referências:

    Pâmela Apolinário (DIO.me)

    Professor Edu

    https://federalcubatao.com.br/banco-de-dados/diferenca-entre-banco-de-dados-relacional-e-nao-relacional/

    *** Este artigo é um pequeno resumo do modulo Banco de Dados SQL e NoSQL que tenho aprendido no Bootcamp Claro Java - DIO.me e referências acima citados.***

    Compartilhe
    Comentários (2)
    Belisnalva Jesus
    Belisnalva Jesus - 13/09/2024 22:21

    Muito obrigada Ronaldo, pelo o feedback!

    Já estava pensando que não tinha alcançado o objetivo ao qual tinha pensado em meu artigo. Valeu!!

    Ronaldo Schmidt
    Ronaldo Schmidt - 21/08/2024 19:35

    Resumiu muito bem e expos os principais pontos de cada um.

    Obrigado por compartilhar.