

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.

# La entrega de las exportaciones
<a name="dataexports-export-delivery"></a>

En las siguientes secciones, encontrará información sobre la entrega de las exportaciones.
+ **Estructura del directorio principal de S3 para la exportación:** cómo se estructuran los datos de exportación en el directorio de S3 al que se envía la exportación.
+ **Actualización de las exportaciones:** con qué frecuencia se actualiza la exportación en el directorio de S3.
+ **Sobrescritura de la exportación y creación de una nueva:** cómo cambia el envío de exportación al sobrescribirlo y cómo se crean nuevas preferencias de envío.
+ **Nombres y fragmentos de los archivos de datos de exportación:** cómo se nombran los archivos de exportación (gzip/csv o Parquet).

## Estructura del directorio principal de S3 para la exportación
<a name="export-s3-parent-directory-structure"></a>

Cada exportación envía los datos de la consulta a S3 (como uno o más gzip/csv archivos o archivos Parquet) y a un archivo de `Manifest.json` metadatos que contiene información sobre la definición de exportación en el momento en que se ejecutó la exportación.

**Datos**  
Los datos resultantes de la consulta de exportación se almacenan en la siguiente ruta de archivo S3:  
`s3://<bucket-name>/<prefix>/<export-name>/data/<partition>/`  
La partición corresponde a la tabla que se está consultando. En el caso de CUR 2.0, la partición corresponde al “período de facturación” de una exportación de CUR 2.0 determinada.  
`prefix`: el prefijo del archivo S3 que se asigna a la exportación.  
`export-name`: el nombre que usted le asigna a la exportación.  
`partition`: la partición describe cómo se divide una sola tabla en tablas independientes para la entrega. Para CUR 2.0, la partición corresponde al “período de facturación” en el formato `BILLING_PERIOD=YYYY-MM`. Por ejemplo, la partición de noviembre de 2023 es 2023-11.  
A continuación, se muestra un ejemplo de una ruta de archivo S3:  
`s3://my-data-export-s3-bucket/my-cur-files/business_group_a_cur/data/BILLING_PERIOD=2023-11`

**Metadatos**  
El archivo de metadatos `Manifest.json` de la consulta se almacena en la siguiente ruta de archivo S3:  
`s3://<bucket-name>/<prefix>/<export-name>/metadata/<partition>/<export-name>-Manifest.json`  
El archivo `Manifest.json` se actualiza cada vez que se actualiza la exportación. Se crea un nuevo archivo `Manifest.json` para cada nueva partición creada por la exportación. En el caso de CUR 2.0, esto significa que se genera un nuevo archivo `Manifest.json` cuando comienza un nuevo periodo de facturación.  
Los archivos de manifiesto contienen la siguiente información:  
+ Todas las columnas que se incluyen en la exportación.
+ Una lista de los archivos de exportación y su ruta de acceso. Le recomendamos que lea esta lista de forma programática para identificar qué archivos se van a ingerir.
+ El periodo de tiempo cubierto por la exportación.
+ Una sección llamada así `additionalOutputFiles` enumera los archivos adicionales que se entregan si tiene la integración de Athena o Amazon Redshift.
El `Manifest.json` solo se entrega una vez que todos los archivos de datos de exportación se hayan entregado a S3.

## Actualización de las exportaciones
<a name="export-refreshing"></a>

Exportación de datos actualiza las exportaciones cada vez que se actualizan los datos de origen. En el caso de CUR 2.0, esto ocurre al menos una vez al día. El período de facturación actual (partición) se actualiza hasta que finalice el período de facturación, momento en el que comienzan las entregas del siguiente período de facturación. Las entregas del siguiente período de facturación solo contienen los cargos y los datos de facturación de ese período de facturación. Una vez finalizado el período de facturación, AWS puede actualizar la entrega de exportación del período de facturación anterior dentro de las dos primeras semanas posteriores a su finalización.

## Sobrescritura de la exportación y creación de una nueva
<a name="export-overwriting-create-new"></a>

Al crear una exportación, puede elegir entre crear nuevos archivos de exportación o sobrescribir los archivos de exportación existentes con cada actualización.

