Configuración adicional para instancias y clústeres de bases de datos de Neptune sin servidor - Amazon Neptune

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.

Configuración adicional para instancias y clústeres de bases de datos de Neptune sin servidor

Además de establecer la capacidad mínima y máxima para el clúster de base de datos de Neptune sin servidor, hay otras opciones de configuración que se deben tener en cuenta.

Combinación de instancias aprovisionadas y sin servidor de un clúster de base de datos

Un clúster de base de datos no tiene por qué ser únicamente sin servidor: puede crear una combinación de instancias aprovisionadas y sin servidor (una configuración mixta).

Por ejemplo, supongamos que necesita más capacidad de escritura de la disponible en una instancia sin servidor. En ese caso, puede configurar el clúster con un escritor aprovisionado de gran capacidad y seguir utilizando instancias sin servidor para los lectores.

O bien, 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 sin servidor y uno o varios lectores aprovisionados.

Consulte Uso de Amazon Neptune sin servidor para obtener información sobre cómo crear un clúster de base de datos de configuración mixta.

Configuración de los niveles de promoción para las instancias de Neptune sin servidor

En el caso de clústeres que incluyen varias instancias 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 de base de datos aprovisionadas.

En el navegador AWS Management Console, especifique esta configuración mediante la prioridad de conmutación por error en Configuración adicional en las páginas Crear base de datos, Modificar instancia y Añadir lector. Puede ver esta propiedad para las instancias existentes en la columna opcional Nivel prioritario de la página Bases de datos. También puede ver esta propiedad en la página de detalles de una instancia o clúster de base de datos.

En el caso de las instancias aprovisionadas, la elección de nivel 0 a 15 determina únicamente el orden en que Neptune elige qué instancia de lector debe promocionarse al escritor durante una operación de conmutación por error. En el caso de las instancias de lector de Neptune 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 escritor o si se escala independientemente de ella en función únicamente de su propia carga de trabajo.

Las instancias de lector de Neptune sin servidor de nivel 0 o 1 se mantienen con una capacidad mínima al menos igual a la de la instancia de escritor, para que estén listas para sustituir al escritor en caso de conmutación por error. Si el escritor es una instancia aprovisionada, Neptune estima la capacidad sin servidor equivalente y usa esa estimación como capacidad mínima para la instancia de lector sin servidor.

Las instancias de lector de Neptune sin servidor de los niveles 2 a 15 no tienen la misma restricción en cuanto a la capacidad mínima y se escalan de forma independiente del escritor. Cuando están inactivos, se reducen al NCU valor mínimo especificado en el rango de capacidad del clúster. Sin embargo, esto puede provocar problemas si la carga de trabajo de lectura aumenta rápidamente.

Mantener la capacidad del lector alineada con la capacidad del escritor

Un aspecto importante que debe tener en cuenta es que debe asegurarse de que las instancias de lector puedan seguir el ritmo de la instancia de escritor, con el fin de evitar un retraso excesivo en la replicación. Esto es especialmente preocupante en dos situaciones, en las que las instancias de lector sin servidor no se reducen horizontalmente de forma automática ni sincronizada con la instancia de escritor:

  • Cuando el escritor está aprovisionado y los lectores no tienen servidor.

  • Cuando el escritor no tiene servidor y los lectores sin servidor tienen niveles de promoción de 2 a 15.

En ambos casos, establezca la capacidad mínima sin servidor para que coincida con la capacidad prevista de escritor, con el fin de garantizar que las operaciones del lector no agoten el tiempo de espera y puedan provocar reinicios. En el caso de una instancia de escritor aprovisionada, establezca la capacidad mínima para que coincida con la de la instancia aprovisionada. En el caso de un escritor sin servidor, la configuración óptima puede ser más difícil de predecir.

Dado que el rango de capacidad de las instancias se establece en el nivel de clúster, todas las instancias sin servidor se controlan con la misma configuración de capacidad mínima y máxima. Las instancias de lector de los niveles 0 y 1 se reducen horizontalmente y de forma sincronizada con la instancia de escritor, pero las instancias de los niveles de promoción 2 a 15 se escalan de forma independiente de las unas de las otras y de la instancia de escritor, en función de su carga de trabajo. Al establecer una capacidad mínima demasiado baja, las instancias inactivas de los niveles 2 a 15 pueden reducirse verticalmente demasiado bajo para volver a escalarse verticalmente con la suficiente rapidez como para hacer frente a un aumento repentino de la actividad del escritor.

Evitar la configuración de un valor de tiempo de espera demasiado amplio

Es posible incurrir en costos inesperados si se establece un valor de tiempo de espera de consulta demasiado alto en una instancia sin servidor.

Si no se establece un tiempo de espera razonable, es posible que emita una consulta sin darse cuenta que requiere un tipo de instancia potente y costosa y que siga ejecutándose durante mucho tiempo, lo que generará costes que no había previsto. Para evitar esta situación, utilice un valor de tiempo de espera de consulta que se adapte a la mayoría de las consultas y que solo provoque que se agoten inesperadamente las que se ejecutan durante mucho tiempo.

Esto es válido tanto para los valores generales de tiempo de espera de consulta establecidos mediante parámetros como para los valores de tiempo de espera por consulta establecidos mediante sugerencias de consulta.

Optimización de la configuración de Neptune sin servidor

Si el clúster de base de datos Neptune sin servidor no está ajustado a la carga de trabajo que está ejecutando, es posible que observe que no se ejecuta de forma óptima. Puede ajustar la configuración de capacidad mínima o máxima para que pueda escalarse sin problemas de memoria.

  • Aumente la configuración de capacidad mínima del clúster. Esto puede solucionar la situación en la que una instancia inactiva se vuelve a escalar a una capacidad que tiene menos memoria de la que necesitan la aplicación y las características habilitadas.

  • Aumente la configuración de capacidad máxima del clúster. Esto puede solucionar la situación en la que una base de datos ocupada no puede escalar verticalmente a una capacidad con suficiente memoria para gestionar la carga de trabajo y las características de uso intensivo de memoria habilitadas.

  • Cambie la carga de trabajo de la instancia en cuestión. Por ejemplo, puede añadir instancias de lector al clúster para distribuir la carga de lectura entre más instancias.

  • Ajuste las consultas de la aplicación para que utilicen menos recursos.

  • Intente utilizar una instancia aprovisionada que sea mayor que el máximo NCUs disponible en Neptune Serverless para comprobar si se adapta mejor a la memoria CPU y a los requisitos de la carga de trabajo.