Cómo solicitar la exportación de una diario en QLDB - 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.

Cómo solicitar la exportación de una diario en QLDB

Amazon QLDB proporciona una API para solicitar la exportación de sus bloques de diario para un intervalo de fechas y horas específico y para un destino de bucket de Amazon S3 específico. Un trabajo de exportación del diario puede escribir los objetos de datos en el formato de texto o binario de Amazon Ion, o en el formato de texto JSON Lines. Puede usar el AWS Management Console, un AWS SDK o el AWS Command Line Interface (AWS CLI) para crear un trabajo de exportación.

AWS Management Console

Siga estos pasos para enviar una solicitud de exportación de diarios en QLDB mediante la consola de QLDB.

Solicitud de una exportación (consola)
  1. Inicie sesión en la consola AWS Management Console de Amazon QLDB y ábrala en https://console.aws.amazon.com/qldb.

  2. En el panel de navegación, elija Exportar.

  3. Elija Crear trabajo de exportación.

  4. En la página Crear trabajo de exportación, introduzca los siguientes ajustes de exportación:

    • Libro mayor: el libro mayor cuyos bloques de diario desea exportar.

    • Fecha y hora de inicio: la marca horaria de inicio incluida en la hora universal coordinada (UTC) del rango de bloques de diario que se van a exportar. Esta marca de tiempo debe ser anterior a la Fecha y hora de finalización. Si proporciona una marca de tiempo de inicio anterior a la CreationDateTime del libro mayor, QLDB la asigna por defecto a la CreationDateTime del libro mayor.

    • Fecha y hora de finalización: la marca de tiempo de finalización (UTC) exclusiva del rango de bloques de diario que se va a exportar. Estas fecha y hora no pueden estar en el futuro.

    • Destino de los bloques de diario: el nombre del prefijo y el bucket de Amazon S3 en los que el trabajo de exportación escribe los objetos de datos. Utilice el siguiente formato de URI de Amazon S3.

      s3://DOC-EXAMPLE-BUCKET/prefix/

      Debe especificar un nombre de bucket de S3 y un nombre de prefijo opcional para los objetos de salida. A continuación, se muestra un ejemplo.

      s3://DOC-EXAMPLE-BUCKET/journalExport/

      Tanto el nombre como el prefijo del bucket deben cumplir con las normas y convenciones de nomenclatura de Amazon S3. Para obtener más información sobre la nomenclatura de buckets, consulte Restricciones y limitaciones de los buckets en la Guía para desarrolladores de Amazon S3. Para obtener más información sobre prefijos de nombre de clave, consulte Clave y metadatos de objetos.

      nota

      No se admiten exportaciones entre regiones. El bucket de Amazon S3 especificado debe estar en el mismo lugar Región de AWS que su libro mayor.

    • Cifrado S3: la configuración de cifrado que utiliza su trabajo de exportación para escribir datos en un bucket de Amazon S3. Para obtener más información sobre opciones de cifrado del servidor en Amazon S3, consulte Protección de datos mediante cifrado del servidor en la Guía para desarrolladores de Amazon S3.

      • Cifrado predeterminado del bucket: utilice la configuración de cifrado predeterminada del bucket de Amazon S3 especificado.

      • AES-256: utilice el cifrado del servidor con claves administradas por Amazon S3 (SSE-S3).

      • AWS-KMS: utilice el cifrado del lado del servidor con claves AWS KMS administradas (SSE-KMS).

        Si elige este tipo junto con la opción Elegir otra AWS KMS key, también debe especificar una clave KMS de cifrado simétrico en el siguiente formato de nombre de recurso de Amazon (ARN).

        arn:aws:kms:aws-region:account-id:key/key-id
    • Acceso al servicio: el rol de IAM que concede permisos de escritura de QLDB en su bucket de Amazon S3. Si corresponde, el rol de IAM también debe conceder permisos de QLDB para usar su clave de KMS.

      Para transferir un rol a QLDB al solicitar una exportación de diario, debe tener permisos para realizar la acción iam:PassRole en el recurso de rol de IAM.

      • Crear y utilizar un nuevo rol de servicio: deje que la consola cree un nuevo rol para usted con los permisos necesarios para el bucket de Amazon S3 especificado.

      • Utilizar un rol de servicio existente: para obtener información sobre cómo crear manualmente este rol en IAM, consulte Permisos de exportación.

    • Formato de salida: el formato de salida de los datos de su diario exportados

      • Ion en texto: representación textual (predeterminada) de Amazon Ion

      • Ion binario: representación binaria de Amazon Ion

      • JSON: formato de texto JSON delimitado por saltos de línea

        Si elige JSON, QLDB convierte de forma descendente los datos del diario de Ion a JSON en los objetos de datos exportados. Para obtener más información, consulte Conversión descendente a JSON.

  5. Cuando esté conforme con los ajustes, elija Crear.

    El tiempo que tarda en finalizar el trabajo de exportación varía según el tamaño de los datos. Si la solicitud se envía correctamente, la consola vuelve a la página principal de Exportación y muestra los trabajos de exportación con su estado actual.

  6. Puede ver los objetos de exportación en la consola de Amazon S3.

    Abra la consola de Amazon S3 en https://console.aws.amazon.com/s3.

    Para obtener más información sobre el formato de estos objetos de salida, consulte Salida de exportación de diarios en QLDB.