**Crear nueva**  
La creación de nuevos archivos de exportación consume más espacio de almacenamiento en S3 porque se conservan todas las actualizaciones de exportación. Al sobrescribir los archivos de exportación anteriores, se utiliza menos espacio de almacenamiento en S3, ya que solo se conserva la última versión de cada actualización del período de facturación.  
En el modo “crear nueva”, los archivos de exportación se envían a la siguiente ruta de S3:  
`s3://<bucket-name>/<prefix>/<export-name>/data/<partition>/<timestamp>-<execution-id>`  
`timestamp` es la fecha y la hora en que se ejecutó la exportación. `execution-id` es el ID único asignado a la ejecución.  
En el caso de “crear nueva”, se entregan dos archivos `Manifest.json` con cada ejecución de exportación. Uno se guarda en el directorio `metadata/<partition>/<timestamp>-<execution-id>` y el otro se sobrescribe en el directorio `metadata/<partition>`. El manifiesto del directorio `metadata/<partition>` siempre representa la actualización más reciente, y sus datos se utilizan para identificar la ubicación de los archivos de exportación actualizados más recientemente.

**Sobrescribir**.  
La sobrescritura solo se aplica a las actualizaciones de la misma partición (es decir, el periodo de facturación). Una vez que comienza un nuevo período de facturación, la exportación crea un nuevo directorio S3 con un nombre basado en la última partición o período de facturación y comienza a entregar allí la nueva partición de exportación. La exportación de la partición anterior no se sobrescribe a menos que se actualicen los datos de esa partición específica.  
En el modo “sobrescribir”, los archivos de exportación se envían a la siguiente ruta de S3:  
`s3://<bucket-name>/<prefix>/<export-name>/data/<partition>/`  
Los archivos de exportación de este directorio de archivos se sobrescriben con cada entrega de la misma partición (es decir, período de facturación).  
Los archivos de exportación se entregan en varios «fragmentos» (archivos separados gzip/csv o archivos tipo Parquet) cuando la exportación es lo suficientemente grande. Si el tamaño de la exportación disminuye alguna vez durante el mes (debido a un cambio en la consulta o a una corrección de los datos), es posible que se necesiten menos fragmentos para entregar la actualización de la exportación. En este caso, Exportación de datos sobrescribe los fragmentos adicionales de la última actualización con datos vacíos.  
Para la sobrescritura, se entrega un archivo `Manifest.json` con cada ejecución de exportación. Se almacena en el directorio `metadata/<partition>` y se sobrescribe con cada actualización.

## Nombres y fragmentos de archivos de datos de exportación
<a name="export-data-file-names"></a>

Las exportaciones muestran los resultados de una ejecución en un solo archivo (gzip/csv o Parquet) o en varios «fragmentos» (archivos separados gzip/csv o archivos Parquet) cuando la exportación es lo suficientemente grande.

Las exportaciones se denominan de la siguiente manera según el formato de gzip/csv archivo:

`<export-name>-<chunk-number>.csv.gz`

Las exportaciones reciben el siguiente nombre para el formato de archivo Parquet:

`<export-name>-<chunk-number>.snappy.parquet`

Los números fragmentados siempre tienen cinco dígitos. Los números fragmentados se enumeran empezando por `00001`.

**nota**  
Si eligió la opción de integración de informes de Athena o Redshift al crear CUR 2.0, la siguiente sección sobre las integraciones de Redshift y Athena podría serle relevante.

## Integración con Amazon Redshift
<a name="dataexports-redshift-specifications"></a>

Si ha elegido la opción de integración con Amazon Redshift, AWS también crea y entrega un archivo con los comandos SQL que necesita para cargar el informe en Amazon Redshift. Para cargar una exportación de datos a Amazon Redshift, siga estos pasos.

**Para cargar una exportación de datos a Amazon Redshift**

