

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Uso de Amazon DocumentDB sin servidor
<a name="docdb-serverless"></a>

Amazon DocumentDB sin servidor es una configuración de escalado automático bajo demanda que automatiza los procesos de ajuste dinámico de la capacidad de la base de datos de Amazon DocumentDB en función de la demanda de las aplicaciones. Solo se le cobrará por los recursos que consuman los clústeres. Por lo tanto, DocumentDB sin servidor le permite mantenerse dentro del presupuesto y evitar pagar los recursos de computación que no utiliza.

Este tipo de automatización es especialmente valioso para entornos con cargas de trabajo muy variables e impredecibles, como bases de datos de multitenencia, bases de datos distribuidas y sistemas de desarrollo y pruebas.

**Topics**
+ [Casos de uso de la tecnología sin servidor](#docdb-serverless-use-cases)
+ [Ventajas de Amazon DocumentDB sin servidor](#docdb-serverless-advantages)
+ [Cómo funciona sin servidor](docdb-serverless-how-it-works.md)
+ [Requisitos y limitaciones sin servidor](docdb-serverless-limitations.md)
+ [Creación de un clúster que utilice la tecnología sin servidor](docdb-serverless-create-cluster.md)
+ [Migración a sistemas sin servidor](docdb-serverless-migrating.md)
+ [Administración sin sistemas sin servidor](docdb-serverless-managing.md)
+ [Límites de instancias sin servidor](docdb-serverless-instance-limits.md)
+ [Configuración de escalado sin servidor](docdb-serverless-scaling-config.md)
+ [Supervisión sin servidor](docdb-serverless-monitoring.md)

## Casos de uso de DocumentDB sin servidor
<a name="docdb-serverless-use-cases"></a>

Los clústeres aprovisionados de Amazon DocumentDB y DocumentDB sin servidor admiten muchos tipos de cargas de trabajo de base de datos, desde entornos de desarrollo y pruebas hasta las aplicaciones más exigentes y esenciales para la empresa que requieren una gran escala y disponibilidad. Sin embargo, DocumentDB sin servidor añade otra dimensión a las cargas de trabajo del cliente, a saber, la capacidad de admitir sitios web y aplicaciones que tienen cargas de trabajo impredecibles.

DocumentDB sin servidor es especialmente útil para los siguientes casos de uso:
+ **Cargas de trabajo variables**: ejecuta cargas de trabajo que tienen un aumento de actividad repentino e impredecible. Un ejemplo de ello sería un sitio dedicado al tráfico, que experimenta un aumento repentino de la actividad cuando comienza a llover. Otro caso sería un sitio de comercio electrónico en el que aumenta el tráfico cuando se ofrecen ventas o promociones especiales. Con DocumentDB sin servidor, la capacidad de la base de datos se escala automáticamente para satisfacer las necesidades de los picos de carga de la aplicación y vuelve a disminuir cuando termina el aumento de actividad. Con DocumentDB sin servidor, ya no tiene que aprovisionar la capacidad para los picos ni para la carga promedio. Puede especificar un límite de capacidad superior para gestionar la peor situación. Esa capacidad no se utilizaría a menos que fuera necesario.
  + La granularidad de la reducción horizontal de DocumentDB sin servidor le permite adaptar la capacidad a las necesidades de su base de datos. En el caso de un clúster aprovisionado, el escalado vertical requiere añadir una nueva instancia. DocumentDB sin servidor puede agregar media DCU cuando solo se necesite un poco más de capacidad. Puede añadir 0,5, 1, 1,5, 2 o la mitad adicional en DCUs función de la capacidad adicional necesaria para gestionar un aumento de la carga de trabajo. Además, puede eliminar 0,5, 1, 1,5, 2 unidades o la mitad adicional DCUs cuando la carga de trabajo disminuye y esa capacidad ya no es necesaria.
+ **Aplicaciones de tenencias múltiples**: con DocumentDB sin servidor, no precisa administrar individualmente la capacidad de la base de datos para cada aplicación de la flota. DocumentDB sin servidor administra la capacidad de las bases de datos individuales por usted.
  + Puede crear un clúster para cada inquilino. De esta forma, puede utilizar características como la clonación y la restauración de instantáneas para mejorar la alta disponibilidad y la recuperación ante desastres según corresponda para cada inquilino.
  + Cada inquilino puede tener períodos específicos de actividad e inactividad según la hora del día, la época del año, los eventos promocionales, etc. Cada clúster puede tener un amplio rango de capacidad. De esta forma, los clústeres con poca actividad incurren en los cargos mínimos de instancias. Cualquier clúster puede escalarse de forma vertical rápidamente para gestionar períodos de actividad elevada.
+ **Aplicaciones nuevas**: si implementa una nueva aplicación y no está seguro del tamaño de instancia que necesita. Con DocumentDB sin servidor, puede configurar un clúster con una o varias instancias y hacer que la base de datos se escale automáticamente de acuerdo con los requisitos de capacidad de la aplicación.
+ **Aplicaciones de uso mixto**: supongamos que tiene una aplicación de procesamiento de transacciones en línea (OLTP), pero periódicamente experimenta picos en el tráfico de consultas. Si especifica niveles de promoción para las instancias de DocumentDB sin servidor en un clúster, puede configurar el clúster para que las instancias de lectura se puedan escalar independientemente de la instancia de escritura para gestionar la carga adicional. Cuando el pico de uso disminuye, las instancias de lectura se reducen verticalmente de nuevo para adaptarlas a la capacidad de la instancia de escritura.
+ **Planificación de capacidad**: supongamos que normalmente ajusta la capacidad de la base de datos o verifica la capacidad de la base de datos óptima para la carga de trabajo modificando las clases de instancias de todas las instancias de un clúster. Con DocumentDB sin servidor, puede evitar esta sobrecarga administrativa. Para determinar la capacidad mínima y máxima apropiadas, puede ejecutar la carga de trabajo y comprobar cuánto se escalan realmente las instancias.
  + Puede modificar las instancias existentes de aprovisionadas a DocumentDB sin servidor o de DocumentDB sin servidor a aprovisionadas. En estos casos, no es necesario crear un clúster nuevo ni una instancia nueva.
+ **Desarrollo y pruebas**: además de ejecutar las aplicaciones más exigentes, también puede utilizar DocumentDB sin servidor en entornos de desarrollo y pruebas. Con DocumentDB sin servidor, puede crear instancias con una capacidad mínima en lugar de utilizar clases de instancias ampliables db.t\$1. Puede establecer la capacidad máxima lo suficientemente alta como para que esas instancias puedan seguir ejecutando cargas de trabajo sustanciales sin quedarse sin memoria. Cuando la base de datos no está en uso, todas las instancias se reducen verticalmente para evitar cargos innecesarios.

### Uso de Amazon DocumentDB sin servidor para las cargas de trabajo aprovisionadas existentes
<a name="docdb-serverles-provisioned-workloads"></a>

Supongamos que ya tiene una aplicación de DocumentDB en ejecución en un clúster aprovisionado. Para comprobar cómo funcionaría la aplicación con DocumentDB sin servidor, añada una o varias instancias de DocumentDB sin servidor al clúster existente como instancias de lectura. Puede comprobar con qué frecuencia se escalan y reducen verticalmente las instancias de lectura. Puede utilizar el mecanismo de conmutación por error de DocumentDB para convertir una instancia sin servidor de DocumentDB en la redacción y comprobar cómo gestiona la carga de trabajo. read/write De esta forma, puede realizar el cambio con un tiempo de inactividad mínimo y sin cambiar el punto de conexión que utilizan las aplicaciones cliente. Para obtener más información sobre el procedimiento para convertir los clústeres existentes a DocumentDB sin servidor, consulte [Migración a Amazon DocumentDB sin servidor](docdb-serverless-migrating.md).

## Ventajas de Amazon DocumentDB sin servidor
<a name="docdb-serverless-advantages"></a>

DocumentDB sin servidor está destinado a cargas de trabajo variables o «con picos». Con cargas de trabajo tan impredecibles, podría tener dificultades para planificar cuándo cambiar la capacidad de la base de datos. También podría tener problemas para realizar cambios de capacidad con la suficiente rapidez mediante los mecanismos conocidos, como añadir instancias o cambiar clases de instancias. DocumentDB sin servidor ofrece las siguientes ventajas para facilitar estos casos de uso:
+ **Administración de la capacidad más sencilla que con la aprovisionada**: DocumentDB sin servidor reduce el esfuerzo de planificar los tamaños de las instancias y cambiar el tamaño de las instancias a medida que cambia la carga de trabajo. También reduce el esfuerzo para mantener una capacidad uniforme para todas las instancias en un clúster.
+ **Escalado más rápido y sencillo durante períodos de alta actividad**: DocumentDB sin servidor escala la capacidad de memoria y de computación en función de las necesidades, sin interrumpir las transacciones del cliente ni de la carga de trabajo general. La capacidad de utilizar instancias de lectura con DocumentDB sin servidor le permite aprovechar el escalado horizontal además del escalado vertical. La capacidad de usar clústeres globales de DocumentDB significa que puede distribuir su carga de trabajo de lectura sin servidor de DocumentDB entre varios. Regiones de AWS Esta capacidad es más práctica que los mecanismos de escalado de los clústeres aprovisionados.
+ **Rentable durante los períodos de baja actividad**: DocumentDB sin servidor ayuda a evitar el sobreaprovisionamiento de las instancias. DocumentDB sin servidor agrega recursos en incrementos granulares cuando las instancias se escalan verticalmente. Solo pagará por los recursos de la base de datos que consuma. El uso de recursos de DocumentDB sin servidor se mide por segundos. De esta forma, cuando una instancia se reduce verticalmente, la reducción del uso de recursos se registra de inmediato.
+ **Paridad de características con elementos aprovisionados**: puede utilizar todas las funciones de DocumentDB con DocumentDB sin servidor. Por ejemplo, con DocumentDB serverless puede usar instancias de lectura, autenticación de bases de datos AWS Identity and Access Management (IAM) y Performance Insights.

  En particular, con DocumentDB sin servidor puede aprovechar las siguientes características de los clústeres aprovisionados:
  + **Instancias de lectura**: DocumentDB sin servidor puede aprovechar las instancias de lectura para escalar horizontalmente. Cuando un clúster contiene una o más instancias de lectura, el clúster puede conmutar por error inmediatamente en caso de que haya problemas con la instancia de escritura.
  + **Clústeres Multi-AZ**: puede distribuir las instancias sin servidor de DocumentDB de un clúster en varias zonas de disponibilidad (). AZs La configuración de un clúster Multi-AZ ayuda a garantizar la continuidad del negocio incluso en los raros casos en los que hay problemas que afectan a una AZ completa.
  + **Clústeres globales**: puede usar DocumentDB sin servidor en combinación con los clústeres globales de DocumentDB para crear copias adicionales de solo lectura de su clúster en otras con fines de recuperación ante desastres. Regiones de AWS 

# Cómo funciona Amazon DocumentDB sin servidor
<a name="docdb-serverless-how-it-works"></a>

**Topics**
+ [Descripción general de](#docdb-serverlerss-overviewn)
+ [Configuraciones para clústeres de Amazon DocumentDB](#docdb-serverlerss-configuration)
+ [Capacidad de escalado de Amazon DocumentDB sin servidor](#docdb-serverless-scaling-capacity)
+ [Escalado de Amazon DocumentDB sin servidor](#docdb-serverless-scaling)
+ [Estado inactivo (0,5) DCUs](#docdb-serverlerss-idle-state)

## Descripción general de
<a name="docdb-serverlerss-overviewn"></a>

Amazon DocumentDB sin servidor es adecuado para la mayoría de las cargas de trabajo más exigentes y muy variables. Por ejemplo, el uso de la base de datos puede ser intensivo durante un corto periodo de tiempo, seguido de largos periodos de poca actividad o de ninguna actividad en absoluto. Ejemplos de ello son sitios web de venta minorista, juegos o deportes con eventos promocionales periódicos y bases de datos que generan informes cuando se necesitan. Otros son entornos de desarrollo y pruebas y nuevas aplicaciones en las que el uso podría aumentar rápidamente. Para casos como estos y muchos otros, la configuración correcta de la capacidad por anticipado no siempre es posible con el modelo aprovisionado. También puede resultar en costos más elevados si se aprovisiona en exceso y tiene capacidad que no utiliza.

En cambio, los clústeres aprovisionados de DocumentDB son adecuados para cargas de trabajo estables. Con los clústeres aprovisionados, puede elegir una clase de instancia que tenga una cantidad predefinida de memoria, potencia de CPU, I/O ancho de banda, etc. Si la carga de trabajo cambia, modificará manualmente la clase de instancia del escritor y los lectores. El modelo aprovisionado funciona bien cuando se puede ajustar con anticipación la capacidad de los patrones de consumo esperados y se aceptan interrupciones breves mientras cambia la clase de instancia del escritor y los lectores del clúster.

DocumentDB sin servidor está diseñado desde cero para admitir clústeres sin servidor que son escalables instantáneamente. DocumentDB sin servidor está diseñado para proporcionar el mismo grado de seguridad y aislamiento que los lectores y escritores aprovisionados. Estos aspectos son cruciales en entornos de nube sin servidor multitenant. El mecanismo de escalado dinámico tiene muy poca sobrecarga para que pueda responder rápidamente a los cambios en la carga de trabajo de la base de datos. También es lo suficientemente potente como para satisfacer los incrementos drásticos en la demanda de procesamiento.

Con DocumentDB sin servidor, podrá crear un clúster de DocumentDB sin quedar sujeto a una capacidad de base de datos específica para cada escritor y lector. El usuario especifica el rango mínimo y máximo de capacidad. DocumentDB escala cada escritor o lector de DocumentDB sin servidor en el clúster dentro de ese rango de capacidad. Usar un clúster Multi-AZ en el que cada escritor o lector puede escalar dinámicamente permite aprovechar el escalado dinámico y de una alta disponibilidad.

DocumentDB sin servidor escala los recursos de base de datos de forma automática en función de las especificaciones de capacidad mínima y máxima. El escalado es rápido, ya que la mayoría de las operaciones de eventos de escalado mantienen al escritor o al lector en el mismo host. En los raros casos en que un escritor o lector de DocumentDB sin servidor se mueve de un host a otro, DocumentDB sin servidor administra las conexiones automáticamente. No es necesario cambiar el código de la aplicación cliente de base de datos o las cadenas de conexión de base de datos.

Con DocumentDB sin servidor, al igual que ocurre con los clústeres aprovisionados, la capacidad de almacenamiento y la capacidad informática son independientes. Cuando hablamos de capacidad y escalado de DocumentDB sin servidor, nos referimos siempre a la capacidad informática que aumenta o disminuye. Por lo tanto, el clúster puede contener muchos terabytes de datos incluso cuando la capacidad de la CPU y la memoria se reducen verticalmente a niveles bajos.

En lugar de aprovisionar y administrar los servidores de bases de datos, hay que especificar la capacidad de la base de datos. La capacidad real de cada instancia de escritura o lectura de DocumentDB sin servidor varía con el tiempo, según la carga de trabajo. Para obtener más información sobre este mecanismo, consulte [Escalado de Amazon DocumentDB sin servidor](#docdb-serverless-scaling).

## Configuraciones para clústeres de Amazon DocumentDB
<a name="docdb-serverlerss-configuration"></a>

Para cada uno de sus clústeres de Amazon DocumentDB, puede elegir cualquier combinación de capacidad de DocumentDB sin servidor, capacidad aprovisionada o ambas.

Puede configurar un clúster que contenga tanto capacidad aprovisionada como capacidad de DocumentDB sin servidor. A esto se lo conoce como clúster de configuración mixta. Por ejemplo, supongamos que necesita más read/write capacidad de la disponible para un escritor sin servidor de DocumentDB. En este caso, puede configurar el clúster con un escritor aprovisionado muy grande. Entonces, aún puede usar DocumentDB sin servidor para los lectores. O, supongamos que la carga de trabajo de escritura del clúster varía pero la carga de trabajo de lectura es estable. En este caso, puede configurar el clúster con un escritor de DocumentDB sin servidor y uno o más lectores aprovisionados.

También puede configurar un clúster en el que DocumentDB sin servidor administre toda la capacidad. Para ello, puede crear un nuevo clúster y utilizar DocumentDB sin servidor desde el principio. O bien, puede reemplazar toda la capacidad aprovisionada de un clúster existente con DocumentDB sin servidor. Para conocer los procedimientos para crear un nuevo clúster con DocumentDB sin servidor o para cambiar un clúster existente a DocumentDB sin servidor, consulte [Creación de un clúster que utilice Amazon DocumentDB sin servidor](docdb-serverless-create-cluster.md) y [Migración a Amazon DocumentDB sin servidor](docdb-serverless-migrating.md).

Si no utiliza DocumentDB sin servidor en absoluto en un clúster, todos los escritores y lectores del clúster serán aprovisionados. Este es el tipo de clúster más común con el que la mayoría de los usuarios están familiarizados. La capacidad aprovisionada es constante. Los cargos son relativamente fáciles de pronosticar. No obstante, debe predecir de antemano cuánta capacidad necesita. En algunos casos, las predicciones pueden ser inexactas o las necesidades de capacidad pueden cambiar. En estos casos, el clúster puede estar infraprovisionado (más lento de lo que se desea) o sobreaprovisionado (más caro de lo que se desea).

## Capacidad de escalado de Amazon DocumentDB sin servidor
<a name="docdb-serverless-scaling-capacity"></a>

La unidad de medida de Amazon DocumentDB sin servidor es la unidad de capacidad de DocumentDB (DCU). La capacidad de escalado de DocumentDB sin servidor no está vinculada a las clases de instancias que utiliza para los clústeres aprovisionados.

Cada DCU es una combinación de aproximadamente 2 gigabytes (GiB) de memoria, la CPU correspondiente y las redes. El rango de capacidad de la base de datos se especifica mediante esta unidad de medida. Las métricas `ServerlessDatabaseCapacity` y `DCUUtilization` CloudWatch le ayudan a determinar cuánta capacidad está utilizando realmente su base de datos y dónde se encuentra dentro del rango especificado.

Cada escritor o lector de DocumentDB sin servidor tiene una capacidad en un momento dado. La capacidad es un número de punto flotante que representa. DCUs La capacidad aumenta o disminuye cada vez que el escritor o el lector se escalan. Este valor se mide cada segundo. Para cada clúster en el que se pretende utilizar DocumentDB sin servidor, se define un rango de capacidad: los valores de capacidad mínima y máxima entre los que puede escalar cada escritor o lector de DocumentDB sin servidor. El rango de capacidad es el mismo para cada escritor o lector de DocumentDB sin servidor en un clúster. Cada escritor o lector de DocumentDB sin servidor tiene su propia capacidad, la cual corresponderá a algún punto en ese rango.

DocumentDB serverless solo se admite en DocumentDB 5.0.0 (no se admite en 8.0) con un rango de capacidad de 0,5 a 256. DCUs

La capacidad sin servidor de DocumentDB más pequeña que puede definir es 0,5. DCUs Puede especificar un número mayor si es menor o igual que el valor de capacidad máxima admitida. Si se establece la capacidad mínima en un número pequeño, los clústeres cargados ligeramente consumen recursos informáticos mínimos. Al mismo tiempo, permanecen listos para aceptar conexiones de inmediato y escalar verticalmente cuando están ocupados.

Recomendamos establecer el mínimo en un valor que permita a cada instancia de escritura o lectura mantener el conjunto de trabajo de la aplicación en el grupo del búfer. De esta forma, el contenido del grupo del búfer no se desecha durante los períodos de inactividad. Para saber todo lo que debe tener en cuenta a la hora de elegir el rango de capacidad de escalado, consulte [Selección del rango de capacidad de escalado para un clúster de DocumentDB sin servidor](docdb-serverless-scaling-config.md#docdb-serverless-scaling-capacity-choosing).

En función de cómo configure los lectores en una implementación multi-AZ, sus capacidades se pueden vincular a la capacidad del escritor o de forma independiente. Para obtener información detallada sobre cómo hacerlo, consulte [Visualización y modificación del nivel de promoción de los lectores sin servidor](docdb-serverless-managing.md#docdb-serverless-promo-tier).

Supervisar DocumentDB sin servidor implica medir los valores de capacidad del escritor y los lectores del clúster a lo largo del tiempo. Si la base de datos no se reduce verticalmente a la capacidad mínima, puede realizar acciones como ajustar el mínimo y optimizar la aplicación de base de datos. Si la base de datos alcanza su capacidad máxima de forma coherente, puede realizar acciones como aumentar el máximo. También puede optimizar la aplicación de base de datos y distribuir la carga de consultas entre más lectores.

Los cargos correspondientes a la capacidad de DocumentDB sin servidor se miden en términos de horas de DCU. Para obtener información sobre cómo se calculan los cargos de DocumentDB sin servidor, consulte los [Precios de Amazon DocumentDB](https://aws.amazon.com//documentdb/pricing). Supongamos que el número total de escritores y lectores del clúster es n. En ese caso, el clúster consume aproximadamente n x como mínimo DCUs cuando no se ejecuta ninguna operación de base de datos. Amazon DocumentDB podría ejecutar operaciones de supervisión o mantenimiento que provocan una pequeña cantidad de carga. Ese clúster no consume más de n x como máximo DCUs cuando la base de datos se ejecuta a plena capacidad.

Para obtener más información sobre cómo elegir los valores de DCU mínimos y máximos adecuados, consulte [Selección del rango de capacidad de escalado para un clúster de DocumentDB sin servidor](docdb-serverless-scaling-config.md#docdb-serverless-scaling-capacity-choosing). Los valores mínimo y máximo de DCU que especifica también afectan a algunos límites de instancias de Amazon DocumentDB. Para obtener información detallada sobre la interacción entre el rango de capacidad y los límites de la instancia, consulte [Límites de instancias de Amazon DocumentDB sin servidor](docdb-serverless-instance-limits.md).

## Escalado de Amazon DocumentDB sin servidor
<a name="docdb-serverless-scaling"></a>

Para cada escritor o lector de DocumentDB sin servidor, Amazon DocumentDB realiza un seguimiento continuo del uso de recursos como la CPU, la memoria y la red. Estas mediciones se denominan colectivamente carga. La carga incluye las operaciones de base de datos realizadas por la aplicación. También incluye procesamiento en segundo plano para el servidor de base de datos y tareas administrativas de Amazon DocumentDB. Cuando la capacidad se ve limitada por alguno de estos factores, DocumentDB sin servidor se escala verticalmente. DocumentDB sin servidor también se escala verticalmente cuando detecta problemas de rendimiento que se pueden resolver de esta manera. Puede supervisar la utilización de los recursos y cómo afecta el escalado en DocumentDB sin servidor mediante los procedimientos en [Supervisión de Amazon DocumentDB sin servidor](docdb-serverless-monitoring.md).

La carga puede variar según el escritor o los lectores del clúster. El escritor controla las operaciones de escritura y realiza todas las modificaciones de los datos en el volumen del clúster. Los lectores pueden procesar solicitudes de solo lectura.

El escalado es la operación que aumenta o disminuye la capacidad de DocumentDB sin servidor para la base de datos. Con DocumentDB serverless, cada escritor y lector tiene su propio valor de capacidad actual, medido en. DCUs DocumentDB sin servidor escala un escritor o lector hasta una capacidad superior cuando su capacidad actual es demasiado baja para gestionar la carga. Escala el escritor o el lector a una capacidad inferior cuando su capacidad en uso es superior a la necesaria.

DocumentDB sin servidor puede aumentar la capacidad de forma incremental. Cuando la demanda de carga de trabajo comienza a alcanzar la capacidad de base de datos actual de un escritor o lector, DocumentDB serverless aumenta la cantidad de DCUs ese escritor o lector. DocumentDB sin servidor escala la capacidad en función de los incrementos necesarios para proporcionar el mejor rendimiento de los recursos consumidos. El escalado se produce en incrementos tan pequeños como 0,5. DCUs Cuanto mayor sea la capacidad en uso, mayor será el incremento de escalado y, por lo tanto, más rápido puede producirse el escalado.

Ya que el escalado en DocumentDB sin servidor es tan frecuente, granular y no disruptivo, no genera eventos discretos en la Consola de administración de AWS. En su lugar, puedes medir las CloudWatch métricas de Amazon, como `serverlessDatabaseCapacity` y`DCUUtilization`, y realizar un seguimiento de sus valores mínimo, máximo y promedio a lo largo del tiempo. Para obtener más información sobre la supervisión de DocumentDB sin servidor, consulte [Supervisión de Amazon DocumentDB sin servidor](docdb-serverless-monitoring.md).

El escalado vertical o la reducción vertical pueden deberse a lo siguiente:
+ Utilización de memoria
+ Utilización de la CPU
+ Utilización de la red
+ Uso del almacenamiento

Puede supervisar estas causas del escalado up/down en las instancias sin servidor de DocumentDB. Para obtener más información, consulte [Supervisión de Amazon DocumentDB sin servidor](docdb-serverless-monitoring.md).

Puede elegir escalar el lector al mismo tiempo que el escritor asociado o independientemente del escritor. Para ello, especifique el nivel de promoción de ese lector.
+ Los lectores de DocumentDB sin servidor, en niveles de promoción 0 y 1, se escalan al mismo tiempo que el escritor. Este comportamiento de escalado hace que los lectores de los niveles prioritarios 0 y 1 sean ideales para disponibilidad. Esto se debe a que siempre tienen el tamaño adecuado para asumir la carga de trabajo de escritura en caso de conmutación por error.
+ Los lectores de los niveles de promoción 2 a 15 escalan independientemente del escritor. Cada lector se mantiene dentro de los valores de DCU mínimo y máximo especificados para el clúster. Cuando un lector escala independientemente de la base de datos de escritura asociada, puede pasar a quedar inactiva y reducirse verticalmente mientras el escritor continúa procesando un gran volumen de transacciones. Sigue disponible como objetivo de conmutación por error si no hay otros lectores disponibles en niveles de promoción más bajos. No obstante, si se promueve para ser el escritor, es posible que tenga que escalar verticalmente para manejar toda la carga de trabajo del escritor.

Para obtener más información sobre cómo ver y cambiar los niveles de promoción de las instancias sin servidor, consulte [Visualización y modificación del nivel de promoción de los lectores sin servidor](docdb-serverless-managing.md#docdb-serverless-promo-tier).

El escalado de DocumentDB sin servidor puede ocurrir mientras las conexiones de la base de datos están abiertas, mientras las transacciones están en proceso, etc. DocumentDB sin servidor no espera a que llegue un punto de inactividad para empezar el escalado. El escalado no interrumpe ninguna operación de base de datos en curso.

Si la carga de trabajo requiere más capacidad de lectura de la disponible con un solo escritor y un solo lector, puede agregar lectores múltiples de DocumentDB sin servidor al clúster. Cada lector de DocumentDB sin servidor puede escalar dentro de los valores de capacidad mínimo y máximo especificados para su clúster. Puede utilizar el punto de conexión del lector del clúster para dirigir las sesiones de solo lectura a los lectores y reducir la carga en el escritor.

Que DocumentDB sin servidor realice un escalado y la rapidez con la que se producirá el escalado una vez que se inicie también dependerán de la configuración de DCU mínima y máxima para el clúster. Además, depende de si un lector está configurado para escalar junto con el escritor o independientemente de él. Para obtener información detallada sobre la configuración del escalado, consulte [Configuración de escalado de Amazon DocumentDB sin servidor](docdb-serverless-scaling-config.md).

## Estado inactivo (0,5) DCUs
<a name="docdb-serverlerss-idle-state"></a>

Cuando los lectores o lectores sin servidor de Amazon DocumentDB están inactivos, las instancias sin servidor de DocumentDB admiten la reducción a un estado inactivo de 0,5 DCUs si el clúster está MinCapacity configurado en 0,5.

En estado inactivo, las instancias de DocumentDB sin servidor no tienen suficiente capacidad de procesamiento de CPU para admitir la mayoría de las cargas de trabajo de producción, pero están listas para escalarse verticalmente con rapidez para admitir una nueva carga de trabajo. En un estado no inactivo, las instancias sin servidor de DocumentDB suelen requerir al menos entre 1,0 y 2,5. DCUs Por lo tanto, cuando las instancias sin servidor de DocumentDB escalen de un estado inactivo a un estado no inactivo, se escalarán directamente de 1,0 a 2,5 DCUs (o el valor de MaxCapacity si es inferior).

Para permitir la reducción a 0,5 DCUs cuando están inactivas, los límites de instancias se limitan si se configura para que sea inferior o igual a 1,0. MinCapacity DCUs Para obtener más información sobre cómo afecta la MinCapacity configuración a los límites, consulte[Límites de instancias de Amazon DocumentDB sin servidor](docdb-serverless-instance-limits.md).

# Requisitos y limitaciones de DocumentDB sin servidor
<a name="docdb-serverless-limitations"></a>

## Requisitos de características
<a name="w2aac41c15b3"></a>

### Disponibilidad por región
<a name="w2aac41c15b3b3"></a>

El tipo de instancia de Amazon DocumentDB sin servidor está disponible en las siguientes regiones:

El siguiente AWS CLI comando se puede usar para verificar las opciones exactas de instancia sin servidor de DocumentDB que se ofrecen en una región determinada:

```
aws docdb describe-orderable-db-instance-options \
        --region my_region \
        --db-instance-class db.serverless \
        --engine docdb
```

### Disponibilidad de la versión del motor
<a name="w2aac41c15b3b5"></a>

DocumentDB serverless solo es compatible con la versión 5.0.0 del motor Amazon DocumentDB. No está disponible en las versiones de motor 3.6, 4.0 u 8.0.

**nota**  
DocumentDB sin servidor es compatible solamente con las versiones de parche 5.0.0 más recientes. Asegúrese de que su clúster esté actualizado a una versión reciente del parche del motor. Para obtener más información sobre el mantenimiento de los clústeres de Amazon DocumentDB, consulte [Mantenimiento de Amazon DocumentDB](db-instance-maintain.md).

### Configuración del clúster
<a name="w2aac41c15b3b7"></a>

Antes de añadir cualquier instancia de Amazon DocumentDB sin servidor a un clúster de Amazon DocumentDB, el clúster también debe tener el conjunto de parámetros `ServerlessV2ScalingConfiguration`. Esto define el rango de capacidad de las instancias de DocumentDB sin servidor en el clúster. Para obtener más información sobre la configuración de escalado, consulte [Configuración de escalado de Amazon DocumentDB sin servidor](docdb-serverless-scaling-config.md).

### Configuración del rango mínimo de capacidad de escalado para determinadas características de Amazon DocumentDB
<a name="w2aac41c15b3b9"></a>

Algunas características de Amazon DocumentDB funcionan con DocumentDB sin servidor, pero esto podría causar problemas si el rango de capacidad es inferior al necesario para los requisitos de memoria de esas características con su carga de trabajo específica. En ese caso, es posible que la base de datos no funcione tan bien como de costumbre o que presente out-of-memory errores.

Las siguientes funciones requieren una configuración de un `MinCapacity` and/or `MaxCapacity` valor superior para un funcionamiento óptimo:
+ Información de rendimiento
+ Clústeres globales (solo se aplica a los principales Región de AWS)
+ Creación de instancias sin servidor en un clúster con un gran volumen de datos

  Esto incluye la creación de instancias sin servidor como parte de la restauración de un clúster.

Para obtener recomendaciones sobre cómo configurar el rango de capacidad adecuado (si está utilizando esta característica), consulte [Selección del rango de capacidad de escalado para un clúster de DocumentDB sin servidor](docdb-serverless-scaling-config.md#docdb-serverless-scaling-capacity-choosing). Para obtener información sobre la solución de problemas si la base de datos encuentra out-of-memory errores debido a un rango de capacidad mal configurado, consulte[Evitar errores out-of-memory](docdb-serverless-scaling-config.md#docdb-serverless-scaling-mem-errors).

# Creación de un clúster que utilice Amazon DocumentDB sin servidor
<a name="docdb-serverless-create-cluster"></a>



## Creación de un clúster de Amazon DocumentDB sin servidor
<a name="w2aac41c17b5"></a>

Con Amazon DocumentDB sin servidor, los clústeres son intercambiables por clústeres aprovisionados. Puede tener clústeres donde algunas instancias utilicen la tecnología sin servidor y algunas instancias estén aprovisionadas.

Compruebe que la región y la versión del motor que desee sean compatibles con DocumentDB sin servidor. Consulte [Requisitos y limitaciones de DocumentDB sin servidor](docdb-serverless-limitations.md).

Para crear un clúster de Amazon DocumentDB en el que pueda añadir instancias sin servidor, siga el mismo procedimiento que en [Creación de un clúster de Amazon DocumentDB](db-cluster-create.md). La única diferencia es que también debe proporcionarse el argumento `ServerlessV2ScalingConfiguration`.

El argumento `ServerlessV2ScalingConfiguration` especifica el rango de capacidad de escalado de las instancias de DocumentDB sin servidor. Se compone de los valores mínimos y máximos de la unidad de capacidad de DocumentDB (DCU) que se aplican a todas las instancias de DocumentDB sin servidor en el clúster:
+ El valor de `MinCapacity` especifica la capacidad de escalado mínima.
+ El valor de `MaxCapacity` especifica la capacidad de escalado máxima.

Para obtener más información sobre el escalado, consulte [Configuración de escalado de Amazon DocumentDB sin servidor](docdb-serverless-scaling-config.md).

------
#### [ Using the Consola de administración de AWS ]

El siguiente ejemplo Consola de administración de AWS de configuración muestra cómo crear un clúster sin servidor de DocumentDB.

1. Inicie sesión en la [Consola de administración de AWS](https://console.aws.amazon.com/docdb/home?region=us-east-1) de Amazon DocumentDB y ábrala.

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.
**sugerencia**  
Si no ve el panel de navegación del lado izquierdo de la pantalla, seleccione el icono de menú (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/docdb-menu-icon.png)) en la esquina superior izquierda de la página.

   Aparece la tabla **Clústeres**.

1. Seleccione **Crear**.

   Aparece la página **Crear clúster de Amazon DocumentDB**.

1. En la página Crear clúster de Amazon DocumentDB, en la sección **Tipo de clúster**, elija **Clúster basado en instancias** (esta es la opción predeterminada).

1. En la sección **Configuración de clúster**:

   1. En el campo **Identificador del clúster**, ingrese un nombre único, como **myserverlesscluster**. Tenga en cuenta que la consola cambiará todos los nombres de los clústeres a minúsculas independientemente de cómo se ingresen.

   1. En **Versión del motor**, elija **5.0.0** (es la opción predeterminada).

1. En la sección **Configuración del almacenamiento en clúster**, elija **Amazon DocumentDB estándar** (es la opción predeterminada).
**nota**  
La otra opción de esta categoría es **Amazon DocumentDB optimizado para E/S**. Para obtener más información sobre las opciones, consulte [Configuraciones de almacenamiento en clústeres de Amazon DocumentDB](db-cluster-storage-configs.md).

1. Sección de **Configuración de instancias**:

   1. En **Clase de instancia de base de datos**, elija **Sin servidor**.

   1. En **Número de instancias de réplica normales**, elija **3** (es la opción predeterminada).

   1. **En la sección **Rango de capacidad**, deje los valores predeterminados para **Mínimo DCUs y Máximo**. DCUs** Para obtener información sobre la configuración de estos parámetros, consulte [Límites de instancias de Amazon DocumentDB sin servidor](docdb-serverless-instance-limits.md).  
![\[Formulario de configuración de un clúster de base de datos sin servidor con campos como la clase de instancia, las instancias de réplica y el rango de capacidad.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/instance-config-serverless.png)

1. En la sección **Conectividad**, deje la configuración predeterminada de **No conectarse a un recurso de computación de EC2**.

1. En la sección **Autenticación**, ingrese un nombre de usuario para el usuario principal y, a continuación, elija **Autoadministrado**. Ingrese una contraseña y, a continuación, confírmela.

   Si, en su lugar, eligió **Administrado en AWS Secrets Manager**, consulte [Administración de contraseñas con Amazon DocumentDB y AWS Secrets Manager](docdb-secrets-manager.md) para obtener más información.

1. Deje todas las demás opciones en sus valores predeterminados y seleccione **Crear clúster**.

------
#### [ Using the AWS CLI ]

En el siguiente ejemplo, sustituya cada uno *user input placeholder* por su propia información o parámetros de configuración.

Para crear un clúster compatible con las instancias sin servidor de DocumentDB mediante el AWS CLI, consulte. [Creación de un clúster mediante AWS CLI](db-cluster-create.md#db-cluster-create-cli)

Incluya los siguientes parámetros adicionales en su comando `create-db-cluster`:

```
--serverless-v2-scaling-configuration 
     MinCapacity=minimum_capacity,MaxCapacity=maximum_capacity
```

Ejemplo:

```
aws docdb create-db-cluster \
      --db-cluster-identifier sample-cluster \
      --engine docdb \
      --engine-version 5.0.0 \
      --serverless-v2-scaling-configuration MinCapacity=0.5,MaxCapacity=16 \
      --master-username user-name \
      --master-user-password password
```

------

## Añadido de una instancia de Amazon DocumentDB sin servidor
<a name="docdb-serverless-adding-instance"></a>

Para añadir una instancia de DocumentDB sin servidor, siga el mismo procedimiento indicado en [Agregación de una instancia de Amazon DocumentDB a un clúster](db-instance-add.md) y asegúrese de especificar db.serverless como clase de instancia.

### Añadido de una instancia sin servidor mediante la Consola de administración de AWS
<a name="w2aac41c17b7b5"></a>

Para añadir instancias de DocumentDB sin servidor mediante la consola, consulte [Agregación de una instancia de Amazon DocumentDB a un clúster](db-instance-add.md) y seleccione la pestaña **Uso de la Consola de administración de AWS**.

### Agregar una instancia sin servidor mediante AWS CLI
<a name="w2aac41c17b7b7"></a>

Para añadir instancias sin servidor de DocumentDB mediante la AWS CLI, consulte [Agregación de una instancia de Amazon DocumentDB a un clúster](db-instance-add.md) y seleccione la pestaña **Uso** de. AWS CLI

Use el siguiente argumento de la CLI para la clase de instancia:

```
--db-instance-class db.serverless
```

Ejemplo:

```
aws docdb create-db-instance \
      --db-cluster-identifier sample-cluster \
      --db-instance-identifier sample-instance \
      --db-instance-class db.serverless \
      --engine docdb
```

# Migración a Amazon DocumentDB sin servidor
<a name="docdb-serverless-migrating"></a>

**Topics**
+ [Migración de los clústeres de DocumentDB existentes a sistemas sin servidor](#w2aac41c19b5)
+ [Migración de MongoDB a DocumentDB sin servidor](#w2aac41c19b7)

## Migración de los clústeres de DocumentDB existentes a sistemas sin servidor
<a name="w2aac41c19b5"></a>

### Actualización de la versión del motor de un clúster
<a name="w2aac41c19b5b3"></a>

Si el clúster aprovisionado ejecuta una versión de motor inferior que no admite DocumentDB sin servidor, primero debe actualizar el clúster a una versión de motor compatible. Para obtener más información, consulte [Actualización local de la versión principal Amazon DocumentDB](docdb-mvu.md).

### Migración de un clúster aprovisionado a DocumentDB sin servidor
<a name="docdb-serverless-migrate-cluster"></a>

Para cambiar un clúster aprovisionado para que utilice DocumentDB sin servidor, siga estos pasos:

1. Compruebe si es preciso actualizar la versión del motor del clúster aprovisionado para usarla con DocumentDB sin servidor. Consulte [Requisitos y limitaciones de DocumentDB sin servidor](docdb-serverless-limitations.md).
**nota**  
Si el clúster aprovisionado ejecuta una versión de motor que no está disponible para DocumentDB sin servidor, actualice la versión del motor del clúster: Consulte [Actualización local de la versión principal Amazon DocumentDB](docdb-mvu.md).

1. Defina la configuración de escalado del clúster. Para obtener más información sobre cómo elegir la configuración de escalado, consulte [Selección del rango de capacidad de escalado para un clúster de DocumentDB sin servidor](docdb-serverless-scaling-config.md#docdb-serverless-scaling-capacity-choosing). Para modificar la configuración de escalado de un clúster, consulte [Visualización y modificación de la configuración del rango de capacidad de escalado de un clúster](docdb-serverless-managing.md#docdb-serverless-range-config).

1. Configure cualquier otra propiedad del clúster para tener en cuenta los requisitos y las limitaciones de DocumentDB sin servidor de [Requisitos y limitaciones de DocumentDB sin servidor](docdb-serverless-limitations.md).

1. Añada una o varias instancias de DocumentDB sin servidor al clúster. Siga el procedimiento indicado en [Añadido de una instancia de Amazon DocumentDB sin servidor](docdb-serverless-create-cluster.md#docdb-serverless-adding-instance).
**nota**  
En algunos casos, es posible que ya tenga una o más instancias de lectura aprovisionadas en el clúster. De ser así, puede optar por convertir uno de los lectores en una instancia de DocumentDB sin servidor en lugar de crear una nueva instancia. Para ello, siga el procedimiento en [Cambio de la clase de una instancia](db-instance-classes.md#db-instance-class-changing).

1. (Opcional) Realice una operación de conmutación por error para convertir una instancia de DocumentDB sin servidor en un clúster de escritura. Consulte [Conmutación por error a Amazon DocumentDB](failover.md).

1. (Opcional) Convierta las instancias de Amazon DocumentDB aprovisionadas en instancias de DocumentDB sin servidor (consulte [Cambio de la clase de una instancia](db-instance-classes.md#db-instance-class-changing)) o elimínelas del clúster (consulte [Eliminación de una instancia de Amazon DocumentDB](db-instance-delete.md)).

------
#### [ Using the Consola de administración de AWS ]

El siguiente ejemplo de Consola de administración de AWS configuración muestra el proceso de migración mediante un clúster aprovisionado de Amazon DocumentDB que ejecuta Amazon DocumentDB 5.0.0, que no requiere una actualización de la versión del motor para empezar a utilizar DocumentDB serverless. El clúster se denomina `sample` y comienza con tres instancias aprovisionadas llamadas `sample`, `sample2` y `sample3`. En este ejemplo, estas tres instancias se sustituirán por tres instancias sin servidor.

1. Inicie sesión en la [Consola de administración de AWS](https://console.aws.amazon.com/docdb/home?region=us-east-1) de Amazon DocumentDB y ábrala.

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.
**sugerencia**  
Si no ve el panel de navegación del lado izquierdo de la pantalla, seleccione el icono de menú (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/docdb-menu-icon.png)) en la esquina superior izquierda de la página.

   Aparece la tabla **Clústeres**.

1. En la tabla **Clústeres**, seleccione la casilla de verificación del clúster al que desea añadir una instancia sin servidor.

1. Elija **Actions (Acciones)** y después **Add instances (Añadir instancias)**.

1. En el cuadro de diálogo **Añadir instancias**, seleccione **Sin servidor** en la sección **Clase de instancias de base de datos** para cada nueva instancia sin servidor que desee crear.

1. En **Ajustes de capacidad sin servidor**, defina la configuración de escalado en función de la descripción de la capacidad del cuadro de diálogo.

1. (Opcional) Para añadir otra instancia, elija **Añadir instancia**. Siga añadiendo instancias hasta alcanzar el número deseado de instancias nuevas.

   En este ejemplo, se crean tres nuevas instancias sin servidor.

1. Seleccione **Crear**.

   La creación de una instancia puede tardar varios minutos. Puede usar la consola o la para ver el estado de la instancia AWS CLI . Para obtener más información, consulte [Supervisión del estado de un clúster de Amazon DocumentDB](https://docs.aws.amazon.com//documentdb/latest/developerguide/monitoring_docdb-cluster_status.html).

1. Volviendo a la tabla **Clústeres**, seleccione las casillas de verificación de las tres instancias aprovisionadas originales.

1. Elija **Acciones** y, a continuación, elija **Eliminar**.

Durante la eliminación, se realiza automáticamente una conmutación por error para convertir a una de las instancias restantes en la instancia de escritura. Transcurridos unos minutos, se completa el proceso de eliminación. El clúster existente ahora contiene tres instancias de DocumentDB sin servidor (tal y como se define en la columna **Tamaño**).

------
#### [ Using the AWS CLI ]

El siguiente ejemplo de AWS CLI configuración muestra el proceso de migración mediante un clúster aprovisionado de Amazon DocumentDB que ejecuta Amazon DocumentDB 5.0.0, que no requiere una actualización de la versión del motor para empezar a utilizar DocumentDB serverless. El clúster se denomina `sample` y comienza con tres instancias aprovisionadas llamadas `sample`, `sample2` y `sample3`. En este ejemplo, estas tres instancias se sustituirán por tres instancias sin servidor. El clúster comienza se llama `sample-cluster` y empieza con dos instancias aprovisionadas llamadas `sample-provisioned-instance-1` y `sample-provisioned-instance-2`, una instancia de escritura y una de lectura.

En el siguiente ejemplo, sustituya cada uno por su propia información o *user input placeholder* parámetros de configuración.

Utilice `aws docdb describe-db-clusters` para determinar el estado de un clúster. El siguiente código busca el estado del clúster `sample-cluster` y muestra los resultados en una tabla:

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].DBClusterMembers' \
    --output table
```

```
--------------------------------------------------------------------------------------------------------
|                                          DescribeDBClusters                                          |
+--------------------------------+---------------------------------+------------------+----------------+
|  DBClusterParameterGroupStatus |      DBInstanceIdentifier       | IsClusterWriter  | PromotionTier  |
+--------------------------------+---------------------------------+------------------+----------------+
|  in-sync                       |  sample-provisioned-instance-2  |  False           |  1             |
|  in-sync                       |  sample-provisioned-instance-1  |  True            |  1             |
+--------------------------------+---------------------------------+------------------+----------------+
```

Añada la configuración de escalado del clúster:

```
aws docdb modify-db-cluster \
    --db-cluster-identifier sample-cluster \
    --serverless-v2-scaling-configuration MinCapacity=0.5,MaxCapacity=16
```

Añada las instancias sin servidor. En este ejemplo, se añaden las nuevas instancias sin servidor denominadas `sample-serverless-instance-1` y `sample-serverless-instance-2`:

```
aws docdb create-db-instance \
    --db-cluster-identifier sample-cluster \
    --db-instance-identifier sample-serverless-instance-1 \
    --db-instance-class db.serverless \
    --engine docdb

aws docdb create-db-instance \
    --db-cluster-identifier sample-cluster \
    --db-instance-identifier sample-serverless-instance-2 \
    --db-instance-class db.serverless \
    --engine docdb
```

Introduzca lo siguiente para esperar a que las instancias sin servidor estén disponibles antes de continuar:

```
aws docdb wait db-instance-available \
    --db-instance-identifier sample-serverless-instance-1

aws docdb wait db-instance-available \
    --db-instance-identifier sample-serverless-instance-2
```

Realice una conmutación por error para que la nueva instancia de `sample-serverless-instance-1` sea el nuevo clúster de escritura:

```
aws docdb failover-db-cluster \
    --db-cluster-identifier sample-cluster \
    --target-db-instance-identifier sample-serverless-instance-1
```

La conmutación por error tarda unos segundos en completarse, tras lo cual sample-serverless-instance -1 pasa a ser el grabador del clúster. Verifíquelo con la siguiente entrada:

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].DBClusterMembers' \
    --output table
```

```
--------------------------------------------------------------------------------------------------------
|                                          DescribeDBClusters                                          |
+--------------------------------+---------------------------------+------------------+----------------+
|  DBClusterParameterGroupStatus |      DBInstanceIdentifier       | IsClusterWriter  | PromotionTier  |
+--------------------------------+---------------------------------+------------------+----------------+
|  in-sync                       |  sample-provisioned-instance-2  |  False           |  1             |
|  in-sync                       |  sample-provisioned-instance-1  |  False           |  1             |
|  in-sync                       |  sample-serverless-instance-2   |  False           |  1             |
|  in-sync                       |  sample-serverless-instance-1   |  True            |  1             |
+--------------------------------+---------------------------------+------------------+----------------+
```

Por último, elimine las instancias aprovisionadas originales:

```
aws docdb delete-db-instance \
    --db-instance-identifier sample-provisioned-instance-1

aws docdb delete-db-instance \
    --db-instance-identifier sample-provisioned-instance-2
```

------

## Migración de MongoDB a DocumentDB sin servidor
<a name="w2aac41c19b7"></a>

Puede migrar sus bases de datos de MongoDB a DocumentDB sin servidor, igual que con elementos de Amazon DocumentDB aprovisionados. Para obtener más información, consulte [Migración a Amazon DocumentDB](docdb-migration.md).

# Administración de Amazon DocumentDB sin servidor
<a name="docdb-serverless-managing"></a>

## Visualización y modificación de la configuración del rango de capacidad de escalado de un clúster
<a name="docdb-serverless-range-config"></a>

El argumento `ServerlessV2ScalingConfiguration` especifica el rango de capacidad de escalado de las instancias de DocumentDB sin servidor. Se compone de los valores mínimos y máximos de la unidad de capacidad de DocumentDB (DCU) que se aplican a todas las instancias de DocumentDB sin servidor en el clúster.
+ **`MinCapacity`**: la capacidad de escalado mínima de cualquier instancia de DocumentDB sin servidor del clúster.
+ **`MaxCapacity`**: la capacidad de escalado máxima de cualquier instancia de DocumentDB sin servidor del clúster.

**nota**  
Las siguientes modificaciones de la configuración de escalado requieren el reinicio de la instancia para reflejar los nuevos valores de `MinCapacity` y `MaxCapacity`:  
Cualquier cambio en el valor de `MaxCapacity`
Cambio en el valor de `MinCapacity` a 1.0 o inferior desde un valor superior
Cambio en el valor de `MinCapacity` a más de 1.0 desde un valor inferior

Para obtener más información sobre la configuración del escalado y sobre cómo seleccionar los límites de capacidad de escalado adecuados, consulte [Configuración de escalado de Amazon DocumentDB sin servidor](docdb-serverless-scaling-config.md).

------
#### [ Using the Consola de administración de AWS ]

El siguiente ejemplo Consola de administración de AWS de configuración muestra cómo ver y editar los ajustes de configuración de escalado de un clúster sin servidor de DocumentDB.

1. Inicie sesión en la [Consola de administración de AWS](https://console.aws.amazon.com/docdb/home?region=us-east-1) de Amazon DocumentDB y ábrala.

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.
**sugerencia**  
Si no ve el panel de navegación del lado izquierdo de la pantalla, seleccione el icono de menú (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/docdb-menu-icon.png)) en la esquina superior izquierda de la página.

   Aparece la tabla **Clústeres**.

1. En la tabla **Clústeres**, seleccione la casilla de verificación del clúster en el que desee modificar la capacidad de escalado.

1. Elija **Actions (Acciones)** y después **Modify (Modificar)**.

   Aparece el cuadro de diálogo **Modificar clúster**.

1. Localice la sección **Configuración de la capacidad sin servidor** y establezca la configuración de escalado (**Rango de capacidad**) en función de la descripción de la capacidad del cuadro de diálogo.

   Para obtener más información acerca de los rangos de capacidad y el escalado, consulte [Configuración de escalado de Amazon DocumentDB sin servidor](docdb-serverless-scaling-config.md).

1. Elija **Continuar**.

1. En **Programación de modificaciones**, elija **Aplicar inmediatamente**.

1. Elija **Modificar clúster**.

1. Una vez completada la modificación, se debe reiniciar cada instancia sin servidor. Para minimizar la falta de disponibilidad del escritor, realice la siguiente secuencia de operaciones:

   1. Reinicie cada instancia de lectura sin servidor.

      1. Seleccione la instancia de lectura, elija **Acciones** y, a continuación, **Reiniciar**.

      1. Espere a que el estado de la instancia vuelva a **Disponible**.

   1. Realice una conmutación por error en una instancia sin servidor reiniciada.

      1. Seleccione el clúster, elija **Acciones** y, a continuación, **Conmutación por error**.

      1. Espere a que se complete la operación de conmutación por error.

   1. Reinicie la instancia sin servidor restante.

      1. Seleccione la instancia restante, elija **Acciones** y, a continuación, **Reiniciar**.

      1. Espere a que el estado de la instancia vuelva a **Disponible**.

------
#### [ Using the AWS CLI ]

El siguiente ejemplo AWS CLI de configuración muestra la configuración de escalado actual.

En el siguiente ejemplo, sustituya cada uno *user input placeholder* por su propia información o parámetros de configuración.

La configuración de escalado actual del clúster se puede ver mediante el `describe-db-clusters` AWS CLI comando:

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[0].ServerlessV2ScalingConfiguration'
```

A continuación se muestra la salida de este comando:

```
{
    "MinCapacity": 0.5,
    "MaxCapacity": 16.0
}
```

La configuración de escalado del clúster se puede modificar mediante el comando `modify-db-cluster`:

```
aws docdb modify-db-cluster \
    --db-cluster-identifier sample-cluster \
    --serverless-v2-scaling-configuration MinCapacity=0.5,MaxCapacity=32
```

Una vez completada, se debe reiniciar cada instancia sin servidor. Para minimizar la falta de disponibilidad del escritor, se puede realizar la siguiente secuencia de operaciones:

```
aws docdb reboot-db-instance \
    --db-instance-identifier sample-serverless-instance-reader

aws docdb wait db-instance-available \
    --db-instance-identifier sample-serverless-instance-reader

aws docdb failover-db-cluster \
   --db-cluster-identifier sample-cluster \
   --target-db-instance-identifier sample-serverless-instance-reader

aws docdb reboot-db-instance \
    --db-instance-identifier sample-serverless-instance-writer

aws docdb wait db-instance-available \
    --db-instance-identifier sample-serverless-instance-writer

aws docdb failover-db-cluster \
   --db-cluster-identifier sample-cluster \
   --target-db-instance-identifier sample-serverless-instance-writer
```

------

## Visualización y modificación del nivel de promoción de los lectores sin servidor
<a name="docdb-serverless-promo-tier"></a>

En el caso de clústeres que incluyen múltiples instancias DocumentDB sin servidor o una combinación de instancias sin servidor y aprovisionadas, preste atención a la configuración del nivel de promoción para cada instancia sin servidor. Esta configuración controla más comportamiento para instancias sin servidor que para instancias aprovisionadas.

En el caso de las instancias aprovisionadas, la elección de nivel 0 a 15 determina únicamente el orden en que Amazon DocumentDB elige qué instancia de lectura debe promocionarse al escritor durante una operación de conmutación por error. Sin embargo, para las instancias sin servidor, el número de nivel también determina si la instancia se escala verticalmente para adaptarse a la capacidad de la instancia de escritura o si se escala independientemente en función de su propia carga de trabajo. Las instancias de lectura sin servidor de nivel 0 o 1 se mantienen con una capacidad mínima al menos igual a la de la instancia de escritura. De esta forma, quedan listas para tomar el relevo de la instancia de escritura en caso de conmutación por error. Si la instancia de escritura es una instancia aprovisionada, Amazon DocumentDB estima la capacidad equivalente de DocumentDB sin servidor. Utilice esa estimación como capacidad mínima para la instancia de lectura sin servidor.

Las instancias de lectura de DocumentDB sin servidor de los niveles 2 a 15 no tienen la misma restricción en cuanto a capacidad mínima. Cuando están inactivas, pueden reducirse verticalmente hasta el valor mínimo de la unidad de capacidad de DocumentDB (DCU) especificado en el rango de capacidad del clúster.

------
#### [ Using the Consola de administración de AWS ]

En el siguiente ejemplo Consola de administración de AWS de configuración, se muestra cómo ver y modificar la configuración del nivel promocional de un lector de instancias sin servidor de DocumentDB.

1. Inicie sesión en la [Consola de administración de AWS](https://console.aws.amazon.com/docdb/home?region=us-east-1) de Amazon DocumentDB y ábrala.

   Los niveles de promoción de cada instancia se muestran en la columna **Nivel de promoción** de la Consola de administración de AWS.

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.
**sugerencia**  
Si no ve el panel de navegación del lado izquierdo de la pantalla, seleccione el icono de menú (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/es_es/documentdb/latest/developerguide/images/docdb-menu-icon.png)) en la esquina superior izquierda de la página.

   Aparece la tabla **Clústeres**.

1. En la tabla **Clústeres**, seleccione la casilla de verificación de la instancia en la que desee modificar el nivel de promoción.

1. Elija **Actions (Acciones)** y después **Modify (Modificar)**.

   Aparece el cuadro de diálogo **Modificar instancia**.

1. Localice la sección **Conmutación por error** y defina el **Nivel de promoción** en el nivel deseado.

1. Elija **Continuar**.

1. En **Programación de modificaciones**, elija **Aplicar inmediatamente**.

1. Elija **Modificar instancia**.

------
#### [ Using the AWS CLI ]

En el siguiente ejemplo AWS CLI de configuración, se muestra la configuración de escalado actual.

En el siguiente ejemplo, sustituya cada uno *user input placeholder* por su propia información o parámetros de configuración.

Los niveles de promoción de todas las instancias de un clúster se pueden ver con el `describe-db-clusters` AWS CLI comando:

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[0].DBClusterMembers' \
    --output table
```

A continuación se muestra la salida de este comando:

```
--------------------------------------------------------------------------------------------------------
|                                          DescribeDBClusters                                          |
+--------------------------------+---------------------------------+------------------+----------------+
|  DBClusterParameterGroupStatus |      DBInstanceIdentifier       | IsClusterWriter  | PromotionTier  |
+--------------------------------+---------------------------------+------------------+----------------+
|  in-sync                       |  sample-serverless-instance-2   |  False           |  1             |
|  in-sync                       |  sample-serverless-instance-1   |  True            |  1             |
+--------------------------------+---------------------------------+------------------+----------------+
```

El nivel de promoción de una instancia específica se puede modificar mediante el comando `modify-db-instance`:

```
aws docdb modify-db-instance \
    --db-instance-identifier sample-serverless-instance-2 \
    --promotion-tier 3
```

------

# Límites de instancias de Amazon DocumentDB sin servidor
<a name="docdb-serverless-instance-limits"></a>

Para las instancias de DocumentDB sin servidor, los siguientes límites por instancia dependen de la capacidad de escalado actual de la instancia:
+ Memoria de la instancia (GiB)
+ Conexiones (todas)
+ Límite del cursor
+ Transacciones abiertas
+ Conexiones (activas)

En las siguientes tablas, se describe cómo se reducen horizontalmente los límites por instancia de las instancias sin servidor en relación con la capacidad de escalado actual de la instancia.

Tenga en cuenta que los valores límite son diferentes en función de si la configuración de escalado de `MinCapacity` del clúster se configuró en más de dos (2). Si `MinCapacity` se establece en un valor inferior o igual a 2, los valores límite para el límite del cursor, las transacciones abiertas y las conexiones (activas) se restringen a un valor máximo inferior. (El motivo técnico del límite es permitir la reducción vertical a un estado «inactivo». Para obtener más información, consulte [Estado inactivo (0,5) DCUs](docdb-serverless-how-it-works.md#docdb-serverlerss-idle-state).

**Los límites de instancia db.serverless son ≤1 MinCapacity **


| Capacidad actual (DCU) | Memoria de la instancia (GiB) | Conexiones (todas) | Límite del cursor | Transacciones abiertas | Conexiones (activas) | 
| --- | --- | --- | --- | --- | --- | 
|  0,5  |  1  |  250  |  6  |  12  |  39  | 
|  1  |  2  |  500  |  12  |  24  |  79  | 
|  2  |  4  |  1 000  |  24  |  48  |  173  | 
|  4  |  8  |  2000  |  48  |  96  |  416  | 
|  8  |  16  |  4000  |  96  |  192  |  1071  | 
|  16  |  32  |  8000  |  132  |  264  |  1550  | 
|  32  |  64  |  16 000  |  132  |  264  |  1550  | 
|  64  |  128  |  32000  |  132  |  264  |  1550  | 
|  128  |  256  |  60000  |  132  |  264  |  1550  | 
|  256  |  512  |  60000  |  132  |  264  |  1550  | 

**Los límites de instancia db.serverless son superiores a 1 MinCapacity **


| Capacidad actual (DCU) | Memoria de la instancia (GiB) | Conexiones (todas) | Límite del cursor | Transacciones abiertas | Conexiones (activas) | 
| --- | --- | --- | --- | --- | --- | 
|  1.5  |  3  |  7250  |  18  |  36  |  124  | 
|  2  |  4  |  1 000  |  24  |  48  |  173  | 
|  4  |  8  |  2000  |  48  |  96  |  416  | 
|  8  |  16  |  4000  |  96  |  192  |  1071  | 
|  16  |  32  |  8000  |  192  |  384  |  2709  | 
|  32  |  64  |  16 000  |  384  |  768  |  4500  | 
|  64  |  128  |  32000  |  768  |  1536  |  4500  | 
|  128  |  256  |  60000  |  1536  |  3072  |  4500  | 
|  256  |  512  |  60000  |  3072  |  6144  |  4500  | 

Puede monitorear y emitir alarmas sobre los límites por instancia mediante las siguientes CloudWatch métricas. Para obtener más información sobre las CloudWatch métricas de Amazon DocumentDB, consulte. [Supervisión de Amazon DocumentDB con CloudWatch](cloud_watch.md)


| Recurso | CloudWatch métrica límite | CloudWatch métrica de uso (1 minuto como máximo) | CloudWatch métrica de uso | 
| --- | --- | --- | --- | 
| Memoria de la instancia | - | - | FreeableMemory | 
| Conexiones (todas) | DatabaseConnectionsLimit | DatabaseConnectionsMax | DatabaseConnections | 
| Cursores | DatabaseCursorsLimit | DatabaseCursorsMax | DatabaseCursors | 
| Transacciones | TransactionsOpenLimit | TransactionsOpenMax | TransactionsOpen | 

# Configuración de escalado de Amazon DocumentDB sin servidor
<a name="docdb-serverless-scaling-config"></a>



**Topics**
+ [Selección del rango de capacidad de escalado para un clúster de DocumentDB sin servidor](#docdb-serverless-scaling-capacity-choosing)
+ [Elección de la configuración `MinCapacity` para un clúster de DocumentDB sin servidor](#docdb-serverless-scaling-mincapacity-choosing)
+ [Elección de la configuración `MaxCapacity` para un clúster de DocumentDB sin servidor](#docdb-serverless-scaling-maxcapacity-choosing)
+ [Evitar errores out-of-memory](#docdb-serverless-scaling-mem-errors)
+ [¿Por qué no se reduce verticalmente mi instancia sin servidor?](#docdb-serverless-scaling-down)

## Selección del rango de capacidad de escalado para un clúster de DocumentDB sin servidor
<a name="docdb-serverless-scaling-capacity-choosing"></a>

Antes de añadir una instancia de DocumentDB sin servidor a un clúster de Amazon DocumentDB, el clúster también debe tener el conjunto de parámetros `ServerlessV2ScalingConfiguration`.

El parámetro `ServerlessV2ScalingConfiguration` consta de dos valores que definen el rango de capacidad de escalado sin servidor de cualquier instancia sin servidor del clúster:
+ **`MinCapacity`**: la capacidad de escalado mínima de cualquier instancia de DocumentDB sin servidor del clúster.
+ **`MaxCapacity`**: la capacidad de escalado máxima de cualquier instancia de DocumentDB sin servidor del clúster.

## Elección de la configuración `MinCapacity` para un clúster de DocumentDB sin servidor
<a name="docdb-serverless-scaling-mincapacity-choosing"></a>

Es tentador elegir siempre 0,5 para la `MinCapacity`. Este valor permite que la instancia se reduzca verticalmente a la capacidad mínima cuando esté completamente inactiva y, al mismo tiempo, permanezca activa. No obstante, en función de cómo se utilice ese clúster y de los demás ajustes que se configuren, un capacidad mínima diferente podría ser lo más efectivo. Debe tener en cuenta los factores siguientes al elegir la configuración de capacidad mínima:
+ La tasa de escalado de una instancia de DocumentDB sin servidor depende de su capacidad actual. Cuanto mayor sea la capacidad actual, más rápido podrá escalar verticalmente. Si necesita que la instancia se escale verticalmente de manera rápida a una capacidad muy alta, piense en establecer la capacidad mínima en un valor en el que la tasa de escalado cumpla con sus requisitos.
+ Si normalmente modifica la clase de instancia de sus instancias en previsión de una carga de trabajo especialmente alta o baja, puede aprovechar esa experiencia para hacer una estimación aproximada del rango de capacidad de DocumentDB sin servidor equivalente. Para determinar el tamaño de la memoria de una instancia de Amazon DocumentDB aprovisionada, consulte [Límites de instancias](limits.md#limits.instance).

  Por ejemplo, supongamos que utiliza la clase de instancia `db.r6g.xlarge` cuando el clúster tiene una carga de trabajo baja. Esta clase de instancia tiene 32 GiB de memoria. Por lo tanto, puede especificar una `MinCapacity` de 16 para configurar una instancia sin servidor que pueda reducir verticalmente hasta casi la misma capacidad. Esto se debe a que cada DCU corresponde a aproximadamente 2 GiB de memoria. Podría especificar un valor algo inferior para permitir que la instancia se reduzca verticalmente aún más en caso de que la instancia de `db.r6g.xlarge` se haya infrautilizado a veces.
+ Si la aplicación funciona de la manera más eficiente cuando las instancias tienen cierta cantidad de datos en la memoria caché de búfer, piense en especificar una configuración mínima de DCU en la que la memoria sea lo suficientemente grande como para contener los datos a los que se accede con frecuencia. De lo contrario, algunos datos se expulsan de la memoria caché de búfer cuando las instancias sin servidor se reducen verticalmente a un tamaño de memoria inferior. Luego, cuando las instancias se escalan de nuevo, la información se vuelve a leer en la caché de búfer a lo largo del tiempo. Si la cantidad necesaria I/O para devolver los datos a la memoria caché del búfer es considerable, podría ser más eficaz elegir un valor mínimo de DCU más alto. Para obtener más información, consulte [Determinación del tamaño de las instancias](best_practices.md#best_practices-instance_sizing).
+ Si las instancias de DocumentDB sin servidor se ejecutan la mayor parte del tiempo en una capacidad determinada, considere especificar una configuración de capacidad mínima inferior a esa línea de base, pero no muy inferior. Las instancias sin servidor pueden estimar de la manera más eficaz cuánto y con qué rapidez deben escalarse verticalmente cuando la capacidad actual no es drásticamente inferior a la capacidad requerida.
+ Si la carga de trabajo aprovisionada tiene requisitos de memoria demasiado altos para clases de instancias pequeñas como T3 o T4g, elija una configuración de DCU mínima que proporcione memoria comparable a una instancia R5 o R6g.
+ En particular, recomendamos la siguiente `MinCapacity` mínima de uso con las características especificadas (estas recomendaciones están sujetas a cambios):
  + Performance Insights — 2 DCUs
  + Clústeres globales: 8 DCUs (solo se aplica a los principales Región de AWS)
+ En Amazon DocumentDB, la replicación se produce en la capa de almacenamiento, por lo que la capacidad del lector no afecta directamente a la replicación. Sin embargo, en el caso de las instancias de lectura de DocumentDB sin servidor que se escalan de forma independiente, asegúrese de que la capacidad mínima sea suficiente para gestionar las cargas de trabajo durante los períodos de escritura intensiva a fin de evitar la latencia de las consultas. Si las instancias de lectura en los niveles de promoción 2 a 15 experimentan problemas de rendimiento, considere aumentar la capacidad mínima del clúster. Para obtener más información sobre cómo cambiar si las instancias de lectura se escalan junto con el escritor o de manera independiente, consulte [Visualización y modificación del nivel de promoción de los lectores sin servidor](docdb-serverless-managing.md#docdb-serverless-promo-tier).

  Si tiene un clúster con instancias de lectura de DocumentDB sin servidor, los lectores no se escalan junto con la instancia de escritura cuando el nivel de promoción de los lectores no es 0 ni 1. En ese caso, establecer una capacidad mínima baja puede provocar un retraso excesivo de la replicación. Esto se debe a que es posible que los lectores no tengan la capacidad suficiente para aplicar cambios de escritura cuando la base de datos esté ocupada. Se recomienda establecer la capacidad mínima en un valor que represente una cantidad de memoria y CPU comparables con la de la instancia de escritura.
+ El tiempo que tarda una instancia de DocumentDB sin servidor en escalar desde su capacidad mínima hasta su capacidad máxima depende de la diferencia entre sus valores de DCU mínima y máxima. Cuando la capacidad actual de la instancia es grande, DocumentDB sin servidor se escala verticalmente en incrementos mayores que cuando la instancia comienza desde una capacidad pequeña. Por lo tanto, si especifica una capacidad máxima relativamente grande y la instancia está la mayor parte del tiempo cerca de esa capacidad, considere aumentar la configuración mínima de DCU. De esta forma, una instancia inactiva podrá escalar de nuevo hasta la máxima capacidad más rápidamente.
+ Algunos límites de instancia vienen determinados por la capacidad actual de la instancia sin servidor, como el límite de conexiones, el límite de cursores y el límite de transacciones abiertas. Si la capacidad actual de la instancia es pequeña, los límites también serán, en consecuencia, pequeños. Si estos límites son un problema cuando la instancia sin servidor se reduce a su valor de `MinCapacity`, considere la posibilidad de aumentar la `MinCapacity` a un valor más alto. Para obtener más información, consulte [Límites de instancias de Amazon DocumentDB sin servidor](docdb-serverless-instance-limits.md).
+ Además, algunos límites de instancias se limitan a un valor máximo inferior si `MinCapacity` se establece en un valor inferior o igual a 1,0 DCUs, como el límite de conexiones activas, el límite de cursores y el límite de transacciones abiertas. Si estos límites máximos no son suficientes para su carga de trabajo, utilice un `MinCapacity` valor de 1,5 como mínimo DCUs. Para obtener más información, consulte [Límites de instancias de Amazon DocumentDB sin servidor](docdb-serverless-instance-limits.md).

Para obtener instrucciones sobre cómo modificar la configuración de escalado de un clúster, consulte [Administración de Amazon DocumentDB sin servidor](docdb-serverless-managing.md).

## Elección de la configuración `MaxCapacity` para un clúster de DocumentDB sin servidor
<a name="docdb-serverless-scaling-maxcapacity-choosing"></a>

Es tentador elegir siempre un valor alto para la configuración de capacidad máxima de DocumentDB sin servidor. Una alta capacidad máxima permite que la instancia se escale verticalmente cuando ejecuta una carga de trabajo intensiva. Un valor bajo evita la posibilidad de cobros inesperados. Según cómo utilice ese clúster y los demás ajustes que configure, el valor más efectivo podría ser mayor o menor de lo que pensaba originalmente. Tenga en cuenta los factores siguientes al elegir la configuración de capacidad máxima:
+ La capacidad máxima debe ser al menos tan alta como la capacidad mínima. Usted puede definir la capacidad mínima y máxima para que sean idénticas. Sin embargo, en ese caso, la capacidad nunca aumenta ni baja. Por lo tanto, utilizar valores idénticos para la capacidad mínima y máxima no es apropiado fuera de situaciones de prueba.
+ La capacidad máxima debe ser como mínimo de 1,0 DCUs y 256 como máximo DCUs.
+ Recomendamos supervisar el escalado y el uso de recursos de las instancias sin servidor. Si su instancia sin servidor se escala con frecuencia hasta alcanzar su capacidad máxima y tiene limitaciones de recursos (por ejemplo, cuando la métrica `DCUUtilization` es de 100,0), le recomendamos seleccionar un valor de `MaxCapacity` más alto. Para obtener más información, consulte [Supervisión de Amazon DocumentDB sin servidor](docdb-serverless-monitoring.md).
+ Si normalmente modifica la clase de instancia de sus instancias aprovisionadas en previsión de una carga de trabajo especialmente alta o baja, puede aprovechar esa experiencia para hacer una estimación del rango de capacidad de DocumentDB sin servidor equivalente. Para determinar el tamaño de la memoria de las instancias de Amazon DocumentDB aprovisionadas, consulte [Límites de instancias](limits.md#limits.instance).

  Por ejemplo, supongamos que utiliza la clase de instancia `db.r6g.4xlarge` cuando el clúster tiene una carga de trabajo elevada. Esta clase de instancia tiene 128 GiB de memoria. Por lo tanto, puede especificar una configuración de DCU máxima de 64 para configurar una instancia sin servidor que pueda escalar verticalmente hasta casi la misma capacidad. Esto se debe a que cada DCU corresponde a aproximadamente 2 GiB de memoria. Puede especificar un valor algo mayor para permitir que la instancia se escale más verticalmente en caso de que la instancia de `db.r6g.4xlarge` a veces no tenga la capacidad suficiente para gestionar la carga de trabajo de forma eficaz.
+ Si tiene un límite presupuestario para usar su base de datos, elija un valor que se mantenga dentro de ese límite, incluso si todas las instancias sin servidor se ejecutan a máxima capacidad todo el tiempo. Recuerde que, cuando tenga n instancias sin servidor en el clúster, la capacidad sin servidor máxima teórica que el clúster puede consumir en cualquier momento es n veces la configuración máxima de DCU para el clúster. (La cantidad real consumida podría ser menor, por ejemplo, si algunos lectores escalan independientemente del escritor).
+ Si hace uso de instancias de lectura sin servidor para descargar parte de la carga de trabajo de solo lectura de la instancia de escritura, es posible que pueda elegir una configuración de capacidad máxima inferior. Esto se hace para reflejar que cada instancia de lectura no necesita escalar tan alto como si el clúster contuviera solo una instancia.
+ Supongamos que desea protegerse contra el uso excesivo por parámetros de base de datos mal configurados o consultas ineficientes en la aplicación. En ese caso, puede evitar un uso excesivo por error eligiendo un ajuste de capacidad máxima inferior al más alto absoluto que podría establecer.
+ Si los picos por actividad real del usuario son poco frecuentes, pero sí ocurren, puede tener en cuenta esas ocasiones al elegir la configuración de capacidad máxima. Si la prioridad es que la aplicación siga funcionando con un rendimiento y escalabilidad completos, puede especificar una configuración de capacidad máxima superior a la observada en el uso normal. Si está bien que la aplicación se ejecute con un rendimiento reducido durante picos de actividad muy extremos, puede elegir una configuración de capacidad máxima ligeramente inferior. Asegúrese de elegir una configuración que aún tenga suficiente memoria y recursos de CPU para mantener la aplicación en ejecución.
+ Si habilita opciones de configuración en el clúster que aumenten el uso de memoria para cada instancia, tenga en cuenta esa memoria al decidir el valor máximo de DCU. Estos ajustes incluyen los de Performance Insights y los clústeres globales. Asegúrese de que el valor máximo de la DCU permite que las instancias sin servidor se escalen verticalmente lo suficiente como para gestionar la carga de trabajo cuando se usen esas características. Para obtener información sobre cómo solucionar problemas causados por la combinación de una configuración de DCU máxima baja y características de Amazon DocumentDB que impongan sobrecarga de memoria, consulte [Evitar errores out-of-memory](#docdb-serverless-scaling-mem-errors) (a continuación).
+ En particular, recomendamos la siguiente `MaxCapacity` mínima de uso con las características especificadas (estas recomendaciones están sujetas a cambios):
  + Creación de instancias sin servidor en un clúster con un gran volumen de datos: 2 DCUs (esto incluye la creación de instancias sin servidor como parte de la restauración de un clúster).
+ Algunos límites de instancia vienen determinados por la capacidad actual de la instancia, como el límite de conexiones, el límite de cursores y el límite de transacciones abiertas. A la hora de elegir el valor de `MaxCapacity` de la carga de trabajo, asegúrese de tener en cuenta estos límites de instancia para evitar que uno de ellos se vea obstaculizado por uno de ellos. Para obtener más información, consulte [Límites de instancias de Amazon DocumentDB sin servidor](docdb-serverless-instance-limits.md).

Para obtener instrucciones sobre cómo modificar la configuración de escalado de un clúster, consulte [Administración de Amazon DocumentDB sin servidor](docdb-serverless-managing.md).

## Evitar errores out-of-memory
<a name="docdb-serverless-scaling-mem-errors"></a>

Si una de sus instancias de DocumentDB sin servidor alcanza constantemente el límite de su capacidad máxima, Amazon DocumentDB indica esta condición y establece la instancia en un estado de **incompatible-parameters**. Si bien la instancia tiene el estado **incompatible-parameters**, algunas operaciones quedan bloqueadas. Por ejemplo, no se puede actualizar la versión del motor. Para obtener más información sobre el estado de una instancia de Amazon DocumentDB, consulte [Supervisión del estado de una instancia de Amazon DocumentDB](https://docs.aws.amazon.com//documentdb/latest/developerguide/monitoring_docdb-instance_status.html).

Por lo general, la instancia pasa a este estado cuando se reinicia con frecuencia debido a out-of-memory errores. Amazon DocumentDB registra un evento cuando se produce este tipo de reinicio. Para ver los eventos de los recursos, consulte [Visualización de eventos de Amazon DocumentDB](managing-events.md#viewing-events). Los casos de uso de memoria inusualmente elevados pueden producirse debido a una sobrecarga en el ajuste de configuraciones, como Información sobre rendimiento. También puede provenir de una carga de trabajo pesada en la instancia o de la administración de metadatos asociados a un gran número de objetos de esquema.

Si la presión de memoria disminuye para que la instancia no alcance su capacidad máxima muy a menudo, Amazon DocumentDB cambia automáticamente el estado de la instancia a disponible.

Para recuperarse de esta situación, puede llevar a cabo algunas o todas las acciones siguientes:
+ Aumente el límite inferior de capacidad para instancias sin servidor. Para ello, cambie el valor mínimo de la unidad de capacidad de DocumentDB (DCU) para el clúster. Al hacerlo, se evitan problemas en los que la capacidad de una base de datos inactiva se escala a menos memoria de la necesaria para las características activadas en el clúster. Después de cambiar la configuración de DCU del clúster, reinicie la instancia sin servidor. Cuando lo hace, se evalúa si Amazon DocumentDB puede restablecer el estado de nuevo a disponible.
+ Aumente el límite superior de capacidad para instancias sin servidor. Para ello, cambie el valor máximo de DCU para el clúster. Al hacerlo, se evitan problemas en los que una base de datos ocupada no puede escalar verticalmente a una capacidad con suficiente memoria para las funciones activadas en el clúster y la carga de trabajo de la base de datos. Después de cambiar la configuración de DCU del clúster, reinicie la instancia sin servidor. Cuando lo hace, se evalúa si Amazon DocumentDB puede restablecer el estado de nuevo a disponible.
+ Desactivar los ajustes de configuración que requieren sobrecarga de memoria. Por ejemplo, suponga que tiene activada una característica como Información sobre rendimiento, pero no la usa. Si es así, puede desactivarla. O bien, puede ajustar los valores de capacidad mínima y máxima del clúster para tener en cuenta la memoria utilizada por esos tipos de características. Para ver instrucciones sobre cómo elegir la configuración de capacidad mínima y máxima, consulte [Selección del rango de capacidad de escalado para un clúster de DocumentDB sin servidor](#docdb-serverless-scaling-capacity-choosing).
+ Reduzca la carga de trabajo de la instancia. Por ejemplo, puede añadir instancias de lectura al clúster para distribuir la carga de las consultas de solo lectura entre más instancias.

## ¿Por qué no se reduce verticalmente mi instancia sin servidor?
<a name="docdb-serverless-scaling-down"></a>

En algunos casos, DocumentDB sin servidor no se reduce verticalmente a la capacidad mínima, incluso sin carga en la base de datos. Esto podría deberse por alguna de las siguientes razones:
+ Información sobre rendimiento puede aumentar el uso de los recursos e impedir que la base de datos se reduzca verticalmente a su capacidad mínima. Estas son algunas de ellas:
+ Si una instancia de lectura no se reduce verticalmente al mínimo y permanece en la misma capacidad o más que la instancia de escritura, compruebe el nivel de prioridad de la instancia de lectura. Las instancias de lectura de DocumentDB sin servidor de nivel 0 o 1 se mantienen con una capacidad mínima al menos igual a la de la instancia de escritura. Cambie el nivel de prioridad del lector a 2 o más para que se escale y se reduzca verticalmente independientemente del escritor. Para obtener más información, consulte [Escalado de Amazon DocumentDB sin servidor](docdb-serverless-how-it-works.md#docdb-serverless-scaling).
+ Las cargas de trabajo pesadas de las bases de datos pueden aumentar el uso de recursos.
+ Los grandes volúmenes de bases de datos pueden aumentar el uso de recursos. Amazon DocumentDB utiliza recursos de memoria y CPU para la administración de clústeres. Amazon DocumentDB requiere más CPU y memoria para administrar los clústeres con volúmenes de bases de datos más grandes. Si la capacidad mínima del clúster es inferior al mínimo requerido para la administración del clúster, el clúster no se reducirá verticalmente a la capacidad mínima.
+ La actividad de mantenimiento en segundo plano puede aumentar periódicamente el uso de recursos.

Si la base de datos sigue sin reducir verticalmente la capacidad mínima configurada, deténgala y reiníciela para recuperar los fragmentos de memoria que se hayan acumulado con el tiempo. Al detener e iniciar una base de datos, se produce un tiempo de inactividad, por lo que recomendamos hacerlo con moderación.

# Supervisión de Amazon DocumentDB sin servidor
<a name="docdb-serverless-monitoring"></a>

Para obtener más información sobre la supervisión en Amazon DocumentDB, consulte [Monitorización de Amazon DocumentDB](monitoring_docdb.md).

**Topics**
+ [Memoria insuficiente: estado de parámetros incompatibles](#w2aac41c27b7)
+ [CloudWatch Métricas de Amazon para DocumentDB sin servidor](#w2aac41c27b9)
+ [Supervisión del rendimiento de DocumentDB sin servidor con Información sobre rendimiento](#w2aac41c27c11)

## Memoria insuficiente: estado de parámetros incompatibles
<a name="w2aac41c27b7"></a>

Si una de sus instancias sin servidor alcanza constantemente el límite de su capacidad máxima, Amazon DocumentDB indica esta condición y establece la instancia en un estado de incompatible-parameters. Para obtener más información, consulte [Evitar errores out-of-memory](docdb-serverless-scaling-config.md#docdb-serverless-scaling-mem-errors).

## CloudWatch Métricas de Amazon para DocumentDB sin servidor
<a name="w2aac41c27b9"></a>

Para obtener más información sobre el uso CloudWatch con Amazon DocumentDB, consulte. [Supervisión de Amazon DocumentDB con CloudWatch](cloud_watch.md)

Puede ver sus instancias sin servidor CloudWatch para monitorear la capacidad consumida por cada instancia con la `ServerlessDatabaseCapacity` métrica. También puede supervisar todas las CloudWatch métricas estándar de DocumentDB, como `DatabaseConnections` las consultas. Para ver la lista completa de CloudWatch métricas que puede supervisar para Amazon DocumentDB, consulte. [Supervisión de Amazon DocumentDB con CloudWatch](cloud_watch.md) Es importante monitorear las siguientes métricas a CloudWatch nivel de instancia para que pueda comprender cómo sus instancias sin servidor de DocumentDB se escalan hacia arriba y hacia abajo. Todas estas métricas se calculan cada segundo. De esta forma, puede supervisar el estado en uso de sus instancias sin servidor. Puede configurar alarmas para notificarle si alguna de las instancias sin servidor se acerca a un umbral de métricas relacionadas con la capacidad. Puede determinar si los ajustes de capacidad mínima y máxima son apropiados o si necesita ajustarlos. Puede determinar dónde debe centrar sus esfuerzos para optimizar la eficiencia de la base de datos.
+ **`ServerlessDatabaseCapacity`**— Como métrica a nivel de instancia, indica el número representado por la capacidad de la instancia actual. DCUs Como métrica en el nivel de clúster, representa el promedio de los valores de `ServerlessDatabaseCapacity` de todas las instancias de DocumentDB sin servidor del clúster.
+ **`DCUUtilization.`**: esta métrica es nueva en DocumentDB sin servidor. Este valor se representa como un porcentaje. Se calcula como el valor de la métrica `ServerlessDatabaseCapacity` dividida por el valor máximo de DCU del clúster. Tenga en cuenta las siguientes pautas para interpretar esta métrica y tomar medidas:
  + Si esta métrica se aproxima a un valor de `100.0`, la instancia se ha escalado verticalmente al punto máximo posible. Considere aumentar la configuración máxima de DCU para el clúster. De este modo, las instancias de escritura y lectura podrán escalarse a una mayor capacidad.
  + Supongamos que una carga de trabajo de solo lectura hace que una instancia de lectura se aproxime a un valor `DCUUtilization` de `100.0`, mientras que la instancia de escritura no está cerca de su capacidad máxima. En ese caso, considere añadir instancias de lectura adicionales al clúster. De esta forma, puede distribuir la parte de solo lectura de la carga de trabajo en más instancias, lo que reduce la carga en cada instancia de lectura.
  + Supongamos que está ejecutando una aplicación de producción, donde el rendimiento y la escalabilidad son las principales consideraciones. En este caso, puede establecer el valor máximo de DCU del clúster en un número elevado. Su objetivo es que la métrica `DCUUtilization` quede siempre por debajo de 100,0. Con un valor de DCU máximo alto, puede estar seguro de tener suficiente espacio en caso de que haya picos inesperados en la actividad de la base de datos. Solo se le cobrará por la capacidad de base de datos que se consuma realmente.
+ **`CPUUtilization`**: esta métrica se interpreta de forma diferente en DocumentDB sin servidor que en las instancias aprovisionadas. Para DocumentDB sin servidor, este valor es un porcentaje que se calcula como la cantidad de CPU que se utiliza actualmente dividida por la capacidad de CPU disponible bajo el valor máximo de DCU del clúster. Amazon DocumentDB supervisa este valor automáticamente y escala verticalmente su instancia sin servidor cuando esta utiliza sistemáticamente una elevada proporción de su capacidad de CPU.

  Si esta métrica se aproxima a un valor de `100.0`, la instancia ha alcanzado su capacidad máxima de CPU. Considere aumentar la configuración máxima de DCU para el clúster. Si esta métrica se aproxima a un valor de `100.0` en una instancia de lectura, considere añadir instancias de lectura adicionales al clúster. De esta forma, puede distribuir la parte de solo lectura de la carga de trabajo distribuida en más instancias, y así reducir la carga en cada instancia de lectura.
+ **`FreeableMemory`**: este valor representa la cantidad de memoria sin utilizar que está disponible cuando la instancia de DocumentDB sin servidor se escala a su capacidad máxima. Por cada DCU en cuya capacidad actual esté por debajo de la capacidad máxima, este valor aumenta aproximadamente 2 GiB. Por lo tanto, esta métrica no se aproxima a cero hasta que la instancia se escala verticalmente al punto máximo posible.

  Si esta métrica se aproxima a un valor de cero, la instancia se ha escalado verticalmente tanto como es posible y se acerca al límite de memoria disponible. Considere aumentar la configuración máxima de DCU para el clúster. Si esta métrica se aproxima a un valor de cero en una instancia de lectura, considere añadir instancias de lectura adicionales al clúster. De esta forma, puede distribuir la parte de solo lectura de la carga de trabajo entre más instancias, y así reducir el uso de memoria en cada instancia de lectura.
+ **`TempStorageIops`**: el número de IOPS realizadas en el almacenamiento local adjuntas a la instancia. Incluye las IOPS de lecturas y escrituras. Esta métrica representa un recuento y se mide una vez por segundo. Esta es una nueva métrica para DocumentDB sin servidor. Para obtener más información, consulte [Supervisión de Amazon DocumentDB con CloudWatch](cloud_watch.md).
+ **`TempStorageThroughput`**: la cantidad de datos transferidos desde el almacenamiento local asociado a la instancia y hacia este. Esta métrica representa un número de bytes y se mide una vez por segundo. Esta es una nueva métrica para DocumentDB sin servidor. Para obtener más información, consulte [Supervisión de Amazon DocumentDB con CloudWatch](cloud_watch.md).

Por lo general, la mayoría de los escalados verticales a instancias de DocumentDB sin servidor se deben al uso de la memoria y la actividad de CPU. Las métricas `TempStorageIops` y `TempStorageThroughput` pueden ayudar a diagnosticar los raros casos en los que la actividad de red para transferencias entre la instancia y los dispositivos de almacenamiento locales es responsable de aumentos de capacidad no esperados. Para supervisar otra actividad de red, puede utilizar estas métricas existentes:
+ `NetworkReceiveThroughput`
+ `NetworkThroughput`
+ `NetworkTransmitThroughput`
+ `StorageNetworkReceiveThroughput`
+ `StorageNetworkThroughput`
+ `StorageNetworkTransmitThroughput`

### Cómo se aplican las CloudWatch métricas sin servidor de DocumentDB a su factura AWS
<a name="w2aac41c27b9c13"></a>

Los cargos por servicios sin servidor de DocumentDB que figuran en su AWS factura se calculan en función de la misma `ServerlessDatabaseCapacity` métrica que puede supervisar. El mecanismo de facturación puede diferir del CloudWatch promedio calculado para esta métrica en los casos en que utilice la capacidad sin servidor de DocumentDB solo durante una parte de una hora. También puede variar si los problemas del sistema hacen que la CloudWatch métrica no esté disponible durante períodos breves. Por lo tanto, es posible que vea un valor ligeramente diferente de las horas de DCU en su factura que si computa el número usted mismo a partir del valor de `ServerlessDatabaseCapacity` promedio.

### Ejemplos de comandos de Amazon CloudWatch CLI para métricas sin servidor de DocumentDB
<a name="w2aac41c27b9c15"></a>

Los siguientes AWS CLI ejemplos muestran cómo puede supervisar las CloudWatch métricas más importantes relacionadas con DocumentDB serverless. En cada caso, sustituya la cadena `Value=` para el parámetro `--dimensions` con el identificador de su propia instancia de DocumentDB sin servidor.

En el siguiente ejemplo de Linux se muestran los valores de capacidad mínima, máxima y promedio de una instancia, medidos cada 10 minutos durante 1 hora. El comando de fecha de Linux especifica las horas de inicio y finalización en relación con la fecha y la hora en curso. La función `sort_by` en el parámetro `--query` ordena los resultados cronológicamente basándose en el campo `Timestamp`.

```
aws cloudwatch get-metric-statistics \
    --metric-name "ServerlessDatabaseCapacity" \
    --start-time "$(date -d '1 hour ago')" \
    --end-time "$(date -d 'now')" \
    --period 600 \
    --namespace "AWS/DocDB" \
    --statistics Minimum Maximum Average \
    --dimensions Name=DBInstanceIdentifier,Value=my_instance \
    --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \
    --output table
```

El siguiente ejemplo de Linux muestra la supervisión de la capacidad de una instancia en un clúster. Mide el uso de capacidad mínimo, máximo y promedio de una instancia. Las mediciones se toman una vez por hora durante un período de tres horas. En estos ejemplos, se utiliza la `DCUUtilization` métrica que representa un porcentaje del límite superior DCUs, en lugar de `ServerlessDatabaseCapacity` representar un número fijo de. DCUs De esta forma, no necesita conocer los números reales de los valores de DCU mínima y máxima en el rango de capacidad. Puede ver porcentajes que oscilan entre 0 y 100.

```
aws cloudwatch get-metric-statistics \
    --metric-name "DCUUtilization" \
    --start-time "$(date -d '3 hours ago')" \
    --end-time "$(date -d 'now')" \
    --period 3600 \
    --namespace "AWS/DocDB" \
    --statistics Minimum Maximum Average \
    --dimensions Name=DBInstanceIdentifier,Value=my_instance \
    --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \
    --output table
```

En el siguiente ejemplo de Linux se hacen mediciones similares a las anteriores. En este caso, las medidas corresponden a la métrica `CPUUtilization`. Las mediciones se toman cada 10 minutos durante un período de 1 hora. Los números representan el porcentaje de CPU disponible utilizada, en función de los recursos de CPU disponibles para la configuración de capacidad máxima de la instancia.

```
aws cloudwatch get-metric-statistics \
    --metric-name "CPUUtilization" \
    --start-time "$(date -d '1 hour ago')" \
    --end-time "$(date -d 'now')" \
    --period 600 \
    --namespace "AWS/DocDB" \
    --statistics Minimum Maximum Average \
    --dimensions Name=DBInstanceIdentifier,Value=my_instance \
    --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \
    --output table
```

En el siguiente ejemplo de Linux se hacen mediciones similares a las anteriores. En este caso, las medidas corresponden a la métrica `FreeableMemory`. Las mediciones se toman cada 10 minutos durante un período de 1 hora.

```
aws cloudwatch get-metric-statistics \
    --metric-name "FreeableMemory" \
    --start-time "$(date -d '1 hour ago')" \
    --end-time "$(date -d 'now')" \
    --period 600 \
    --namespace "AWS/DocDB" \
    --statistics Minimum Maximum Average \
    --dimensions Name=DBInstanceIdentifier,Value=my_instance \
    --query 'sort_by(Datapoints[*].{min:Minimum,max:Maximum,avg:Average,ts:Timestamp},&ts)' \
    --output table
```

## Supervisión del rendimiento de DocumentDB sin servidor con Información sobre rendimiento
<a name="w2aac41c27c11"></a>

Puede utilizar Información sobre rendimiento para supervisar el rendimiento de las instancias de DocumentDB sin servidor. Para conocer los procedimientos de información del rendimiento, consulte [Supervisión con información sobre rendimiento](performance-insights.md).

Los siguientes son contadores de Información sobre rendimiento nuevos aplicables a instancias de DocumentDB sin servidor:
+ **`os.general.serverlessDBCapacity`**— La capacidad actual de la instancia en DCUs. El valor corresponde a la `ServerlessDatabaseCapacity` CloudWatch métrica de la instancia.
+ **`os.general.dcuUtilization`**— El porcentaje de la capacidad actual respecto de la capacidad máxima configurada. El valor corresponde a la `DCUUtilization` CloudWatch métrica de la instancia.
+ **`os.general.maxConfiguredDcu`**: la capacidad máxima que configuró para esta instancia de DocumentDB sin servidor. Se mide en DCUs.
+ **`os.general.minConfiguredDcu`**: la capacidad mínima que configuró para esta instancia de DocumentDB sin servidor. Se mide en DCUs.

Para ver la lista completa de contadores de información de rendimiento, consulte [Métricas de contador para Información sobre rendimiento](performance-insights-counter-metrics.md).

Cuando se muestran los valores de vCPU para una instancia de DocumentDB sin servidor en la Información sobre rendimiento, estos valores representan estimaciones basadas en el valor de DCU de la instancia. En el intervalo predeterminado de un minuto, los valores fraccionarios de vCPU se redondean al número entero más cercano. En intervalos más largos, el valor de vCPU que se muestra es el promedio de los valores de vCPU enteros de cada minuto.