MongoDB – Dicas – App – Atualize somente campos alterados

1.8 App, Update somente nos campos que sofreram alterações!

Web App Saga!

O cmd update por padrão recebe o doc JSON, ele substituirá o atual com o mesmo _id usado como filtro. No entanto, substituição de docs inteiros podem onerar um overhead desnecessário na base.

mongo_dicas_update

A boa prática é aplicar operadores de update para alterar APENAS campos que sofreram mudanças. Ou seja, se apenas o endereço do cliente sofreu edição, mande apenas essa alteração ao db, resultando em diminuição de tempo com update e consumo da rede.

Como o ACID do MongoDB é garantido apenas a nível de doc, uma base com alta concorrência pode falhar no update caso opte apenas pelo $set (cmd mais simples).

Para campos numéricos que sofrem alterações, $inc e $mul são opções, pois operam sobre o valor atual do campo, sem a necessidade de conhecê-lo com antecedência, o que poderia causar inconsistências caso o update de outro usuário seja mais veloz no mesmo campo.

Modelar a base pensando nas consultas nos facilitará muito.

Para mais detalhes consulte a documentação oficial do MongoDB.

Next stop MongoDB. Disembark on the left.

Keep Programming!

Leave a Reply

Your email address will not be published. Required fields are marked *