1. Cree un clúster de Amazon Redshift. Para obtener más información, consulte [Creación de un clúster](https://docs.aws.amazon.com/redshift/latest/mgmt/managing-clusters-console.html#create-cluster) en la *Guía de administración de Amazon Redshift*.

1. Inicie sesión en la consola AWS de administración y abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Navegue hasta la ubicación de Amazon S3 en la que almacena su exportación AWS de datos.

1. Descarga el `RedshiftCommands.sql` archivo que está almacenado junto con el archivo de manifiesto en S3 y el archivo auxiliar de Redshift en:

   `<bucket>/<prefix>/<export-name>/metadata/<partition>/<export-name>-RedshiftCommands.sql`

1. En el `copy` comando, `<AWS_ROLE>` sustitúyalo por el ARN de un rol de IAM que tenga permisos para acceder al bucket de Amazon S3 en el que almacenas tus AWS datos de exportación.

1. `<S3_BUCKET_REGION>`Sustitúyalo por la región en la que se encuentra su bucket de Amazon S3. Por ejemplo, `us-east-1`.

1. Utilice un cliente SQL para conectarlo al clúster. Para obtener más información, consulte [Acceso a clústeres y bases de datos de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/using-rs-tools.html) en la *Guía de administración de Amazon Redshift*.

1. Copie los comandos SQL desde el archivo `RedshiftCommands.sql` a su cliente SQL en el siguiente orden:

   1. **create table**: crea una tabla de Amazon Redshift con un esquema personalizado para que coincida con su informe.

   1. **copy**: utiliza la función de IAM proporcionada para cargar los archivos de exportación de AWS datos de S3 a Amazon Redshift.

   1. **crear tabla de etiquetas**: crea una tabla que le permite asignar etiquetas definidas a las etiquetas AWS definidas por el usuario.

   1. **insertar**: inserta las etiquetas definidas por el usuario en la tabla de etiquetas.

1. Una vez copiados todos los datos de la exportación de AWS datos a Amazon Redshift, puede consultarlos mediante SQL. Para obtener más información, consulte [Amazon Redshift SQL](https://docs.aws.amazon.com/redshift/latest/dg/c_redshift-sql.html) en la Guía para desarrolladores de bases de datos de *Amazon Redshift*.

## Integración de Amazon Athena
<a name="dataexports-athena-specifications"></a>

Si ha elegido la opción de integración con Amazon Athena, AWS también crea y entrega varios archivos para ayudarle a configurar todos los recursos que necesita. AWS proporciona una CloudFormation plantilla, un archivo SQL para crear la tabla de Athena manualmente y una carpeta de estado para comprobar el estado de actualización de la exportación. Estos archivos utilizan las siguientes convenciones de nomenclatura.

CloudFormation plantilla para configurar los recursos de Athena:

`<prefix>/<export-name>/crawler-cfn.yml`

Archivo SQL para crear la tabla de Athena manualmente:

`<prefix>/<export-name>/metadata/<partition>/<export-name>-create-table.sql`

Exporte la carpeta de estado de actualización:

`<prefix>/<export-name>/execution_status/`

### Configuración de Athena mediante plantillas CloudFormation
<a name="dataexports-athena-cfn"></a>

**Para usar la plantilla Athena CloudFormation**

1. Navegue hasta el `crawler-cfn.yml` archivo de su bucket de S3 y seleccione el botón **Copiar** situado junto a la URL del objeto.

1. Abra la CloudFormation consola en [https://console.aws.amazon.com/cloudformation/](https://console.aws.amazon.com/cloudformation/).

1. Si nunca la ha usado CloudFormation antes, elija **Crear nueva pila**. De lo contrario, seleccione **Crear pila**.

1. En **Preparar plantilla**, selecciona **Elegir una plantilla existente**.

1. En **Especificar plantilla**, en **Fuente de plantilla**, elija **URL de Amazon S3**.

1. Pegue la URL del objeto S3 en el cuadro **URL de Amazon S3**.

1. Elija **Siguiente**.

1. En **Nombre de pila**, escriba un nombre para la plantilla y elija **Siguiente**.

1. En la parte inferior de la página, seleccione **I acknowledge that AWS CloudFormation might create IAM resources**.

1. Seleccione **Siguiente** y, a continuación, seleccione **Enviar**.

**Para actualizar la plantilla Athena CloudFormation existente**

1. Abra la consola de Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. En la lista de depósitos, elija el depósito en el que desee recibir la exportación de AWS datos.

1. Elija el prefijo de la ruta del informe (`your-report-path-prefix/`) y, a continuación, elija el nombre del informe ()`your-report-name/`.

1. Elija el archivo `.yml` de plantilla y pulse el botón **Copiar** situado junto a la URL del objeto.

1. Abra la CloudFormation consola en [https://console.aws.amazon.com/cloudformation/](https://console.aws.amazon.com/cloudformation/).

1. Selecciona la pila que se creó anteriormente y, a continuación, selecciona **Actualizar pila** > **Realizar una actualización directa**.

1. En **Preparar plantilla**, selecciona **Reemplazar plantilla existente**.

1. En **Fuente de la plantilla**, selecciona **URL de Amazon S3**.

1. Pegue la URL del objeto S3 en el cuadro **URL de Amazon S3**.

1. Elija **Siguiente**.

1. En la página **Especificar los detalles de la pila**, modifique los detalles y, a continuación, seleccione **Siguiente**.

1. En la parte inferior de la página, seleccione **I acknowledge that AWS CloudFormation might create IAM resources**.

1. Seleccione **Siguiente** y, a continuación, seleccione **Enviar**.

### Configuración manual de Athena
<a name="dataexports-athena-manual"></a>

Si no quieres usar la CloudFormation plantilla, puedes crear tu tabla de Athena manualmente con el archivo SQL proporcionado.

**Para crear una tabla Athena manualmente**

1. El `create-table.sql` archivo para su exportación se encuentra en:

   `<bucket>/<prefix>/<export-name>/metadata/BILLING_PERIOD=YYYY-MM/<export-name>-create-table.sql`

1. En el panel de **consulta Nueva consulta 1**, pegue el código SQL del archivo. Para `<database name>.<table name>` ello, utilice el nombre de la base de datos y la tabla de la primera línea del SQL.

1. Ejecute lo siguiente para crear la base de datos:

   `CREATE DATABASE <database name>`

Para cargar una nueva partición de informe, ejecute el siguiente código SQL:

`ALTER TABLE `<database name>`.<table name> ADD PARTITION (billing_period='YYYY-MM') LOCATION 's3://<bucket>/<prefix>/<export-name>/data/BILLING_PERIOD=YYYY-MM/';`donde el período de facturación YYYY-MM se expresa en un año de 4 dígitos y un mes de 2 dígitos. Por ejemplo, 2026-05.

Para obtener más información, consulte [Consulta de informes de costos y uso con Amazon Athena](https://docs.aws.amazon.com/cur/latest/userguide/cur-query-athena.html).

## Resumen
<a name="export-summary"></a>

**Exportar los nombres de archivos de datos con el directorio para crear una nueva exportación**  
Parquet:  
`s3://<bucket-name>/<prefix>/<export-name>/data/<partition>/<timestamp>-<execution-id>/<export-name>-<chunk-number>.snappy.parquet`  
gzip/csv:  
`s3://<bucket-name>/<prefix>/<export-name>/data/<partition>/<timestamp>-<execution-id>/<export-name>-<chunk-number>.csv.gz`

**Exportar los nombres de archivos de datos con el directorio para sobrescribir**  
Parquet:  
`s3://<bucket-name>/<prefix>/<export-name>/data/<partition>/<export-name>-<chunk-number>.snappy.parquet`  
gzip/csv:  
`s3://<bucket-name>/<prefix>/<export-name>/data/<partition>/<export-name>-<chunk-number>.csv.gz`

**Nombres de archivos de manifiesto con el directorio para crear una nueva exportación**  
El modo “crear nueva” entrega `Manifest.json` en dos ubicaciones.  
La primera ubicación se encuentra en una carpeta que representa una ejecución específica de una exportación (cuyo nombre está determinado por `timestamp` y `execution-id`). Este manifiesto corresponde a esa ejecución específica. La ruta del archivo es la siguiente:  
`s3://<bucket-name>/<prefix>/<export-name>/metadata/<partition>/<timestamp>-<execution-id>`  
La segunda ubicación está en una carpeta de particiones que contiene todas las ejecuciones. Este manifiesto es el mismo archivo de la última ejecución de la exportación. Puede leer este manifiesto para identificar las rutas exactas de todos los archivos de exportación recientes. La ruta del archivo es la siguiente:  
`s3://<bucket-name>/<prefix>/<export-name>/metadata/<partition>/Manifest.json`

**Nombres de archivos de manifiesto con el directorio para sobrescribir**  
El modo “sobrescribir” entrega `Manifest.json` a una ubicación.  
`s3://<bucket-name>/<prefix>/<export-name>/metadata/<partition>`  
El manifiesto de este directorio se sobrescribe con cada actualización de una partición determinada (es decir, el período de facturación).