Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

mergeAllChunksOnShard (comando de base de datos)

mergeAllChunksOnShard

mergeAllChunksOnShard Encuentra y fusiona todo fragmentos fusionables que una partición posee para una colección determinada.

Este comando está disponible en implementaciones alojadas en los siguientes entornos:

  • MongoDB Atlas: El servicio totalmente gestionado para implementaciones de MongoDB en la nube

  • MongoDB Enterprise: La versión basada en suscripción y autogestionada de MongoDB

  • MongoDB Community: La versión de MongoDB con código fuente disponible, de uso gratuito y autogestionada.

El comando tiene la siguiente sintaxis:

db.adminCommand(
{
mergeAllChunksOnShard: <name of the collection>,
shard: <name of the shard>,
maxNumberOfChunksToMerge: <maximum number of chunks to merge> /* optional */
}
)

El comando toma los siguientes campos:

Campo
Tipo
Necesidad
Descripción

mergeAllChunksOnShard

string

Requerido

Nombre de la colección.

shard

string

Requerido

Nombre de la partición.

maxNumberOfChunksToMerge

entero

Opcional

Número máximo de fragmentos a fusionar.

mergeAllChunksOnShard Busca y fusiona todos los fragmentos fusionables de una colección en el mismo fragmento. Dos o más fragmentos contiguos de la misma colección son fusionables cuando cumplen todas estas condiciones:

  • Son propiedad de la misma partición.

  • No son fragmentos jumbo. jumbo fragmentos no se pueden fusionar porque no pueden participar en las migraciones.

  • Su historial se puede purgar de forma segura, sin interrumpir las transacciones ni las lecturas de instantáneas:

Este ejemplo asume que el historial está vacío para todos los fragmentos y que todos los fragmentos no son jumbo. Como ambas condiciones se cumplen, todos los intervalos contiguos en la misma partición son fusionables.

Estos fragmentos pertenecen a una colección llamada coll con clave de partición x. Hay nueve fragmentos en total.

fragmento ID
Min
máximo
Partición

A

x: 0

x: 10

Partición0

B

x: 10

x: 20

Partición0

C

x: 20

x: 30

Partición0

D

x: 30

x: 40

Partición0

E

x: 40

x: 50

Shard1

F

x: 50

x: 60

Shard1

G

x: 60

x: 70

Partición0

H

x: 70

x: 80

Partición0

ME

x: 80

x: 90

Shard1

1
db.adminCommand( { mergeAllChunksOnShard: "db.coll", shard: "Shard0" } )

Este comando fusiona las secuencias contiguas de fragmentos:

  • A-B-C-D

  • GH

2
db.adminCommand( { mergeAllChunksOnShard: "db.coll", shard: "Shard1" } )

Este comando fusiona las secuencias contiguas de fragmentos E-F.

Después de que estos comandos se hayan completado, los fragmentos contiguos se han combinado. Hay cuatro fragmentos en total en lugar de los nueve originales.

fragmento ID
Min
máximo
Partición

A-B-C-D

x: 0

x: 40

Partición0

E-F

x: 40

x: 60

Shard1

GH

x: 60

x: 80

Partición0

ME

x: 80

x: 90

Shard1

Volver

lista de fragmentos

En esta página