image

Access unlimited bootcamps and 650+ courses forever

60
%OFF
Article image
Giuliano Criscuoli
Giuliano Criscuoli21/03/2025 10:35
Share
Nexa - Análise Avançada de Imagens e Texto com IA na AWSRecommended for youNexa - Análise Avançada de Imagens e Texto com IA na AWS

NoSQL X SQL Direto ao Ponto

  • #SQL Server
  • #SQL
  • #NoSQL
  • #Redis
  • #MySQL
  • #Cassandra
  • #MongoDB
  • #DynamoDB

Olá pessoal! Apesar de ser um conteúdo bem básico, garanto que será informativo para quem está começando a estudar banco de dados e seus tipos relacionais e não relacionais.

O Que é NoSQL e SQL?

SQL é um banco de dados relacional, onde os dados são armazenados em tabelas com linhas e colunas. Bancos SQL como MySQL, PostgreSQL e SQL Server usam a linguagem SQL para manipular e consultar os dados. Basicamente, os bancos relacionais fazem o relacionamento entre tabelas para que possamos obter dados interligados por essa relação.

Podemos usar como exemplo um aluno se matriculando em vários cursos. Para saber em quais cursos ele está matriculado, precisamos de uma chave única que identifique essa matrícula. As tabelas em bancos relacionais possuem, em cada tabela, uma chave única conhecida como PRIMARY KEY. Para estabelecer o relacionamento, essa mesma chave será usada como uma chave estrangeira em outra tabela, chamada de FOREIGN KEY.

Para não aprofundar tanto em conteúdo mais técnico (a ideia é ser o mais breve), deixarei um site com exemplos e explicações sobre tipos de relacionamentos entre tabelas relacionais: https://www.cadcobol.com.br/db2_novo_tipos_relacionamentos.htm

NoSQL é um banco não relacional, projetado para armazenar grandes volumes de dados de forma flexível. Bancos como MongoDB, Cassandra e DynamoDB usam estruturas como documentos, chave-valor, grafos ou colunas para armazenar informações. Geralmente quando temos modificações que ocorrem de tempos em tempos, como uma promoção da black friday de algum ecommerce, neste caso terá uma concentração grande de volume de dados, utilizar um banco não relacional é uma boa opção para manter a performance da base de dados.

Diferença Entre NoSQL e SQL

  • Estrutura: SQL usa tabelas relacionais; NoSQL utiliza documentos, grafos ou colunas.
  • Escalabilidade: NoSQL é horizontalmente escalável (adiciona mais máquinas), enquanto SQL geralmente escala verticalmente (potencializa uma única máquina).
  • Flexibilidade: NoSQL permite alterações na estrutura dos dados sem precisar reformular esquemas.
  • Consistência: SQL prioriza consistência forte; NoSQL pode sacrificar consistência em prol da disponibilidade.

Qual utilizar?

Isso vai depender muito mais da necessidade do projeto como: analisar volume, se há uma necessidade de ter relacionamento, um projeto que precisa ser consistente (que todos os dados que forem atualizados vão replicar em outras partes ou réplicas do banco). Caso seja apenas para estudar é válido conhecer os dois tipos, há muito mercado para ambos.

Redes Sociais

🔗 GitHub: github.com/GiulianoCriscuoli

🔗 LinkedIn: Giuliano Criscuoli

🔗 Instagram: @southlaser

Share
Recommended for you
Heineken - Inteligência Artificial Aplicada a Dados com Copilot
Sysvision - Data Analytics com Power BI
Microsoft Certification Challenge #3 DP-100
Comments (1)
DIO Community
DIO Community - 21/03/2025 12:31

Giuliano, você fez uma excelente explicação sobre as diferenças entre SQL e NoSQL! De maneira prática e objetiva, destacou as principais características de ambos, como a estrutura de dados, escalabilidade e flexibilidade, além de dar exemplos claros de como cada tipo de banco de dados pode ser usado conforme a necessidade do projeto.

Agora, me conta: qual foi o maior desafio que você enfrentou ao trabalhar com bancos NoSQL e SQL? Você já teve que migrar de um para o outro em algum projeto, e como lidou com as diferenças de estrutura e consultas entre os dois tipos de banco?

Recommended for you