NoSQL: Teorema CAP, MongoDB, CouchDB
Students will work in groups to create a Wiki comparing major NoSQL databases. If you did not work before with Moodle Wikis, see this small video (3:36 min.) on the Wiki activity page.
Back
Reds
Viewing page version #4
(Restore this version)
(Restore this version)
Modified: 14 December 2022, 10:23 AM User: Luisa Souza Moura → LS
DB name: Redis
Presentation:
Student List:
Presentation:
Student List:
- Jefferson Eduardo Muniz Bueno - 11275255
- Luísa Souza Moura - 10692179
Main DB Features:
Does It Implement CA, CP, or AP? Why?
No teorema CAP, Redis não é situado de maneira absoluta em nenhuma das categorias, pois oferece consistência e disponibilidade configuráveis. Dessa maneira, pode ser adaptado para priorizar alguma das 3 categorias em certo nível. Então, fica a cargo do usuário escolher as configurações apropriadas para o caso de uso.
Porém, armazenamentos "Key-value" como o redis, tão tipicamente construídos para priorizar disponibilidade e partição tolerante e falhas. no redis, isso se deve ao fato do Redis possuir arquitetura Master Slave e, se um Master falhar, os Redis Sentinels promovem um Slave para ser o novo Master, tornando toda a solução altamente disponível. E um mestre pode falhar (ou ficar indisponível) por vários motivos (por exemplo, falta de memória), não necessariamente devido a uma partição de rede (network partition).
Porém, armazenamentos "Key-value" como o redis, tão tipicamente construídos para priorizar disponibilidade e partição tolerante e falhas. no redis, isso se deve ao fato do Redis possuir arquitetura Master Slave e, se um Master falhar, os Redis Sentinels promovem um Slave para ser o novo Master, tornando toda a solução altamente disponível. E um mestre pode falhar (ou ficar indisponível) por vários motivos (por exemplo, falta de memória), não necessariamente devido a uma partição de rede (network partition).
DB Advantages:
DB Disadvantages:
Application Niches:
Devido a sua versatilidade e desempenho, a Redis tem vários casos de uso, incluindo análise em tempo real, transações de alta velocidade, caching e corretagem de mensagens. Alguns dos principais nichos para a Redis são:
- Análise em tempo real: O armazenamento de dados na memória da Redis e o suporte para estruturas de dados como bitmaps e hiperlogs o tornam bem adequado para análises em tempo real. Isto permite que as aplicações acessem e analisem rapidamente grandes quantidades de dados em tempo real, o que é importante para aplicações como sistemas de comércio, plataformas de mídia social e e-commerces.
- Transações de alta velocidade: O armazenamento de dados na memória da Redis e o suporte para estruturas de dados como listas, sets e ordered sets fazem com que ela seja adequada para aplicações que requerem acesso rápido e confiável aos dados. Isto faz da Redis uma boa escolha para aplicações que precisam processar um alto volume de transações, tais como sistemas de pagamento on-line e e e-commerces.
- Caching: O armazenamento de dados na memória da Redis e o suporte para estruturas de dados como hashes e listas o tornam bem adequado para o caching. Isto permite que as aplicações acessem rapidamente os dados frequentemente utilizados, o que pode melhorar o desempenho e a escalabilidade da aplicação. O Redis é freqüentemente usado como cache em frente a um banco de dados para acelerar o acesso aos dados e reduzir a carga no banco de dados.