nota

Los trabajos de exportación caducan siete días después de completarse. Para obtener más información, consulte Caducidad del trabajo de exportación.

API DE QLDB

También puede solicitar la exportación de una revista mediante la API de Amazon QLDB con AWS un SDK o el. AWS CLI La API de QLDB ofrece las siguientes operaciones para usarlas en los programas de aplicación:

  • ExportJournalToS3: exporta el contenido del diario dentro de un intervalo de fechas y horas de un libro mayor determinado a un bucket de Amazon S3 específico. Un trabajo de exportación escribe los objetos de datos como objetos en el formato de texto o binario de Amazon Ion, o en el formato de texto de líneas JSON.

  • DescribeJournalS3Export: devuelve información detallada sobre un trabajo de exportación de diario. El resultado incluye su estado actual, la hora de creación y los parámetros de la solicitud de exportación original.

  • ListJournalS3Exports: devuelve una lista de las descripciones de los trabajos de exportación de diarios de todos los libros mayores asociados a la Cuenta de AWS y a la región actuales. El resultado de cada descripción del trabajo de exportación incluye los mismos detalles que devuelve DescribeJournalS3Export.

  • ListJournalS3ExportsForLedger: devuelve una lista de las descripciones de los trabajos de exportación de diarios de un libro mayor determinado. El resultado de cada descripción del trabajo de exportación incluye los mismos detalles que devuelve DescribeJournalS3Export.

Para obtener una descripción completa de estas operaciones de API, consulte la Referencia de la API de Amazon QLDB.

Para obtener información sobre la exportación de datos de revistas mediante el AWS CLI, consulte la Referencia de AWS CLI comandos.

Aplicación de ejemplo (Java)

Para ver ejemplos de operaciones de exportación básicas en código Java, consulte el GitHub repositorio amazon-qldb-dmv-sampleaws-samples/ -java. Para obtener instrucciones acerca de cómo descargar e instalar esta aplicación de ejemplo, consulte Instalación de la aplicación de ejemplo Java de Amazon QLDB. Antes de solicitar una exportación, siga los pasos del 1 al 3 de Tutorial de Java para crear un libro mayor de muestra y cargarlo con datos de ejemplo.

El código del tutorial de las siguientes clases proporciona ejemplos de cómo crear una exportación, comprobar el estado de una exportación y procesar el resultado de una exportación.

Clase Descripción
ExportJournal Exporta los bloques de diario del libro mayor de ejemplo vehicle-registration para un intervalo de fechas que va desde hace 10 minutos hasta ahora. Escribe los objetos de salida en un bucket de S3 específico o crea un bucket único si no se proporciona ninguno.
DescribeJournalExport Describe un trabajo de exportación de diarios de una exportId específica en el libro mayor vehicle-registration de ejemplo.
ListJournalExports Devuelve una lista de las descripciones de los trabajos de exportación de diarios del libro mayor vehicle-registration de ejemplo.
ValidateQldbHashChain Valida la cadena de hash del libro mayor vehicle-registration de ejemplo utilizando una exportId dada. Si no se proporciona, solicita una nueva exportación para utilizarla en la validación de la cadena de hash.

Caducidad del trabajo de exportación

Los trabajos de exportación de diarios finalizados están sujetos a un período de retención de 7 días. Una vez transcurrido este límite, se eliminan automáticamente de forma permanente. Este período de caducidad es un límite codificado y no se puede cambiar.

Después de que un trabajo de exportación completado se haya eliminado, ya no podrá utilizar la consola de QLDB ni las siguientes operaciones de API para recuperar metadatos sobre el trabajo:

  • DescribeJournalS3Export

  • ListJournalS3Exports

  • ListJournalS3ExportsForLedger

Sin embargo, esta caducidad no afecta a los datos exportados en sí mismos. Todos los metadatos se conservan en los archivos de manifiesto que se escriben en las exportaciones. Esta caducidad está diseñada para proporcionar una experiencia más fluida a las operaciones de la API que enumeran los trabajos de exportación de diarios. QLDB elimina los trabajos de exportación antiguos para garantizar que solo vea las exportaciones recientes sin tener que analizar múltiples páginas de trabajos.