Executando verificação de segurança...
-2

Por que ser contra NoSQL? O NoSQL faz coisas que no relacional custa muito caro ou fica complexo demais de se implementar.

Quer um exemplo simples? Um usuário assina o serviço em Janeiro/2025, o plano que ele assinou mudou o preço em Junho/2025 e em Dezembro/2025, mas ele tem que continuar com o mesmo preço que os outros não tem mais acesso.

No relacional você teria que ficar criando novos registros (novos planos) pra conseguir manter a integridade de dados com "dados passados". No NoSQL, basta embutir o plano diretamente na assinatura do usuário, o que permite um grau de personalização maior ainda (tipo, um usuário específico tem desconto de 10% todos os meses enquanto mantiver o plano ativo).

No relacional resolver ess tipo de situação é um inferno.

Carregando publicação patrocinada...
1

Nesse caso você se engana muito. Num exemplo real, apagar os planos passados seria um erro, você tem que pensar várias vezes antes de apagar de vez um registro. O ideal seria mesmo criar novos planos com status de disponibilidade diferente. Nesse exemplo, como você teria controle de exatamente quais planos existem e ainda estão ativos pra alguns usuários? A integridade do SQL vale a pena cada dor de cabeça, pelo menos na minha experiência

1

Entendo que nesse caso o conceito de Snapshot seria útil, não? Você "trava" os registros com a informação deles, Plano A com valor X para o usuário 1 (valor travado), reajustes e descontos aplicados a ele, Plano A com valor Y para usuário 2...
Sempre que você atualiza um plano, quem tem esse plano não atualiza, eles ficam com o valor atual, contendo os reajustes e descontos aplicados.

Isso é ruim pra caso a empresa queira fazer um "ajuste geral" mas é bom para fidelizar o cliente.

Ou a ideia de novos planos sempre é a opção, "exemplo com internet" ao invés de no banco chamar o plano de 600mb ele seria 600mb20260302 para que tenha um registro de quando esse plano foi criado, as atualizações nele vão impactar todos os clientes cadastrados nele e os novos planos de "600mb" vão ter nomes com registros diferentes, pode haver uma "coluna" com o valor de mb do plano para "ajuste em massa", extinção e migração do plano caso necessário.

Me corrija se eu estiver errado em meu ponto de visita por favor.