Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Gestión Inteligente de Cargas de Trabajo

Nota

Esta página se aplica a Atlas Infinite y Atlas Core.

Las aplicaciones modernas deben permanecer disponibles incluso cuando los picos de tráfico y las querys costosas consumen más recursos de lo esperado. Intelligent Gestión de carga de trabajo (IWM) es la capacidad de disponibilidad gestionada por MongoDB Atlas que mantiene sus clústeres receptivos y predecibles, incluso bajo sobrecarga.

La sobrecarga se produce cuando el clúster recibe más operaciones de las que sus recursos pueden procesar. La sobrecarga puede desarrollarse más rápido de lo que su infraestructura puede escalar. Aunque habilite escalado automático, Atlas requiere tiempo para aprovisionar capacidad adicional. Esto abre una ventana durante la cual un clúster puede volverse inestable si trata todas las operaciones de la misma manera. IWM cierra esa ventana mediante la supervisión y la reacción a los picos de carga de trabajo y la presión de los recursos en tiempo real.

IWM es el sistema de protección contra sobrecarga que Atlas aplica a todos los clústeres dedicados que ejecutan MongoDB 9.0 o posterior. IWM incluye las siguientes protecciones:

  • Las protecciones siempre activas ponen en cola, ralentizan y priorizan las operaciones para evitar que saturen el clúster. Estas protecciones forman una base de defensa contra la sobrecarga. Para aprender más, consulte Protecciones siempre activas.

  • Load Shedding es una protección opcional que rechaza las operaciones de base de datos entrantes en respuesta a una sobrecarga sostenida. Para aprender más, consulta Deslastre de carga.

Atlas aplica un subconjunto de estas protecciones a cada clúster, en función del nivel del clúster, la topología, la versión de MongoDB y configuración de descarga de carga. Para aprender más, consulte Requisitos de clúster y versión.

