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

Refinar una clave de partición

Optimizar la clave de partición de una colección permite una distribución de datos más granular y puede abordar situaciones en las que la clave existente ha conducido a fragmentos jumbo debido a una insuficiente cardinalidad.

Advertencia

No se modifique el rango ni el tipo encriptada de ninguno de los campos clave de partición actuales. Causa inconsistencias de datos. Por ejemplo, no se debe modificar una clave de partición de { customer_id: 1 } a { customer_id: "hashed", order_id: 1 }.

Nota

A partir de MongoDB 5.0, también puedes repatricionar tu colección proporcionando una nueva clave de partición para la colección. Para aprender si deberías redistribuir tu colección o refinar tu clave de partición, consulta Cambiar una clave de partición.

Para refinar la clave de partición de una colección, utiliza el comando refineCollectionShardKey. El refineCollectionShardKey añade un campo o campos de sufijo a la clave existente para crear la nueva clave de partición.

Por ejemplo, puedes tener una colección orders existente en una base de datos test con la clave de partición { customer_id: 1 }. Puedes usar el comando refineCollectionShardKey para cambiar la clave de partición a la nueva clave de partición { customer_id: 1, order_id: 1 }:

db.adminCommand( {
refineCollectionShardKey: "test.orders",
key: { customer_id: 1, order_id: 1 }
} )

Volver

Cambiar la clave de fragmentación