Docs Menu
Docs Home
/ /

cambiarOpcionesDeTransmisión

changeStreamOptions

Novedades en la versión 6.0.

Disponible para ambos mongod y.mongos

Un objeto que contiene opciones de configuración de flujo de cambios.

Solo se puede establecer changeStreamOptions en mongos o en un conjunto de réplicas principal. El valor se establece para todo el clúster.

Para configurar changeStreamOptions para su implementación, ejecute el siguiente comando en la base de datos admin:

db.adminCommand( { setClusterParameter: { changeStreamOptions: <value> } } )

Para ver los valores actuales del parámetro de clúster changeStreamOptions, ejecute el siguiente comando en la base de datos admin:

db.adminCommand( { getClusterParameter: "changeStreamOptions" } )
changeStreamOptions.preAndPostImages.expireAfterSeconds

Novedades en la versión 6.0.

Predeterminado: desactivado

Controla la política de retención de imágenes previas y posteriores del flujo de cambios. Las imágenes previas y posteriores son las versiones de un documento antes y después de su modificación, respectivamente. expireAfterSeconds controla el tiempo que MongoDB conserva las imágenes previas y posteriores.

Cuando expireAfterSeconds offes, MongoDB utiliza la política de retención predeterminada: las imágenes anteriores y posteriores se conservan hasta que los eventos de flujo de cambio correspondientes se eliminan del registro de operaciones.

Para establecer el tiempo mínimo de retención de imágenes previas y posteriores, especifique un valor entero para expireAfterSeconds.

Importante

Servicios que utilizan flujos de cambio, incluidos Los disparadores y la sincronización de dispositivos pueden depender de la disponibilidad de datos de preimagen. Si se establece expireAfterSeconds un valor de demasiado bajo, podría aumentar el riesgo de interrumpir la sincronización o el procesamiento de los disparadores.

Al configurar expireAfterSeconds para imágenes previas, asegúrese de lo siguiente:

  • Especifique un valor que no sea inferior al retraso típico del flujo de cambio para el servicio.

  • Agregue tiempo de almacenamiento en búfer para permitir que el servicio se reanude manualmente antes de correr el riesgo de perder datos del registro de operaciones.

Si se elimina un evento de flujo de cambio del registro de operaciones, las imágenes previas y posteriores correspondientes también se eliminan independientemente del tiempo de retención especificado changeStreamOptions.preAndPostImages.expireAfterSeconds con.

El siguiente ejemplo establece el tiempo de retención de las imágenes previas y posteriores en los flujos de cambio en 100 segundos:

db.runCommand( {
setClusterParameter: {
changeStreamOptions: { preAndPostImages: { expireAfterSeconds: 100 } }
}
} )

Volver

auditConfig

En esta página