Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /

Colecciones fragmentadas con índices únicos

Los índices únicos no son compatibles en las colecciones particionadas, a menos que el índice sea la clave de partición o que la incluya como prefijo.

La restricción de unicidad en un índice garantiza que los documentos en la colección tengan un conjunto único de valores en el campo. Con colecciones particionadas, MongoDB no aplica la restricción de exclusividad en el campo a menos que el índice sea la clave de partición o la incluya como prefijo. Para evitar problemas:

1

Cree el índice que planea usar como la clave de partición:

db.names.createIndex( { region_id: 1 } )
region_id_1
2

Crear el índice único para la colección. Incluya la clave de partición como prefijo para el índice:

db.names.createIndex(
{ region_id: 1, email: 1 },
{ unique: true }
)
region_id_1_email_1
3
sh.shardCollection( "accounts.names", { region_id: 1 } )
{
collectionsharded: 'accounts.names',
ok: 1,
'$clusterTime': {
clusterTime: Timestamp( { t: 1759260515, i: 58 } ),
signature: {
hash: Binary.createFromBase64( 'AAAAAAAAAAAAAAAAAAAAAAAAAAA=', 0 ),
keyId: Long( '0' )
}
},
operationTime: Timestamp( { t: 1759260515, i: 57 } )
}

Volver

Convertir a único