

# Programación de scripts de ETL de AWS Glue en PySpark
<a name="aws-glue-programming-python"></a>

Puede encontrar ejemplos de código de Python y utilidades para AWS Glue en el [repositorio de ejemplos de AWS](https://github.com/awslabs/aws-glue-samples) en el sitio web de GitHub.

## Uso de Python con AWS Glue
<a name="aws-glue-programming-python-using"></a>

AWS Glue soporta una extensión del dialecto PySpark Python para scripting de trabajos de extracción, transformación y carga (ETL). En esta sección se describe cómo utilizar Python en scripts de ETL con la API de AWS Glue.
+ [Configuración para usar Python con AWS Glue](aws-glue-programming-python-setup.md)
+ [Llamada a las API de AWS Glue en Python](aws-glue-programming-python-calling.md)
+ [Uso de bibliotecas de Python con AWS Glue](aws-glue-programming-python-libraries.md)
+ [Ejemplos de código Python en AWS Glue](aws-glue-programming-python-samples.md)

## Extensiones de PySpark de AWS Glue
<a name="aws-glue-programming-python-extensions-list"></a>

AWS Glue ha creado las siguientes extensiones del dialecto PySpark Python.
+ [Acceso a los parámetros mediante `getResolvedOptions`](aws-glue-api-crawler-pyspark-extensions-get-resolved-options.md)
+ [Tipos de extensión PySpark](aws-glue-api-crawler-pyspark-extensions-types.md)
+ [Clase DynamicFrame](aws-glue-api-crawler-pyspark-extensions-dynamic-frame.md)
+ [Clase DynamicFrameCollection](aws-glue-api-crawler-pyspark-extensions-dynamic-frame-collection.md)
+ [Clase DynamicFrameWriter](aws-glue-api-crawler-pyspark-extensions-dynamic-frame-writer.md)
+ [Clase DynamicFrameReader](aws-glue-api-crawler-pyspark-extensions-dynamic-frame-reader.md)
+ [Clase GlueContext](aws-glue-api-crawler-pyspark-extensions-glue-context.md)

## Transformaciones de PySpark de AWS Glue
<a name="aws-glue-programming-python-transforms-list"></a>

AWS Glue ha creado las siguientes clases de transformación para utilizarlas en operaciones de ETL de PySpark.
+ [Clase de base GlueTransform](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md)
+ [Clase ApplyMapping](aws-glue-api-crawler-pyspark-transforms-ApplyMapping.md)
+ [Clase DropFields](aws-glue-api-crawler-pyspark-transforms-DropFields.md)
+ [Clase DropNullFields](aws-glue-api-crawler-pyspark-transforms-DropNullFields.md)
+ [Clase ErrorsAsDynamicFrame](aws-glue-api-crawler-pyspark-transforms-ErrorsAsDynamicFrame.md)
+ [Clase FillMissingValues](aws-glue-api-crawler-pyspark-transforms-fillmissingvalues.md)
+ [Clase de filtro](aws-glue-api-crawler-pyspark-transforms-filter.md)
+ [Clase FindIncrementalMatches](aws-glue-api-crawler-pyspark-transforms-findincrementalmatches.md)
+ [Clase FindMatches](aws-glue-api-crawler-pyspark-transforms-findmatches.md)
+ [Clase FlatMap](aws-glue-api-crawler-pyspark-transforms-flat-map.md)
+ [Clase Join](aws-glue-api-crawler-pyspark-transforms-join.md)
+ [Clase Map](aws-glue-api-crawler-pyspark-transforms-map.md)
+ [Clase MapToCollection](aws-glue-api-crawler-pyspark-transforms-MapToCollection.md)
+ [mergeDynamicFrame](aws-glue-api-crawler-pyspark-extensions-dynamic-frame.md#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-merge)
+ [Clase Relationalize](aws-glue-api-crawler-pyspark-transforms-Relationalize.md)
+ [Clase RenameField](aws-glue-api-crawler-pyspark-transforms-RenameField.md)
+ [Clase ResolveChoice](aws-glue-api-crawler-pyspark-transforms-ResolveChoice.md)
+ [Clase SelectFields](aws-glue-api-crawler-pyspark-transforms-SelectFields.md)
+ [Clase SelectFromCollection](aws-glue-api-crawler-pyspark-transforms-SelectFromCollection.md)
+ [Clase Spigot](aws-glue-api-crawler-pyspark-transforms-spigot.md)
+ [Clase SplitFields](aws-glue-api-crawler-pyspark-transforms-SplitFields.md)
+ [Clase SplitRows](aws-glue-api-crawler-pyspark-transforms-SplitRows.md)
+ [Clase Unbox](aws-glue-api-crawler-pyspark-transforms-Unbox.md)
+ [Clase UnnestFrame](aws-glue-api-crawler-pyspark-transforms-UnnestFrame.md)