Las protecciones siempre activas son el conjunto básico de protecciones IWM que Atlas aplica para absorber la sobrecarga y mantener la disponibilidad. Estas protecciones se ejecutan en todo momento, incluso cuando Load Shedding está deshabilitado, y no se pueden desactivar. Para saber cuáles de estas protecciones se aplican a su clúster, consulte Requisitos de clúster y versión.

  • Puesta en cola de entrada: Atlas ejecuta un limitador de velocidad de solicitudes de entrada en cada mongod proceso en su clúster, que determina la rapidez con la que cada proceso admite operaciones para su ejecución. Cuando un pico de tráfico supera la capacidad reservada de su clúster, el limitador de velocidad añade las operaciones entrantes excesivas a una cola de entrada en lugar de permitir que compitan por los recursos con las operaciones en ejecución. Si el uso de recursos se mantiene alto, el limitador de velocidad admite operaciones a un ritmo más lento, por lo que más operaciones esperan en la cola. El limitador de velocidad rechaza las operaciones solo si habilita reducción de carga en su clúster.

    Si el escalado automático reactivo está habilitado en su clúster, Atlas utiliza la tasa de operaciones en cola para determinar cuándo escalar su clúster. Atlas informa de esta tasa como Limitación de la tasa de operaciones: Operaciones en cola en las métricas de Atlas. Para aprender más, consulta Cómo Atlas escala el nivel de clúster.

  • Priorización del control de ejecución: Durante la sobrecarga, Atlas ayuda a que las lecturas y guardar de corta duración sigan avanzando al despriorizar las tareas en segundo plano y las operaciones de larga duración. Las query de larga duración pueden tardar más, independientemente de su importancia para el negocio. Bajo presión, Atlas ralentiza primero las operaciones costosas, de larga duración o de baja prioridad.

  • Expulsión de la caché y ajuste de la memoria: Atlas ajusta cómo su clúster utiliza la memoria y expulsa los datos de la caché. Cuando la memoria escasea, su clúster se ralentiza de forma controlada en lugar de quedarse sin memoria o borrar repetidamente los datos que más necesita.

  • Limitación de la tasa de conexión: Durante las tormentas de conexión, Atlas admite nuevas conexiones de cliente a una tasa segura y rechaza las solicitudes de conexión excesivas mientras conserva las conexiones existentes. Para aprender más, consulte Límites de velocidad de conexión.

  • Bloqueo de guardar: En los clústeres de Atlas Core, si el nodo primario se queda sin espacio libre en disco, Atlas bloquea las operaciones de guardar en el set de réplicas. Atlas continúa sirviendo lecturas mientras se bloquean los guardados. Las operaciones de guardar bloqueadas incluyen operaciones de borrado, porque borrar documentos puede aumentar temporalmente el espacio en disco utilizado. En clúster particionado, Atlas solo bloquea las operaciones de guardar dirigidas a la partición afectada.

    El tamaño total del disco de un nodo determina los umbrales que Atlas aplica. La siguiente tabla enumera los umbrales para cada rango de tamaño de disco:

    Tamaño total del disco
    Umbrales

    8 GiB a 20 GiB

    Atlas bloquea el guardar cuando el espacio libre en disco cae por debajo de 600 MiB. Atlas desbloquea el guardar cuando el espacio libre en disco supera 900 MiB.

    20 GiB a 1.25 TiB

    Atlas bloquea el guardar cuando el espacio libre en disco cae por debajo del 4% del tamaño total del disco. Atlas desbloquea las operaciones de guardar cuando el espacio libre en disco supera el 6% del tamaño total del disco.

    1.25 TiB o superior

    Atlas bloquea guardar cuando el espacio libre en disco cae por debajo de 50 GiB. Atlas desbloquea los guardados cuando el espacio libre en disco supera los 75 GiB.

    Para recuperar espacio en disco, aumente el almacenamiento del clúster o habilite el escalado automático del almacenamiento.

    Cuando Atlas bloquea los guardados, los registros de Atlas devuelven un MongoServerError indicando que los guardados están bloqueados. El código de error y el motivo dependen de la compatibilidad de características entre versiones (FCV) del clúster:

    • Para clústeres con compatibilidad de características entre versiones 9.0 o posterior, los registros devuelven un MongoServerError similar al siguiente: Replica set writes blocked, reason: InsufficientDiskSpace.

    • Para clústeres con compatibilidad de características entre versiones anterior a 9.0, el registro devuelve un MongoServerError similar al siguiente: User writes blocked, reason: DiskUseThresholdExceeded.

    En los clústeres Atlas Infinite, Atlas bloquea las operaciones de guardar cuando el tamaño lógico de los datos en el set de réplicas se acerca al límite máximo de almacenamiento del clúster. Para aprender más sobre los límites de almacenamiento en los clústeres Atlas Infinite, consulte Gestionar el almacenamiento en un clúster Atlas Infinite.

Load Shedding es una protección IWM que rechaza las operaciones de base de datos entrantes lo antes posible para limitar su impacto en el clúster. A diferencia de las protecciones siempre activas de IWM, la descarga de carga es opcional, por lo que puede controlar si Atlas lo aplica a su clúster. Cuando está habilitada, la descarga de carga se activa únicamente durante una sobrecarga sostenida, después de que otras protecciones no puedan aliviar suficiente presión.

Como parte de las protecciones siempre activas de IWM, Atlas ejecuta un limitador de velocidad de solicitudes de entrada en cada mongod proceso en su clúster. Este limitador de tasa admite operaciones en el proceso a una tasa controlada, y añade cualquier solicitud de operación que llegue más rápido que esta tasa a una cola de entrada en ese proceso.

Cuando la reducción de carga está habilitada, Atlas limita el tamaño de la cola de entrada en cada proceso mongod del clúster. Si llega una operación mientras la cola de un proceso está llena, Atlas rechaza la operación con un error de sobrecarga. Esto evita que la cola crezca demasiado durante una sobrecarga sostenida.

