Skip to main content

Quando usar por tipos de bancos

  • Quando usar por tipos de bancos

Relacional e não relacional

  • Não relacional foi criado para atacar problemas específicos enquanto relacional é para problemas mais generalistas
  • Explicação
  1. Bancos de dados SQL (linguagem de consulta estruturada):

    Caso de uso: Mais adequado para aplicativos com dados estruturados e relacionais. Exemplos: MySQL, PostgreSQL, Microsoft SQL Server, Oracle etc. Quando usar: Para aplicações onde a integridade e a consistência dos dados são cruciais e onde os relacionamentos entre diferentes entidades de dados precisam ser mantidos.

    Motivos:

    • Dados estruturados
    • Schema restrito
    • Dados relacionados
    • Joins complexos
    • Transações
    • Indices
    • Consistência
    • ACID
  2. Bancos de dados NewSQL:

    Caso de uso: destinado a resolver problemas de escalabilidade, mantendo as propriedades ACID dos bancos de dados SQL tradicionais. Exemplos: CockroachDB, Google Spanner etc. Quando usar: quando você precisar da escalabilidade dos bancos de dados NoSQL, mas exigir forte consistência e conformidade com ACID, típica dos bancos de dados SQL tradicionais.

  3. Data Warehouses:

    Caso de uso: projetado para armazenar e analisar grandes volumes de dados para inteligência de negócios e relatórios. Exemplos: Amazon Redshift, Google BigQuery, Snowflake etc. Quando usar: para fins analíticos e de relatórios onde você precisa processar e analisar grandes conjuntos de dados com eficiência.

  4. Bancos de dados NoSQL:

    Caso de uso: Adequado para aplicações com dados não estruturados ou semiestruturados e onde a escalabilidade horizontal é essencial. Exemplos: MongoDB (banco de dados de documentos), Cassandra (coluna larga), Redis (InMemory). Quando usar:Bancos de dados de documentos (por exemplo, MongoDB): para aplicativos com esquemas flexíveis e em evolução. Armazenamentos de colunas amplas (por exemplo, Cassandra): Ao lidar com grandes quantidades de dados com alto rendimento de gravação e leitura. Bancos de dados InMemory (por exemplo, Redis): quando a baixa latência e o acesso rápido aos dados são críticos.

    Motivos:

    • Dados semi-estruturados
    • Schema flexível
    • Dados não relacionais
    • Joins não complexos
    • Armazenamento de TB/PB
    • Performance
    • Big Data
    • Escalabilidade Horizontal
    • Começando um MVP que ainda não está pronto

    1701863648281.gif