

# Utilice un formulario de la consola de Athena para agregar una tabla de AWS Glue
<a name="data-sources-glue-manual-table"></a>

En el procedimiento siguiente se muestra cómo utilizar la consola de Athena para agregar una tabla mediante el formulario **Create Table From S3 bucket data** (Crear tabla a partir de datos de buckets de S3).

**Para agregar una tabla e ingresar información del esquema mediante un formulario**

1. Abra la consola de Athena en [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home).

1. En el editor de consultas, junto a **Tables and views** (Tablas y vistas), elija **Create** (Crear) y, a continuación, **S3 bucket data** (Datos del bucket de S3).

1. En el formulario **Create Table From S3 bucket data** (Crear tabla a partir de datos de buckets de S3), en **Table name** (Nombre de la tabla), ingrese un nombre para la tabla. Para obtener información sobre los caracteres aceptables para los nombres de base de datos, los nombres de tablas y los nombres de columnas en Athena, consulte [Nombrar tablas, bases de datos y columnas](tables-databases-columns-names.md).

1. En **Database configuration** (Configuración de la base de datos), elija una base de datos existente o cree una nueva.

1. En **Location of Input Data Set** (Ubicación del conjunto de datos de entrada), especifique la ruta de acceso en Amazon S3 para la carpeta que contiene el conjunto de datos que desea procesar. No incluya ningún nombre de archivo en la ruta. Athena analiza todos los archivos de la carpeta que especifique. Si sus datos ya están particionados (por ejemplo, 

    s3://amzn-s3-demo-bucket/logs/year=2004/month=12/day=11/), ingrese únicamente la ruta base (por ejemplo, s3://amzn-s3-demo-bucket/logs/).

1. En **Data Format** (Formato de datos), elija una de las siguientes opciones:
   + Para **Table type** (Tipo de tabla), elija **Apache Hive**, **Apache Iceberg** o **Delta Lake**. Athena usa el tipo de tabla Apache Hive como tipo de tabla predeterminado. Para obtener información acerca de la consulta de tablas de Apache Iceberg en Athena, consulte [Consulta de tablas de Apache Iceberg](querying-iceberg.md). Para obtener información acerca del uso de tablas de Delta Lake en Athena, consulte [Consulta de las tablas de Linux Foundation Delta Lake](delta-lake-tables.md).
   + En **File format** (Formato de archivo), elija el formato de archivo o registro en el que se encuentran los datos.
     + Para la opción **Text File with Custom Delimiters** (Archivo de texto con delimitadores personalizados), especifique un **terminador de campo** (es decir, un delimitador de columna). Si lo desea, puede especificar un **Collection terminator** (Terminador de colección) que marque el final de un tipo de matriz o un **Collection terminator** (Terminador de colección) que marque el final de un tipo de datos de mapa.
   + **SerDe library** (Biblioteca SerDe): una biblioteca SerDe (serializador-deserializador) analiza un formato de datos determinado para que Athena pueda crearle una tabla. Para la mayoría de los formatos, se elige una biblioteca SerDe predeterminada. Para los siguientes formatos, elija una biblioteca según sus requisitos:
     + **Apache Web Logs** (Registros web de Apache): elija la biblioteca **RegexSerDe** o **GrokSerDe**. Para RegexSerDe, proporcione una expresión regular en el cuadro **Regex definition** (Definición de regex). Para GrokSerDe, proporcione una serie de expresiones regulares con nombre para la propiedad SerDe `input.format`. Las expresiones regulares nombradas son más fáciles de leer y mantener que las expresiones regulares. Para obtener más información, consulte [Consulta de registros de Apache almacenados en Amazon S3](querying-apache-logs.md).
     + **CSV**: elija **LazySimpleSerDe** si sus datos separados por comas no contienen valores entre comillas dobles o si utilizan el formato `java.sql.Timestamp`. Elija **OpenCSVSerDe** si los datos incluyen comillas o utilizan el formato numérico de UNIX de `TIMESTAMP` (por ejemplo, `1564610311`). Para obtener más información, consulte [Lazy Simple SerDe para CSV, TSV y archivos con delimitación personalizada](lazy-simple-serde.md) y [Open CSV SerDe para el procesamiento de CSV](csv-serde.md).
     + **JSON**: elija la biblioteca SerDe JSON de **OpenX** o **Hive**. Ambos formatos esperan que cada documento JSON esté en una sola línea de texto y que los campos no estén separados por caracteres de nueva línea. El SerDe de OpenX ofrece algunas propiedades adicionales. Para obtener más información sobre estas propiedades, consulte [El SerDe JSON de OpenX](openx-json-serde.md). Para obtener más información acerca de SerDe de Hive, consulte [El SerDe JSON de Hive](hive-json-serde.md).

     Para obtener más información sobre el uso de bibliotecas SerDe en Athena, consulte [Elección de un valor de SerDe para los datos](supported-serdes.md).

1. En **SerDe properties** (Propiedades de SerDe), agregue, edite o elimine propiedades y valores de acuerdo con la biblioteca de SerDe que esté utilizando y sus requisitos.
   + Para agregar una propiedad de SerDe, elija **Add SerDe property** (Agregar propiedad de SerDe).
   + En el campo **Name** (Nombre), ingrese el nombre de la propiedad. 
   + En el campo **Value** (Valor), ingrese un valor para la propiedad. 
   + Para eliminar una propiedad de SerDe, elija **Remove** (Eliminar).

1. En **Table properties** (Propiedades de la tabla), elija o edite las propiedades de la tabla según sus requisitos.
   + En **Write compression** (Compresión de escritura), elija una opción de compresión. La disponibilidad de la opción de compresión de escritura y de las opciones de compresión disponibles depende del formato de los datos. Para obtener más información, consulte [Uso de la compresión en Athena](compression-formats.md).
   + En **Encryption** (Cifrado), seleccione **Encrypted data set** (Conjunto de datos cifrados) si los datos subyacentes están cifrados en Amazon S3. Esta opción establece la propiedad de la tabla `has_encrypted_data` en True (Verdadero) en la instrucción `CREATE TABLE`.

1. En **Column details** (Detalles de la columna), ingrese los nombres y los tipos de datos de las columnas que desee agregar a la tabla.
   + Para agregar más columnas de una a la vez, elija **Add a column** (Agregar una columna).
   + Para agregar más columnas rápidamente, elija **Bulk add columns** (Agregar columnas en bloque). En el cuadro de texto, ingrese una lista de columnas separadas por comas con el formato {{column\_name}} {{data\_type}}, {{column\_name}} {{data\_type}}, […] y, a continuación, elija **Add** (Agregar).

1. (Opcional) En **Partition details** (Detalles de la partición), agregue uno o varios nombres y tipos de datos de columnas. La partición mantiene los datos relacionados juntos en función de los valores de las columnas y puede ayudar a reducir la cantidad de datos escaneados por consulta. Para obtener información sobre las particiones, consulte [Partición de datos](partitions.md).

1. (Opcional) En **Bucketing** (Agrupación en buckets), puede especificar una o más columnas que tengan filas que desee agrupar y, a continuación, colocarlas en varios buckets. Esto le permite consultar solo el bucket que desea leer cuando se especifica el valor de las columnas agrupadas en buckets.
   + En **Buckets**, seleccione una o más columnas que tengan un gran número de valores únicos (por ejemplo, una clave principal) y que se usen con frecuencia para filtrar los datos de las consultas.
   + En **Number of buckets** (Número de buckets), ingrese un número que permita que los archivos tengan un tamaño óptimo. Para obtener información, consulte [Top 10 Performance Tuning Tips for Amazon Athena](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/) (Los 10 principales consejos de ajuste de rendimiento de Amazon Athena) en el Blog de macrodatos de AWS.
   + Para especificar las columnas agrupadas, la instrucción `CREATE TABLE` utilizará la siguiente sintaxis:

     ```
     CLUSTERED BY ({{bucketed_columns}}) INTO {{number_of_buckets}} BUCKETS
     ```
**nota**  
La opción **Bucketing** (Agrupación en buckets) no está disponible para los tipos de tablas de **Iceberg**.

1. El recuadro **Preview table query** (Vista previa de consulta de tablas) muestra la instrucción `CREATE TABLE` generada por la información ingresada en el formulario. La instrucción de vista previa no se puede editar directamente. Para cambiar la instrucción, modifique los campos del formulario o [cree la instrucción directamente](creating-tables-how-to.md#to-create-a-table-using-hive-ddl) en el editor de consultas en lugar de utilizar el formulario. 

1. Elija **Create table** (Crear tabla) para ejecutar la instrucción generada en el editor de consultas y crear la tabla.