Cuando el deslastre de carga está deshabilitado, Atlas no limita el tamaño de la cola de entrada en ningún proceso mongod en su clúster ni rechaza ninguna operación que llegue más rápido que la tasa de admisión del limitador de velocidad. Durante una sobrecarga sostenida, cada proceso mongod continúa añadiendo un número ilimitado de operaciones a su cola, por lo que las operaciones tardan más en completarse.

Si el escalado automático reactivo está habilitado en su clúster, Atlas utiliza la tasa de operaciones que Load Shedding rechaza para determinar cuándo escalar su clúster. Atlas informa esta tasa como Rejected Operations en Limitación de velocidad de operaciones en las métricas de Atlas. Para aprender más, consulta Cómo Atlas escala el nivel de clúster.

Nota

La reducción de carga es independiente de la reducción de carga de búsqueda. La reducción de carga rechaza las operaciones de base de datos en el proceso mongod. La reducción de carga de búsqueda rechaza las consultas de búsqueda de MongoDB y de búsqueda vectorial de MongoDB en el proceso mongot. Ambas protecciones son independientes, por lo que configurar una no afecta a la otra. Para obtener más información, consulte:

Load Shedding solo está disponible en M30+ clústeres de set de réplicas que ejecutan MongoDB 9.0 o posterior. Por defecto, Atlas establece el valor de la configuración de Load Shedding a Atlas Managed, lo que permite a Atlas controlar el estado efectivo de Load Shedding para su clúster. En MongoDB 9.0, ese estado es Disabled.

Importante

Cuando se habilita, Load Shedding puede aumentar el número de errores de sobrecarga en su clúster. Para aprender a gestionar estos errores, consulte Gestionar errores de sobrecarga de la descarga de carga.

Para configurar Load Shedding en su clúster, utilice la Interfaz de Usuario de Atlas o la Atlas Administration API:

La gestión inteligente de la carga de trabajo (IWM) está activa en todos los clústeres dedicados que ejecutan MongoDB 9.0 o versiones posteriores. IWM no está disponible para los clústeres gratuitos o los clústeres Flex.

Cuando IWM está activo en un clúster, Atlas aplica un subconjunto de protecciones de IWM basándose en el nivel, la topología, la versión de MongoDB del clúster y Load Shedding configuration. La siguiente tabla enumera las protecciones que Atlas aplica a cada combinación de nivel de clúster y topología en MongoDB 9.0 y versiones posteriores:

Protección IWM
M10 y M20 clústeres
M30+ clústeres de set de réplicas
M30+ Clústeres particionados

Puesta en cola de ingreso

No

Sí

No

Priorización del control de ejecución

No

Sí

No

Expulsión de la caché y optimización de la memoria

Sí

Sí

Sí

Limitación de la tasa de conexión

Sí

Sí

Sí

Bloqueo de guardar

Sí

Sí

Sí

Reducción de carga

No

Sí, cuando está habilitado

No

Nota

Excepciones a MongoDB 9.0 Requisitos de la versión.

Las siguientes protecciones IWM están activas en clústeres que ejecutan versiones de MongoDB anteriores a 9.0:

  • El bloqueo de guardar está activo en M10+ clústeres que ejecutan MongoDB 8.0 o posterior.

  • La optimización de memoria está activa en M10+ clústeres que ejecutan MongoDB 8.0 o posterior.

  • La expulsión de caché está activa en M10+ clústeres que ejecutan MongoDB 8.3.3 o posterior, o MongoDB 8.0.28 o posterior.

  • La limitación de la tasa de conexión está activa en los clústeres M10 y M20 que ejecutan las siguientes versiones de MongoDB:

    • 7.0.23 y posteriores 7.0.x lanzamientos

    • 8.0.12 y posteriores 8.0.x lanzamientos

    • 8.1.2 y posteriores 8.1.x lanzamientos

Atlas proporciona varias superficies de observabilidad que muestran cuándo IWM protege su clúster y qué operaciones Atlas retrasó o rechazó: