Sobes.tech
Junior

Que tipos de bases de dados existem?

sobes.tech IA

Resposta da IA

As bases de dados são classificadas por vários critérios, principais tipos:

  1. Relacionais (orientadas a SQL):

    • Os dados são armazenados em tabelas com linhas e colunas.
    • As relações entre tabelas são definidas por chaves primárias e externas.
    • Utiliza-se a linguagem SQL para consultas.
    • Exemplos: PostgreSQL, MySQL, Oracle, SQL Server.
  2. Não relacionais (NoSQL):

    • Diferenciam-se das relacionais por esquemas flexíveis e escalabilidade horizontal.
    • Existem diferentes modelos de dados:
      • Chave-valor: Redis, Memcached.
      • Documentais: MongoDB, Couchbase.
      • Colunas largas: Cassandra, HBase.
      • Grafos: Neo4j, ArangoDB.
  3. Em memória (RAM):

    • Os dados são armazenados diretamente na RAM para acesso rápido.
    • Podem ser relacionais ou NoSQL.
    • Exemplos: Redis, Memcached, SAP HANA.
  4. Séries temporais:

    • Otimizadas para armazenar e analisar dados em ordem cronológica.
    • Exemplos: InfluxDB, TimescaleDB.
  5. Multimodelo:

    • Suportam vários modelos de dados simultaneamente (por exemplo, documental e gráfico).
    • Exemplos: ArangoDB, OrientDB.
  6. Espaciais:

    • Otimizadas para armazenar e consultar dados com coordenadas geográficas.
    • Frequentemente extensões de bases de dados relacionais ou NoSQL (por exemplo, PostGIS para PostgreSQL).
  7. Mestre-escravo:

    • Padrão arquitetónico para replicação de dados. Um nó (mestre) gere as escritas, outros (escravos) apenas leem e sincronizam-se com o mestre. Usado para escalar leituras e garantir alta disponibilidade.
  8. Sharding:

    • Os dados são distribuídos por vários nós independentes (shards). Usado para escalabilidade horizontal e gestão de grandes volumes de dados.

Tabela comparativa entre bases de dados relacionais e não relacionais (principais diferenças):

Característica Relacionais (SQL) Não relacionais (NoSQL)
Esquema Rígido, predefinido Flexível, dinâmico
Escalabilidade Vertical (mais difícil horizontal) Horizontal (mais simples)
Integridade de dados ACID (geralmente) BASE (mais frequente)
Modelo de dados Tabelas Chave-valor, documental, gráfico, etc.
Linguagem de consultas SQL Diversificada (API, específica)