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
-
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
-
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. -
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. -
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
