MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

MongoDB - Vantagem de usar string de 12 bytes como identificador exclusivo em vez de valor incremental


Incrementar valores ou sequências requer um ponto de referência central que é um fator limitante para a escala. ObjectIDs são projetados para serem IDs razoavelmente exclusivos que podem ser gerados independentemente em um ambiente distribuído com valores crescentes monotonicamente (um componente de carimbo de data/hora principal) para ordenação aproximada.

Os ObjectIDs são normalmente gerados por drivers MongoDB, portanto, não há necessidade de fazer uma viagem de ida e volta ao servidor para encontrar o próximo _id disponível ou espere o resultado do servidor de uma operação de inserção para saber o que _id foi alocado. Se um driver ou aplicativo cliente inserir um documento sem incluir um _id valor, um ObjectID será gerado pelo mongod servidor.

Não há requisito estrito para usar ObjectIDs no MongoDB:você pode fornecer seu próprio _id valores se houver uma chave exclusiva mais natural para seus dados ou se você preferir um formato de chave primária alternativo.