

# Referencia de clases de esquemas de AWS Glue
<a name="developing-blueprints-code-classes"></a>

Las bibliotecas para los esquemas de AWS Glue definen tres clases que se utilizan en el script de diseño del flujo de trabajo: `Job`, `Crawler` y `Workflow`.

**Topics**
+ [Clase de trabajo](#developing-blueprints-code-jobclass)
+ [Clase de rastreador](#developing-blueprints-code-crawlerclass)
+ [Clase de flujo de trabajo](#developing-blueprints-code-workflowclass)
+ [Métodos de clase](#developing-blueprints-code-methods)

## Clase de trabajo
<a name="developing-blueprints-code-jobclass"></a>

La clase de `Job` representa un trabajo de ETL de AWS Glue.

**Argumentos obligatorios del constructor**  
A continuación, se indican los argumentos obligatorios del constructor para la clase de `Job`.


| Nombre del argumento | Tipo | Descripción | 
| --- | --- | --- | 
| Name | str | Nombre a asignar al trabajo. AWS Glue agrega un sufijo generado en forma aleatoria al nombre para distinguir el trabajo de los creados por otras ejecuciones del esquema. | 
| Role | str | El nombre de recurso de Amazon (ARN) del rol que el trabajo debe asumir mientras se ejecuta. | 
| Command | dict | Comando de trabajo, tal como se especifica en [Estructura JobCommand](aws-glue-api-jobs-job.md#aws-glue-api-jobs-job-JobCommand) en la documentación de la API.  | 

**Argumentos opcionales del constructor**  
A continuación, se indican los argumentos opcionales del constructor para la clase de `Job`.


| Nombre del argumento | Tipo | Descripción | 
| --- | --- | --- | 
| DependsOn | dict | Lista de entidades de flujo de trabajo de las que depende el trabajo. Para obtener más información, consulte [Uso del argumento DependsOn (Depende de)](developing-blueprints-code-layout.md#developing-blueprints-code-layout-depends-on). | 
| WaitForDependencies | str | Indica si el trabajo debe esperar hasta que todas las entidades de las que depende se completen antes de ejecutarse o hasta que alguna se complete. Para obtener más información, consulte [Uso del argumento WaitForDependencies (Esperar a las dependencias)](developing-blueprints-code-layout.md#developing-blueprints-code-layout-wait-for-dependencies). Omitir si el trabajo depende de una sola entidad. | 
| (Propiedades del trabajo) | - | Cualquiera de las propiedades del trabajo enumeradas en [Estructura de trabajo](aws-glue-api-jobs-job.md#aws-glue-api-jobs-job-Job) en la documentación de la API de AWS Glue (excepto CreatedOn y LastModifiedOn). | 

## Clase de rastreador
<a name="developing-blueprints-code-crawlerclass"></a>

La clase de `Crawler` representa un rastreador de AWS Glue.

**Argumentos obligatorios del constructor**  
A continuación, se indican los argumentos obligatorios del constructor para la clase de `Crawler`.


| Nombre del argumento | Tipo | Descripción | 
| --- | --- | --- | 
| Name | str | Nombre a asignar al rastreador. AWS Glue agrega un sufijo generado en forma aleatoria al nombre para distinguir el rastreador de los creados por otras ejecuciones del esquema. | 
| Role | str | ARN del rol que el rastreador debe asumir durante la ejecución. | 
| Targets | dict | Recopilación de destinos que se rastrearán. Los argumentos del constructor de clase de Targets se definen en [Estructura CrawlerTargets](aws-glue-api-crawler-crawling.md#aws-glue-api-crawler-crawling-CrawlerTargets) en la documentación de la API. Todos los argumentos del constructor de Targets son opcionales, pero debe transferir al menos uno.  | 

**Argumentos opcionales del constructor**  
A continuación, se indican los argumentos opcionales del constructor para la clase de `Crawler`.


| Nombre del argumento | Tipo | Descripción | 
| --- | --- | --- | 
| DependsOn | dict | Lista de entidades del flujo de trabajo de las que depende el rastreador. Para obtener más información, consulte [Uso del argumento DependsOn (Depende de)](developing-blueprints-code-layout.md#developing-blueprints-code-layout-depends-on). | 
| WaitForDependencies | str | Indica si el rastreador debe esperar hasta que todas las entidades de las que depende se completen antes de ejecutarse o hasta que alguna se complete. Para obtener más información, consulte [Uso del argumento WaitForDependencies (Esperar a las dependencias)](developing-blueprints-code-layout.md#developing-blueprints-code-layout-wait-for-dependencies). Omitir si el rastreador depende de una sola entidad. | 
| (Propiedades del rastreador) | - | Cualquiera de las propiedades del rastreador enumeradas en [Estructura de rastreador](aws-glue-api-crawler-crawling.md#aws-glue-api-crawler-crawling-Crawler) en la documentación de la API de AWS Glue, con las siguientes excepciones:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/glue/latest/dg/developing-blueprints-code-classes.html) | 

## Clase de flujo de trabajo
<a name="developing-blueprints-code-workflowclass"></a>

La clase de `Workflow` representa un flujo de trabajo de AWS Glue. El script de diseño del flujo de trabajo devuelve un objeto `Workflow`. AWS Gluecrea un flujo de trabajo basado en este objeto.

**Argumentos obligatorios del constructor**  
A continuación, se indican los argumentos obligatorios del constructor para la clase de `Workflow`.


| Nombre del argumento | Tipo | Descripción | 
| --- | --- | --- | 
| Name | str | El nombre que se asignará al flujo de trabajo. | 
| Entities | Entities | Conjunto de entidades (trabajos y rastreadores) que se incluirán en el flujo de trabajo. El constructor de clase de Entities acepta un argumento de Jobs, que es una lista de objetos de Job, y un argumento de Crawlers, que es una lista de objetos de Crawler. | 

**Argumentos opcionales del constructor**  
A continuación, se indican los argumentos opcionales del constructor para la clase de `Workflow`.


| Nombre del argumento | Tipo | Descripción | 
| --- | --- | --- | 
| Description | str | Consulte [Estructura de flujo de trabajo](aws-glue-api-workflow.md#aws-glue-api-workflow-Workflow). | 
| DefaultRunProperties | dict | Consulte [Estructura de flujo de trabajo](aws-glue-api-workflow.md#aws-glue-api-workflow-Workflow). | 
| OnSchedule | str | Una expresión cron. | 

## Métodos de clase
<a name="developing-blueprints-code-methods"></a>

Las tres clases incluyen los métodos siguientes.

**validate() [validar()]**  
Valida las propiedades del objeto y, si se encuentran errores, genera un mensaje y sale. No genera resultados si no hay errores. Para la clase de `Workflow`, se llama a sí mismo en cada entidad en el flujo de trabajo.

**to\$1json() [a\$1json()]**  
Serializa el objeto a JSON. También llama a `validate()`. Para la clase de `Workflow`, el objeto JSON incluye listas de trabajos y rastreadores, y una lista de desencadenadores generados por las especificaciones de dependencia del trabajo y del rastreador.