Restrições operacionais em clusters fragmentados
Nesta página
Compartilhamento de restrições operacionais
Operações indisponíveis em ambientes compartilhados
$where
não permite referências ao objeto db
a partir da função $where
. Isso é incomum em coleções não compartilhadas.
O comando geoSearch
não é suportado em ambientes fragmentados.
No MongoDB 5.0 e versões anteriores, você não pode especificar coleções fragmentadas no parâmetro from
dos estágios $lookup
.
Operações de Modificação de Documentos Únicos em Coleções Compartilhadas
Para usar operações updateOne()
e deleteOne()
para uma coleção fragmentada que especifique a opção multi: false
ou justOne
:
Se você segmentar apenas um fragmento, poderá usar uma chave de fragmento parcial na especificação da consulta ou,
Você pode fornecer a chave de estilhaço ou o campo
_id
na especificação de consulta.
Para utilizar o findOneAndUpdate()
com uma coleção fragmentada, seu filtro de query deve incluir uma condição de igualdade na chave de fragmentação para comparar a chave e o valor em qualquer um destes formatos:
{ key: value } { key: { $eq: value } }
Índices exclusivos em coleções fragmentadas
O MongoDB não oferece suporte a índices exclusivos entre shards, exceto quando o índice exclusivo contém a chave completa do shard como um prefixo do índice. Nessas situações, o MongoDB reforçará a exclusividade em toda a chave, não em um único campo.
Índices consistentes
O MongoDB não garante índices consistentes entre shards. A criação de índice durante operações deaddShard
ou migrações de blocos pode não se propagar para novos shards.
Para verificar um cluster fragmentado para índices consistentes, utilize o comando checkMetadataConsistency
:
db.runCommand( { checkMetadataConsistency: 1, checkIndexes: true } )