Estou escrevendo minha primeira publicação sobre MongoDB e clusters MongoDB Sharded mais específicos. Na documentação, descobri que a chave de fragmentação no caso de fragmentação à distância deve ser "Chaves de fragmentação que não mudam monotonicamente".
Alguém pode explicar isso para mim? Exemplo seria apreciado.
Obrigado.
Monotônico aqui é usado no sentido matemático estrito . Uma chave que muda monotonicamente é tal que cada valor de chave não é menor que (aumentando monotonicamente) ou não maior que (diminuindo monotonicamente) todas as chaves geradas anteriormente. Uma sequência, no sentido SQL desta palavra, seria um exemplo de chave monotônica.
Uma chave que muda não monotonicamente, por outro lado, é tal que seu valor pode ser menor, maior ou igual a qualquer um dos valores gerados anteriormente. Um valor aleatório seria um exemplo disso.
Uma chave monotonicamente alterada usada para fragmentação faz com que documentos recém-inseridos sejam roteados para um único fragmento, criando um ponto de acesso de desempenho. Com uma chave não monotônica, as gravações serão distribuídas por todos os shards (espero), melhorando assim o desempenho.