Versión 1.1.1.0.R6 del motor de Amazon Neptune (23/09/2022) - 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.

Versión 1.1.1.0.R6 del motor de Amazon Neptune (23/09/2022)

A partir del 23 de septiembre de 2022, se implementará de forma general la versión 1.1.1.0.R6 del motor. Tenga en cuenta que las versiones nuevas tardan unos días en estar disponibles en todas las regiones.

importante

La actualización a esta versión del motor desde una versión anterior a 1.1.0.0 también desencadena una actualización del sistema operativo en todas las instancias del clúster de base de datos. Dado que las solicitudes de escritura activas que se produzcan durante la actualización del sistema operativo no se procesarán, debe pausar todas las cargas de trabajo de escritura en el clúster que se va a actualizar, incluidas las cargas masivas de datos, antes de iniciar la actualización.

Para completar la actualización correctamente, cada subred de cada zona de disponibilidad (AZ) debe tener al menos una dirección IP disponible por instancia de Neptune. Por ejemplo, si hay una instancia de escritor y dos instancias de lector en la subred 1 y dos instancias de lector en la subred 2, la subred 1 debe tener al menos 3 direcciones IP libres y la subred 2 debe tener al menos 2 direcciones IP libres antes de iniciar la actualización.

Al inicio de la actualización, Neptune genera una instantánea con un nombre que se compone de preupgrade seguido de un identificador generado automáticamente en función de la información del clúster de base de datos. No se le cobrará por esta instantánea y podrá utilizarla para restaurar el clúster de base de datos si se produce algún problema durante el proceso de actualización.

Cuando se complete la propia actualización del motor, la nueva versión del motor estará disponible brevemente en el sistema operativo anterior, pero en menos de cinco minutos todas las instancias del clúster comenzarán simultáneamente a actualizar el sistema operativo. El clúster de base de datos no estará disponible en este momento durante varios minutos. Puede reanudar cargas de trabajo de escritura una vez finalizada la actualización.

Este proceso genera los siguientes eventos:

  • Mensajes de eventos por clúster:

    • Upgrade in progress: Creating pre-upgrade snapshot [preupgrade-(autogenerated snapshot ID)]

    • Database cluster major version has been upgraded

  • Mensajes de eventos por instancia:

    • Applying off-line patches to DB instance

    • DB instance shutdown

    • Finished applying off-line patches to DB instance

    • DB instance restarted

nota

Hay un cambio importante en esta versión para el código que usa openCypher con autenticación de IAM. Hasta ahora, la cadena de host de la firma de IAM incluía el protocolo, como, por ejemplo bolt://, de la siguiente manera:

"Host":"bolt://(host URL):(port)"

A partir de la versión 1.1.1.0 del motor, se debe omitir el protocolo:

"Host":"(host URL):(port)"

Para ver ejemplos, consulte Uso del protocolo Bolt.

Mejoras en esta versión del motor

  • Se ha mejorado el rendimiento de las consultas order-by de Gremlin. Las consultas de Gremlin con order-by al final de a un NeptuneGraphQueryStep ahora utilizan un tamaño de fragmento mayor para obtener un mejor rendimiento. Esto no se aplica a order-by en un nodo interno (sin raíz) del plan de consultas.

  • Se ha mejorado el rendimiento de las consultas de actualización de Gremlin. Los vértices y los bordes ahora deben bloquearse para que no se eliminen al añadir bordes o propiedades. Este cambio elimina los bloqueos duplicados en una transacción, lo que mejora el rendimiento.

Defectos corregidos en esta versión del motor

  • Se ha corregido un error de openCypher en la cláusula MERGE que, en algunos casos, provocaba la creación de nodos y bordes duplicados.

  • Se ha corregido un error en la gestión de las consultas de SPARQL que incluyen (NOT) EXISTS en una cláusula OPTIONAL, por el que, en algunos casos, faltaban los resultados de las consultas.

  • Se ha corregido un error que retrasaba el reinicio del servidor cuando se estaba realizando una carga masiva.

  • Se ha corregido un error que provocaba un error al realizar un recorrido bidireccional con un patrón de longitud variable de openCypher con un filtro en la propiedad de relación. Un ejemplo de este patrón de longitud variable es (n)-[r*1..2]->(m).

  • Se ha corregido un error relacionado con la forma en que se devuelven los datos en caché al cliente, que, en algunos casos, provocaba una latencia inesperadamente larga.

Versiones de lenguaje de consulta admitidas en esta versión

Antes de actualizar un clúster de base de datos a la versión 1.1.1.0.R6, asegúrese de que el proyecto sea compatible con estas versiones de lenguaje de consulta:

  • Compatible con la primera versión de Gremlin: 3.5.2

  • Compatible con la última versión de Gremlin: 3.5.4

  • Versión de openCypher: Neptune-9.0.20190305-1.0

  • Versión de SPARQL: 1.1

Rutas de actualización a la versión 1.1.1.0.R6 del motor

El clúster se actualizará automáticamente a esta versión de parche durante el siguiente periodo de mantenimiento si está ejecutando la versión 1.1.1.0 del motor.

