Um blog como https://neo4j.com/blog/acid -vs-base-consistency-models-explained/ explica BASE desta forma:
Esse nível de equívoco não parece muito confiável, não é? Eles trocam disponibilidade e consistência para obter desempenho e escalabilidade.
Isso é bom se você estiver executando um serviço que é tolerante a dados incompatíveis ou dados obsoletos, ou que está bem com uma pequena quantidade de perda de dados de vez em quando. Se esses problemas são uma ocorrência incomum, mas você obtém desempenho superior quase o tempo todo, é muito atraente. E mais importante, ele demonstra bem.
Mas se você tiver que executar um serviço com requisitos rígidos de integridade de dados, não adianta. Se a perda de um único registro de dados causar problemas com os auditores ou se você não puder ler de forma confiável os dados que acabou de confirmar um momento antes porque esse commit leva tempo para se propagar para todos os nós do cluster, pode ser um problema .
Portanto, qual armazenamento de dados escolher depende dos requisitos do seu aplicativo. Somente você pode julgar se a disponibilidade e a consistência relaxadas de um armazenamento de dados BASE são suficientes para as necessidades do seu aplicativo.