Paso 5: ver el historial de revisiones de un documento - Amazon Quantum Ledger Database (Amazon QLDB)

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.

Paso 5: ver el historial de revisiones de un documento

Tras modificar los datos de registro de un vehículo con VIN 1N4AL11D75C109151, puede consultar el historial de todos sus propietarios registrados y cualquier otro campo actualizado. Puede ver todas las revisiones del documento que insertó, actualizó y eliminó enviando una consulta al Función de historial integrado.

La función de historial devuelve las revisiones de la vista confirmada de la tabla, que incluye los datos de la aplicación y los metadatos asociados. Los metadatos muestran exactamente cuándo se realizó cada revisión, en qué orden y qué transacción la confirmó.

En este paso, consulta el historial de revisiones de un documento de la tabla VehicleRegistration del libro mayor vehicle-registration.

Para ver el historial de revisiones
  1. Abra la consola de Amazon QLDB en https://console.aws.amazon.com/qldb.

  2. En el panel de navegación, elija Editor PartiQL.

  3. Elija el libro mayor vehicle-registration.

  4. Para consultar el historial de un documento, comience por buscar su id único. Además de consultar la vista confirmada, otra forma de obtener el id de un documento consiste en utilizar la palabra clave BY en la vista de usuario predeterminada de la tabla. Para obtener más información, consulte Uso de la cláusula BY para consultar el identificador del documento.

    En la ventana del editor de consultas, introduzca la siguiente instrucción, y a continuación elija Ejecutar.

    SELECT r_id FROM VehicleRegistration AS r BY r_id WHERE r.VIN = '1N4AL11D75C109151'
  5. A continuación, puede utilizar este valor id para consultar la función de historial. Introduzca la siguiente instrucción y, a continuación, seleccione Ejecutar. Asegúrese de sustituir el valor id por su propio ID de documento, según proceda.

    SELECT h.data.VIN, h.data.City, h.data.Owners FROM history(VehicleRegistration) AS h WHERE h.metadata.id = 'ADR2LQq48kB9neZDupQrMm' --replace with your id
    nota

    Para los fines de este tutorial, esta consulta de historial devuelve todas las revisiones del identificador del documento ADR2LQq48kB9neZDupQrMm. Como práctica recomendada, califique una consulta de historial con un identificador de documento y un intervalo de fechas (hora de inicio y hora de finalización).

    En QLDB, cada consulta SELECT se procesa en una transacción y está sujeta a un límite de tiempo de espera de la transacción. Las consultas de historial que incluyen una hora de inicio y una hora de finalización se benefician de la calificación por intervalo de fechas. Para obtener más información, consulte Función de historial.

    La función de historial devuelve documentos en el mismo esquema que la vista confirmada. En este ejemplo se proyectan los datos de registro del vehículo modificados. El resultado debería parecerse al siguiente:

    VIN Ciudad Propietarios
    "1N4AL11D75C109151" "Seattle" {PrimaryOwner:{PersonId:""},SecondaryOwners:[]}
    "1N4AL11D75C109151" "Seattle" {PrimaryOwner:{PersonId:"294jJ3YUoH1IEEm8GSabOs"}, SecondaryOwners:[]}
    "1N4AL11D75C109151" "Everett" {PrimaryOwner:{PersonId:"7NmE8YLPbXc0IqesJy1rpR"}, SecondaryOwners:[]}
    "1N4AL11D75C109151" "Everett" {PrimaryOwner:{PersonId:"7NmE8YLPbXc0IqesJy1rpR"}, SecondaryOwners:[{PersonId:"5Ufgdlnj06gF5CWcOIu64s"}]}
    nota

    Es posible que la consulta del historial no siempre devuelva las revisiones de los documentos en orden secuencial.

    Revise el resultado y confirme que los cambios reflejan lo que hizo en Paso 4: modificar los documentos de un libro mayor.

  6. A continuación, puede inspeccionar los metadatos del documento de cada revisión. Introduzca la siguiente instrucción y, a continuación, seleccione Ejecutar. De nuevo, asegúrese de reemplazar el valor id por su propio identificador de documento, según corresponda.

    SELECT VALUE h.metadata FROM history(VehicleRegistration) AS h WHERE h.metadata.id = 'ADR2LQq48kB9neZDupQrMm' --replace with your id

    El resultado debería parecerse al siguiente:

    version id txTime txId
    0 "ADR2LQq48kB9neZDupQrMm" 2019-05-23T19:20:360d-3Z "FMoVdWuPxJg3k466Iz4i75"
    1 "ADR2LQq48kB9neZDupQrMm" 2019-05-23T21:40:199d-3Z "KWByxe842Xw8DNHcvARPOt"
    2 "ADR2LQq48kB9neZDupQrMm" 2019-05-23T21:44:432d-3Z "EKwDOJRwbHpFvmAyJ2Kdh9"
    3 "ADR2LQq48kB9neZDupQrMm" 2019-05-23T21:49:254d-3Z "96EiZd7vCmJ6RAvOvTZ4YA"

    Estos campos de metadatos proporcionan detalles sobre cuándo se modificó cada elemento y mediante qué transacción. A partir de estos datos, puede comprobar lo siguiente:

    • El documento se identifica de forma única por su id asignado por el sistema: ADR2LQq48kB9neZDupQrMm. Se trata de un identificador único universal (UUID) que se representa en una cadena codificada en Base62.

    • txTime muestra que la revisión inicial del documento (versión 0) se creó en 2019-05-23T19:20:360d-3Z.

    • Cada transacción posterior crea una nueva revisión con el mismo id de documento, un número de versión incrementado y un txId y txTime actualizados.

Para verificar criptográficamente la revisión de un documento en el libro mayor vehicle-registration, continúe con Paso 6: Verificar un documento en un libro mayor.