Actualización a esta versión

importante

La actualización a esta versión del motor desde una versión anterior a 1.1.0.0 también desencadena una actualización del sistema operativo en todas las instancias del clúster de base de datos. Dado que las solicitudes de escritura activas que se produzcan durante la actualización del sistema operativo no se procesarán, debe pausar todas las cargas de trabajo de escritura en el clúster que se va a actualizar, incluidas las cargas masivas de datos, antes de iniciar la actualización.

Al inicio de la actualización, Neptune genera una instantánea con un nombre que se compone de preupgrade seguido de un identificador generado automáticamente en función de la información del clúster de base de datos. No se le cobrará por esta instantánea y podrá utilizarla para restaurar el clúster de base de datos si se produce algún problema durante el proceso de actualización.

Cuando se complete la propia actualización del motor, la nueva versión del motor estará disponible brevemente en el sistema operativo anterior, pero en menos de cinco minutos todas las instancias del clúster comenzarán simultáneamente a actualizar el sistema operativo. El clúster de base de datos no estará disponible en este momento durante aproximadamente seis minutos. Puede reanudar cargas de trabajo de escritura una vez finalizada la actualización.

Este proceso genera los siguientes eventos:

  • Mensajes de eventos por clúster:

    • Upgrade in progress: Creating pre-upgrade snapshot [preupgrade-(autogenerated snapshot ID)]

    • Database cluster major version has been upgraded

  • Mensajes de eventos por instancia:

    • Applying off-line patches to DB instance

    • DB instance shutdown

    • Finished applying off-line patches to DB instance

    • DB instance restarted

Si un clúster de base de datos ejecuta una versión de motor desde la que existe una ruta de actualización a esta versión, puede actualizarse ahora. Puede actualizar cualquier clúster que cumpla los requisitos mediante las operaciones del clúster de base de datos de la consola o mediante el SDK. El siguiente comando de la CLI actualizará inmediatamente un clúster que cumpla los requisitos:

Para Linux, OS X o Unix:

aws neptune modify-db-cluster \ --db-cluster-identifier (your-neptune-cluster) \ --engine-version 1.1.1.0 \ --apply-immediately

Para Windows:

aws neptune modify-db-cluster ^ --db-cluster-identifier (your-neptune-cluster) ^ --engine-version 1.1.1.0 ^ --apply-immediately

Las actualizaciones se aplican a todas las instancias en un clúster de base de datos simultáneamente. Una actualización requiere un reinicio de la base de datos en esas instancias, por lo que se experimentará un tiempo de inactividad que oscila entre 20-30 segundos y varios minutos, tras el cual se puede reanudar el uso del clúster de base de datos.

Realice siempre una prueba antes de realizar la actualización

Cuando se publique una nueva versión principal o secundaria del motor de Neptune, pruebe siempre las aplicaciones de Neptune en ella antes de actualizar. Incluso en una actualización secundaria podría haber nuevas características o comportamientos que podrían afectar al código.

Comience por comparar las páginas de notas de la versión actual con las de la versión de destino para ver si hay cambios en las versiones del lenguaje de consulta u otros cambios importantes.

La mejor forma de probar una nueva versión antes de actualizar el clúster de base de datos de producción es clonar el clúster de producción para que el clon ejecute la nueva versión del motor. A continuación, puede ejecutar consultas en el clon sin que eso afecte al clúster de base de datos de producción.

Cree siempre una instantánea manual antes de realizar la actualización

Antes de realizar una actualización, se recomienda crear siempre una instantánea manual del clúster de base de datos. Una instantánea automática solo ofrece protección a corto plazo, mientras que una instantánea manual está disponible hasta que la elimine explícitamente.

En algunos casos, Neptune crea una instantánea manual para usted como parte del proceso de actualización, pero no debe confiar en eso y crear su propia instantánea manual.

Cuando tenga la seguridad de que no necesitará revertir el clúster de base de datos al estado anterior a la actualización, puede eliminar de forma explícita la instantánea manual que ha creado, así como la instantánea manual que Neptune podría haber creado. Si Neptune crea una instantánea manual, tendrá un nombre que empieza por preupgrade, seguido del nombre del clúster de base de datos, la versión del motor de origen, la versión del motor de destino y la fecha.

nota

Si intenta realizar la actualización mientras hay una acción pendiente en proceso, es posible que se produzca un error como el siguiente:

We're sorry, your request to modify DB cluster (cluster identifier) has failed. Cannot modify engine version because instance (instance identifier) is running on an old configuration. Apply any pending maintenance actions on the instance before proceeding with the upgrade.

Si se produce este error, espere a que finalice la acción pendiente o active inmediatamente un periodo de mantenimiento para que se complete la actualización anterior.

Para obtener más información sobre la actualización de la versión del motor, consulte Mantenimiento del clúster de base de datos de Amazon Neptune. Si tiene alguna duda, el equipo de AWS Support está disponible en los foros de la comunidad y a través de AWS Premium Support.