Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

redis para registro


Você precisa ter em mente que o Redis é um banco de dados na memória (mesmo que possa persistir os dados no disco). Os dados que você coloca no Redis precisam caber na memória.

A proposta no artigo que você mencionou é sobre o uso do Redis como um sistema de filas distribuído. Os processos de trabalho retiram os itens da fila e os gravam no disco, para que não haja muitos itens na memória do Redis. Esse design tem uma falha:se os processos de trabalho não puderem gravar os dados com rapidez suficiente no disco, o consumo de memória do Redis explodirá - portanto, ele deve ser limitado pela configuração (parâmetro Redis maxmemory) ou software (aparar a fila no momento da inserção ou esvaziar a fila quando estiver cheia).

Agora, sua proposta não funciona realmente, pois todos os dados que você escreve no Redis serão mantidos na memória (mesmo que sejam persistidos em disco pelo próprio Redis).

Outro ponto é que você não pode consultar o Redis. O Redis não é um banco de dados relacional, não suporta nenhum mecanismo de consulta ad-hoc, apenas comandos envolvendo caminhos de acesso previamente definidos. Se você deseja pesquisar dados com parâmetros diferentes, deve antecipar todas as pesquisas possíveis e construir as estruturas de dados relevantes (conjuntos, conjuntos classificados, etc ...) no momento da inserção.

Outra loja (MongoDB ou um banco de dados relacional) provavelmente será muito mais adequada para o seu caso de uso.