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 del vehículo con VIN 1N4AL11D75C109151, puede consultar el historial de todos sus propietarios registrados y cualquier otro campo actualizado. Puede ver todas las revisiones de un documento que ha insertado, actualizado y eliminado consultando elHistorial de funciones.

La función de historial devuelve revisiones de lavista comprometidade 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 en qué transacción se ha confirmado.

En este paso, consulta el historial de revisiones de un documento en elVehicleRegistrationtabla en elvehicle-registrationlibro mayor.

Para ver el historial de revisiones

  1. Abra la consola de Amazon QLDB enhttps://console.aws.amazon.com/qldb.

  2. En el panel de navegación, elijaEditor PartiQL.

  3. Elija el iconovehicle-registrationlibro mayor.

  4. Para consultar el historial de un documento, empiece por encontrar su únicoid. Además de consultar la vista confirmada, otra forma de obtener un documentoides utilizar elBYpalabra clave 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 ID de documento.

    En la ventana del editor de consultas, escriba la siguiente instrucción y elijaEjecución de.

    SELECT r_id FROM VehicleRegistration AS r BY r_id WHERE r.VIN = '1N4AL11D75C109151'
  5. A continuación, puede utilizar estoidvalor para consultar la función de historial. Especifique la siguiente instrucción y seleccioneEjecución de. Asegúrese de sustituir laidvalor con su propio ID de documento según corresponda.

    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

    A efectos de este tutorial, esta consulta de historial devuelve todas las revisiones del ID de documentoADR2LQq48kB9neZDupQrMm. Sin embargo, como práctica recomendada, califica una consulta de historial con un ID de documento y un intervalo de fechas (hora de inicio y hora de finalización).

    En QLDB, cadaSELECTla consulta se procesa en una transacción y está sujeta alímite de tiempo de espera de transacciones. Las consultas de historial que incluyen una hora de inicio y hora de finalización obtienen el beneficio de la calificación del intervalo de fechas. Para obtener más información, consulte Historial de funciones.

    La función de historial devuelve documentos en el mismo esquema que la vista confirmada. En este ejemplo se proyectan los datos de registro de vehículos modificados. El resultado debería tener 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 de historial no siempre devuelva revisiones de documentos en orden secuencial.

    Revise el resultado y confirme que los cambios reflejan lo que hiciste enPaso 4: Modificación de documentos de un libro mayor.

  6. A continuación, puede inspeccionar los metadatos del documento de cada revisión. Especifique la siguiente instrucción y seleccioneEjecución de. De nuevo, asegúrese de sustituir laidvalor con su propio ID 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 tener 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 por qué transacción. A partir de estos datos, puede inferir lo siguiente:

    • El documento se identifica de forma exclusiva por el sistema asignadoid: ADR2LQq48kB9neZDupQrMm. Este es un identificador único universal (UUID) que se representa en una cadena codificada en Base62.

    • LatxTimemuestra que la revisión inicial del documento (versión0) se creó en2019-05-23T19:20:360d-3Z.

    • Cada transacción posterior crea una nueva revisión con el mismo documentoid, un número de versión incrementado y una actualizacióntxIdytxTime.

Para verificar una revisión de documentos criptográficamente en elvehicle-registrationcontabilidad, siga conPaso 6: Verificación de un documento en un libro mayor.