awsglue studio - guía del usuario

130
AWS Glue Studio Guía del usuario

Upload: others

Post on 11-Jul-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AWSGlue Studio - Guía del usuario

AWS Glue StudioGuía del usuario

Page 2: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

AWS Glue Studio: Guía del usuarioCopyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Las marcas comerciales y la imagen comercial de Amazon no se pueden utilizar en relación con ningún producto oservicio que no sea de Amazon de ninguna manera que pueda causar confusión entre los clientes y que menosprecieo desacredite a Amazon. Todas las demás marcas comerciales que no son propiedad de Amazon son propiedad desus respectivos propietarios, que pueden o no estar afiliados, conectados o patrocinados por Amazon.

Page 3: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Table of Contents¿Qué es AWS Glue Studio? ................................................................................................................ 1

Características de AWS Glue Studio ............................................................................................. 2Editor visual de trabajos ...................................................................................................... 2Interfaz de bloc de notas para desarrollar y depurar scripts de trabajo de forma interactiva. ............. 2Editor de código de script del trabajo .................................................................................... 3Panel de rendimiento del trabajo .......................................................................................... 3Soporte de particiones de conjuntos de datos ......................................................................... 3

¿Cuándo debo usar AWS Glue Studio? ......................................................................................... 3Acceso a AWS Glue Studio ......................................................................................................... 4Precios de AWS Glue Studio ....................................................................................................... 4

Configuración ..................................................................................................................................... 5Completar tareas iniciales de configuración de AWS ........................................................................ 5

Registrarse en AWS ........................................................................................................... 5Crear un usuario administrador de IAM .................................................................................. 5Inicie sesión como usuario de IAM. ....................................................................................... 6

Revisar los permisos de IAM necesarios para el usuario de AWS Glue Studio ...................................... 7Permisos de servicios de AWS Glue ..................................................................................... 7Creación de políticas de IAM personalizadas para AWS Glue Studio .......................................... 7Permisos de vista previa de datos y cuaderno ...................................................................... 10Permisos de Amazon CloudWatch ....................................................................................... 10

Revisar los permisos de IAM necesarios para trabajos de ETL. ........................................................ 10Permisos de origen de datos y destino de datos .................................................................... 11Permisos necesarios para eliminar trabajos .......................................................................... 11Permisos de AWS Key Management Service ........................................................................ 11Permisos necesarios para utilizar conectores ........................................................................ 11

Definición de permisos de IAM para AWS Glue Studio ................................................................... 12Creación de un rol de IAM ................................................................................................. 12Adjuntar políticas al usuario de AWS Glue Studio .................................................................. 13Crear una política de IAM para roles no denominados “AWSGlueServiceRole*” ........................... 13

Configurar una VPC para su trabajo de ETL ................................................................................. 14Completar el AWS Glue Data Catalog ......................................................................................... 15

Tutorial: introducción ......................................................................................................................... 16Prerequisites ............................................................................................................................ 16Paso 1: comenzar el proceso de creación del trabajo ..................................................................... 17Paso 2: editar el nodo de origen de datos en el diagrama de trabajo ................................................. 17Paso 3: editar el nodo de transformación del trabajo ...................................................................... 18Paso 4: editar el nodo de destino de datos del trabajo ................................................................... 19Paso 5: ver el script de trabajo ................................................................................................... 19Paso 6: especifique los detalles del trabajo y guarde el trabajo ........................................................ 20Paso 7: ejecutar el trabajo ......................................................................................................... 20Pasos siguientes ....................................................................................................................... 21

Creación de puestos de trabajo .......................................................................................................... 22Comenzar el proceso de creación del trabajo ................................................................................ 22Crear trabajos que utilicen un conector ........................................................................................ 23Siguientes pasos para crear un trabajo en AWS Glue Studio ........................................................... 24

Edición de trabajos ........................................................................................................................... 25Acceso al editor de diagramas de trabajo ..................................................................................... 25Características del editor de trabajo ............................................................................................. 25

Uso de previsualizaciones de esquema en el editor visual de trabajos ....................................... 26Uso de previsualizaciones de datos en el editor visual de trabajos ............................................ 26Restricciones al usar previsualizaciones de datos .................................................................. 27Generación de código de script .......................................................................................... 28

Edición del nodo de origen de datos ............................................................................................ 28Uso de tablas de Data Catalog para el origen de datos .......................................................... 29

iii

Page 4: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Uso de un conector para el origen de datos ......................................................................... 29Uso de archivos en Amazon S3 para el origen de datos ......................................................... 30Uso de un origen de datos de streaming .............................................................................. 31

Edición del nodo de transformación de datos ................................................................................ 34Uso de ApplyMapping para reasignar claves de propiedad de datos ......................................... 34Uso de SelectFields (Seleccionar campos) para eliminar la mayoría de las claves de propiedadde datos .......................................................................................................................... 35Uso de DropFields (Descartar campos) para mantener la mayoría de las claves de propiedad ....... 36Cambio de nombre de un campo en el conjunto de datos ....................................................... 37Uso de Spigot para tomar muestras del conjunto de datos ...................................................... 38Combinación de conjuntos de datos .................................................................................... 38Uso de SplitFields (Dividir campos) para dividir un conjunto de datos en dos .............................. 40Información general de la transformación SelectFromCollection ................................................ 41Uso de SelectFromCollection (Seleccionar desde la recopilación) para elegir qué conjunto dedatos desea mantener ....................................................................................................... 41Buscar y rellenar valores faltantes en un conjunto de datos ..................................................... 42Filtrado de claves dentro de un conjunto de datos ................................................................. 43Uso de DropNullFields para eliminar campos con valores nulos ............................................... 44Uso de una consulta SQL para transformar datos .................................................................. 45Uso de agregado para realizar cálculos de resumen en los campos seleccionados ...................... 47Crear una transformación personalizada ............................................................................... 49Uso de agregado para realizar cálculos de resumen en los campos seleccionados ...................... 52

Configuración de nodos de destino de datos ................................................................................. 54Información general de las opciones de destino de datos ........................................................ 54Edición del nodo de destino de datos .................................................................................. 55

Edición o carga de un script de trabajo ........................................................................................ 57Creación y edición de scripts de Scala en AWS Glue Studio .................................................... 59Creación y edición de trabajos de shell de Python en AWS Glue Studio .................................... 60

Agregado de nodos al diagrama de trabajo .................................................................................. 61Cambio de los nodos principales de un nodo en el diagrama de trabajo ............................................ 61Eliminación de nodos del diagrama de trabajo .............................................................................. 62

Detectar y procesar información confidencial ....................................................................................... 63Elegir cómo desea que se escaneen los datos ............................................................................. 63Elección de las entidades de PII que se desea detectar ................................................................ 64

Elegir entre todos los patrones de PII disponibles .................................................................. 64Select categories (Seleccionar categorías) ........................................................................... 65Select specific patterns (Seleccionar patrones específicos) ..................................................... 66

Elegir qué hacer con los datos de PII identificados ....................................................................... 66API de Visual Job de AWS Glue ........................................................................................................ 68

Diseño de API y las API de CRUD ............................................................................................ 68Introducción ............................................................................................................................ 68Limitaciones de los trabajos visuales .......................................................................................... 69

Uso de los blocs de notas de ............................................................................................................. 70Información general sobre el uso de bloc de notas ........................................................................ 70Introducción a los bloc de notas en AWS Glue Studio .................................................................... 71

Concesión de permisos para el rol de IAM ........................................................................... 71Creación de un trabajo de ETL mediante bloc de notas en AWS Glue Studio .............................. 72Componentes del editor de bloc de notas ............................................................................. 73Cómo guardar el bloc de notas y el script de trabajo .............................................................. 74Administración de las sesiones de bloc de notas ................................................................... 74

Uso de conectores y conexiones ......................................................................................................... 76Información general del uso de conectores y conexiones ................................................................ 76Agregar conectores a AWS Glue Studio ....................................................................................... 77

Suscripción a conectores de AWS Marketplace ..................................................................... 77Creación de conectores personalizados ............................................................................... 78

Creación de conexiones para conectores ..................................................................................... 80Creación de una conexión Kafka ........................................................................................ 80

iv

Page 5: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Creación de trabajos con conectores personalizados ...................................................................... 85Creación de trabajos que utilicen un conector para el origen de datos ....................................... 85Configuración de las propiedades de origen para los nodos que utilizan conectores ..................... 86Configuración de las propiedades de destino para los nodos que utilizan conectores .................... 90

Administración de conectores y conexiones .................................................................................. 91Visualización de detalles del conector y la conexión ............................................................... 91Edición de conectores y conexiones .................................................................................... 91Eliminación de conectores y conexiones ............................................................................... 92Cancelar una suscripción para un conector ........................................................................... 92

Desarrollo de conectores personalizados ...................................................................................... 93Desarrollo de conectores Spark .......................................................................................... 93Desarrollo de conectores Athena ......................................................................................... 93Desarrollo de conectores JDBC .......................................................................................... 93Ejemplos de uso de conectores personalizados con AWS Glue Studio ...................................... 94Desarrollo de conectores de AWS Glue para AWS Marketplace ............................................... 94

Restricciones para el uso de conectores y conexiones en AWS Glue Studio ....................................... 95Tutorial: uso del Elasticsearch Spark Connector .................................................................................... 96

Requisitos previos ..................................................................................................................... 96Paso 1: (opcional) cree un secreto de AWS para la información del clúster de OpenSearch ................... 96

Paso siguiente .................................................................................................................. 97Paso 2: suscríbase al conector ................................................................................................... 97

Paso siguiente .................................................................................................................. 98Paso 3: activar el conector en AWS Glue Studio y crear una conexión .............................................. 98

Paso siguiente .................................................................................................................. 98Paso 4: configurar un rol de IAM para el trabajo de ETL ................................................................. 98

Paso siguiente .................................................................................................................. 99Paso 5: crear un trabajo que utilice la conexión OpenSearch ........................................................... 99

Paso siguiente ................................................................................................................ 101Paso 6: ejecutar el trabajo ........................................................................................................ 101

Monitoreo de trabajos ...................................................................................................................... 102Acceso al panel de monitoreo de trabajos .................................................................................. 102Información general del panel de monitoreo de trabajos ................................................................ 102Vista de las ejecuciones de trabajo ............................................................................................ 102Ver los registros de ejecución de trabajo .................................................................................... 104Visualización de los detalles de una ejecución de trabajo .............................................................. 104Visualización de métricas de Amazon CloudWatch para una ejecución de trabajo .............................. 106

Administrar trabajos ......................................................................................................................... 107Iniciar una ejecución de trabajo ................................................................................................. 107Programar ejecuciones de trabajo .............................................................................................. 107Administrar programaciones de trabajo ....................................................................................... 108Detener ejecuciones de trabajo ................................................................................................. 109Ver los trabajos ...................................................................................................................... 109

Personalizar la visualización del trabajo .............................................................................. 109Ver información sobre las ejecuciones de trabajos recientes .......................................................... 110Ver el script de trabajo ............................................................................................................ 110Modificar las propiedades del trabajo ......................................................................................... 111

Almacenar archivos de mezclas aleatorias de Spark en Amazon S3 ........................................ 112Guardar el trabajo ................................................................................................................... 113

Solución de errores al guardar un trabajo ........................................................................... 113Clonación de un trabajo ........................................................................................................... 115Eliminación de trabajos ............................................................................................................ 115

Tutorial: agregar un rastreador de AWS Glue ...................................................................................... 116Prerequisites .......................................................................................................................... 116Paso 1: agregar un rastreador .................................................................................................. 116Paso 2: ejecutar el rastreador ................................................................................................... 117Paso 3: ver objetos del AWS Glue Data Catalog .......................................................................... 117

Historial de documentos ................................................................................................................... 119

v

Page 6: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Glosario de AWS ............................................................................................................................ 124

vi

Page 7: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

¿Qué es AWS Glue Studio?AWS Glue Studio es una nueva interfaz gráfica que facilita la creación, ejecución y monitoreo de trabajosdel servicio ETL (extracción, transformación y carga) en AWS Glue. Puede componer visualmente flujosde trabajo de transformación de datos y ejecutarlos sin problemas en el motor de ETL sin servidor basadoen Apache Spark de AWS Glue. Puede inspeccionar los resultados de esquema y datos en cada paso deltrabajo.

AWS Glue Studio está diseñada no solo para datos tabulares, sino también para datos semiestructurados,que son difíciles de representar en interfaces de preparación de datos similares a hojas de cálculo.Algunos ejemplos de datos semiestructurados incluyen registros de aplicaciones, eventos móviles, flujosde eventos de Internet de las cosas (IoT) y fuentes sociales.

Al crear un trabajo en AWS Glue Studio, puede elegir entre una gran variedad de orígenes de datosque se almacenan en los servicios de AWS. Puede preparar rápidamente esos datos para su análisisen almacenamientos de datos y lagos de datos. AWS Glue Studio también ofrece herramientas paramonitorear los flujos de trabajo de ETL y validar que funcionan según lo previsto. Puede obtener unaprevisualización del conjunto de datos de cada nodo. Esto lo ayuda a depurar sus trabajos de ETL con lavisualización de una muestra de los datos en cada paso del trabajo.

AWS Glue Studio proporciona una interfaz visual que facilita las siguientes funciones:

• Extraer datos de una fuente de Amazon S3, Amazon Kinesis o JDBC.• Configurar una transformación que combine, muestree o transforme los datos.• Especificar una ubicación de destino para los datos transformados.

1

Page 8: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCaracterísticas de AWS Glue Studio

• Visualizar el esquema o una muestra del conjunto de datos en cada punto del trabajo.• Ejecutar, monitorear y administrar los trabajos creados en AWS Glue Studio.

Características de AWS Glue StudioAWS Glue Studio ayuda a crear y administrar trabajos que recopilan, transforman y limpian datos. Losusuarios avanzados pueden utilizar AWS Glue Studio para solucionar problemas y editar scripts de trabajo.

Editor visual de trabajosPuede realizar las siguientes acciones al crear y editar trabajos en AWS Glue Studio:

• Agregue nodos adicionales al trabajo para implementar:• Múltiples orígenes de datos.• Múltiples destinos de datos.• Orígenes y destinos de datos que utilizan conectores para almacenes de datos externos que no se

soportaban anteriormente• Visualice una muestra de los datos en cada nodo del diagrama de trabajo.• Cambie los nodos principales para un nodo existente.• Agregue transformaciones para realizar lo siguiente:

• Combinar orígenes de datos.• Seleccionar campos específicos de los datos.• Descartar campos.• Cambiar el nombre de un campo.• Cambiar el tipo de datos de los campos.• Escribir campos de selección a partir de los datos en un archivo JSON en un bucket de Amazon S3

(spigot).• Filtrar datos de un conjunto de datos.• Dividir un conjunto de datos en dos conjuntos de datos.• Buscar valores faltantes en un conjunto de datos y proporcionar el valor faltante en una columna

independiente.• Utilizar SQL para consultar y transformar los datos.• Utilizar código personalizado.

Interfaz de bloc de notas para desarrollar y depurarscripts de trabajo de forma interactiva.AWS Glue Studio proporciona una experiencia de bloc de notas mejorada con una configuración con unsolo clic para facilitar la creación de trabajos y la exploración de datos. El bloc de notas y las conexionesse configuran automáticamente. Puede utilizar la interfaz de bloc de notas basada en el bloc de notas deJupyter para desarrollar, depurar e implementar scripts y flujos de trabajo de forma interactiva medianteinfraestructura de ETL de Apache Spark sin servidor de AWS Glue. Puede realizar consultas ad hoc,análisis de datos y visualización (por ejemplo, tablas y gráficos) en el entorno de bloc de notas.

La interfaz del editor de bloc de notas en AWS Glue Studio ofrece las siguientes características:

• No hay clúster que aprovisionar o administrar• Sin costo para los clústeres inactivos que esperan ejecutar bloc de notas

2

Page 9: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEditor de código de script del trabajo

• No se requiere una configuración inicial• No requiere contención de recursos para el mismo entorno de desarrollo• Fácil instalación y uso• Se puede probar exactamente en el mismo entorno de ejecución en el que se ejecutan los trabajos ETL

de AWS Glue

Editor de código de script del trabajoAWS Glue Studio también tiene un editor de scripts para escribir o personalizar el código del servicio ETL(extracción, transformación y carga) para sus trabajos. Puede utilizar el editor visual en AWS Glue Studiopara diseñar de forma rápida su trabajo de ETL y luego editar el script generado a fin de escribir códigopara los componentes únicos de su trabajo.

Al crear un nuevo trabajo, puede elegir escribir scripts para trabajos de Spark o trabajos de shell dePython. Puede codificar el script de ETL para trabajos de Spark con Python o Scala. Si crea un trabajo deshell de Python, el script de ETL del trabajo utiliza Python 3.6.

La interfaz del editor de scripts en AWS Glue Studio ofrece las siguientes características:

• Insertar, modificar y eliminar orígenes, destinos y transformaciones en el script.• Agregar o modificar argumentos para orígenes, destinos y transformaciones de datos.• Resaltado de sintaxis y palabras clave• Sugerencias de autocompletado para palabras locales, palabras clave de Python y fragmentos de

código.

Panel de rendimiento del trabajoAWS Glue Studio proporciona un panel de ejecución integral para sus trabajos de ETL. El panel muestrainformación sobre las ejecuciones de trabajos desde un periodo específico. La información que se muestraen el panel incluye lo siguiente:

• Información general de trabajos: información general de alto nivel que muestra el total de trabajos,ejecuciones actuales, ejecuciones completadas y trabajos fallidos.

• Resúmenes de estado: proporciona métricas de trabajo de alto nivel basadas en las propiedades deltrabajo, como tipo de empleado y tipo de trabajo.

• Línea de tiempo de ejecución del trabajo: resumen de gráfico de barras de ejecuciones correctas, fallidasy totales para el período seleccionado actualmente.

• Desglose de ejecución de trabajos: una lista detallada de ejecuciones de trabajos desde el períodoseleccionado.

Soporte de particiones de conjuntos de datosPuede utilizar AWS Glue Studio para procesar conjuntos de datos particionados de manera eficiente.Puede cargar, filtrar, transformar y guardar los datos particionados mediante expresiones SQL o funcionesdefinidas por el usuario, para evitar crear listados y leer datos innecesarios de Amazon S3.

¿Cuándo debo usar AWS Glue Studio?Utilice AWS Glue Studio para obtener una interfaz visual sencilla a la hora de crear flujos de trabajo de ETLpara la limpieza y transformación de datos, y ejecutarlos en AWS Glue.

3

Page 10: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAcceso a AWS Glue Studio

AWS Glue Studio facilita a los desarrolladores de ETL la creación de procesos repetibles para mover ytransformar conjuntos de datos grandes semiestructurados y cargarlos en lagos y almacenamientos dedatos. Proporciona una interfaz visual con casillas y flechas para desarrollar y administrar flujos de trabajode ETL de AWS Glue que puede personalizar opcionalmente con código. AWS Glue Studio combinala facilidad de uso de las herramientas de ETL tradicionales y la potencia y la flexibilidad del motor deprocesamiento de macrodatos de AWS Glue.

AWS Glue Studio proporciona varias formas de personalizar los scripts de ETL, incluido el agregado denodos que representan fragmentos de código en el editor visual.

Utilice AWS Glue Studio para una administración de trabajos más sencilla. AWS Glue Studio brinda unaadministración de trabajos y de ejecuciones de trabajos que deja en claro cómo se relacionan los trabajosentre sí y ofrece una imagen general de las ejecuciones de trabajos. La página de administración detrabajos facilita la realización de operaciones masivas en trabajos (que antes eran difíciles de realizaren la consola de AWS Glue). Todas las ejecuciones de trabajos están disponibles en una única interfazcon funciones de búsqueda y filtrado. Esto le proporciona una vista constantemente actualizada de susoperaciones de ETL y de los recursos que utiliza. Puede utilizar el panel en tiempo real de AWS GlueStudio para monitorear las ejecuciones de trabajos y validar que estén funcionando según lo previsto.

Acceso a AWS Glue StudioPara obtener acceso a AWS Glue Studio, inicie sesión en AWS como usuario con los permisos necesarios,como se describe en Definición de permisos de IAM para AWS Glue Studio (p. 12). Luego inicie sesiónen la AWS Management Console y abra la consola de AWS Glue en https://console.aws.amazon.com/glue/. En el panel de navegación, haga clic en el enlace AWS Glue Studio.

Precios de AWS Glue StudioCuando utilice AWS Glue Studio, se le cobrará por las previsualizaciones de datos. Después de especificarun rol de IAM para el trabajo, el editor visual inicia una sesión de Apache Spark para tomar muestras de losdatos de origen y ejecutar transformaciones. Esta sesión se ejecuta durante 30 minutos y, a continuación,se apaga automáticamente. AWS le cobra por 2 unidades de procesamiento de datos (DPU) a la tasa delpunto de enlace de desarrollo (DEVED-DPU-hora), lo que normalmente resulta en un cargo de 0,44 USDpor cada sesión de 30 minutos. La tasa puede variar según la región. Al final de la sesión de 30 minutos,puede elegir Retry (Reintentar) en la pestaña Data preview (Previsualización de datos) para cualquiernodo o volver a cargar la página del editor visual para iniciar una nueva sesión de 30 minutos a las mismastasas.

También paga por los servicios subyacentes de AWS que sus trabajos utilizan o con los que interactúan,por ejemplo, AWS Glue, sus orígenes de datos y sus destinos de datos. Para obtener información acercade los precios, consulte AWS Glue Pricing (Precios de Glue).

4

Page 11: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCompletar tareas iniciales de configuración de AWS

Configuración de AWS Glue StudioComplete las tareas de esta sección cuando utilice AWS Glue Studio por primera vez:

Temas• Completar tareas iniciales de configuración de AWS (p. 5)• Revisar los permisos de IAM necesarios para el usuario de AWS Glue Studio (p. 7)• Revisar los permisos de IAM necesarios para trabajos de ETL. (p. 10)• Definición de permisos de IAM para AWS Glue Studio (p. 12)• Configurar una VPC para su trabajo de ETL (p. 14)• Completar el AWS Glue Data Catalog (p. 15)

Completar tareas iniciales de configuración de AWSPara utilizar AWS Glue Studio, primero debe completar las siguientes tareas:

• Registrarse en AWS (p. 5)• (Recomendado) Crear un usuario administrador de IAM (p. 5)• (Recomendado) Cree un usuario de AWS para AWS Glue Studio.

Puede utilizar el usuario administrador para crear y administrar sus trabajos de ETL, o puede crear unusuario independiente para acceder a Glue Studio de AWS.

Para crear usuarios adicionales para AWS Glue o AWS Glue Studio, siga los pasos en Creación delprimer grupo y usuario delegado de IAM en la Guía del usuario de IAM.

• Inicie sesión como usuario de IAM. (p. 6)

Registrarse en AWSSi no dispone de una Cuenta de AWS, siga los pasos que figuran a continuación para crear una.

Para registrarse en Cuenta de AWS

1. Abra https://portal.aws.amazon.com/billing/signup.2. Siga las instrucciones en línea.

Parte del procedimiento de inscripción consiste en recibir una llamada telefónica e indicar un código deverificación en el teclado del teléfono.

Crear un usuario administrador de IAMSi su cuenta ya incluye un usuario de IAM con permisos administrativos completos de AWS, puedesaltarse esta sección.

Para crearse usted mismo un usuario administrador y agregarlo a un grupo de administradores(consola)

1. Inicie sesión en la consola de IAM como el propietario de la cuenta; para ello, elija Root user (Usuarioraíz) e ingrese el email de su Cuenta de AWS. En la siguiente página, escriba su contraseña.

5

Page 12: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioInicie sesión como usuario de IAM.

Note

Le recomendamos que siga la práctica recomendada de utilizar el usuario de IAMAdministrator como se indica a continuación y guardar de forma segura las credencialesdel usuario raíz. Inicie sesión como usuario raíz únicamente para realizar algunas tareas deadministración de servicios y de cuentas.

2. En el panel de navegación, elija Users (Usuarios) y, a continuación, elija Add users (Agregar usuarios).3. En User name (Nombre de usuario), escriba Administrator.4. Seleccione la casilla de verificación situada junto a AWS Management Console access (Acceso a la

consola). A continuación, seleccione Custom password (Contraseña personalizada) y luego escriba lanueva contraseña en el cuadro de texto.

5. (Opcional) De forma predeterminada, AWS requiere al nuevo usuario que cree una nueva contraseñala primera vez que inicia sesión. Puede quitar la marca de selección de la casilla de verificaciónsituada junto a User must create a new password at next sign-in (El usuario debe crear una nuevacontraseña en el siguiente inicio de sesión) para permitir al nuevo usuario restablecer su contraseñadespués de iniciar sesión.

6. Elija Next: Permissions.7. En Set permissions (Establecer permisos), elija Add user to group (Añadir usuario a grupo).8. Elija Create group (Crear grupo).9. En el cuadro de diálogo Create group (Crear grupo), en Group name (Nombre del grupo) escriba

Administrators.10. Elija Filter policies (Filtrar políticas) y, a continuación, seleccione AWS managed - job function

(Función de trabajo administrada por AWS) para filtrar el contenido de la tabla.11. En la lista de políticas, active la casilla de verificación AdministratorAccess. A continuación, elija

Create group (Crear grupo).

Note

Debe activar el acceso de usuarios y roles de IAM a Facturación para poder utilizar lospermisos AdministratorAccess para acceder a la consola de AWS Billing and CostManagement. Para ello, siga las instrucciones que se indican en el paso 1 del tutorial sobrecómo delegar el acceso a la consola de facturación.

12. Retroceda a la lista de grupos y active la casilla de verificación del nuevo grupo. Elija Refresh si esnecesario para ver el grupo en la lista.

13. Elija Next: Tags (Siguiente: Etiquetas).14. (Opcional) Añadir metadatos al rol asociando las etiquetas como pares de clave-valor. Para obtener

más información sobre el uso de etiquetas en IAM, consulte Etiquetado de entidades de IAM en laguía del usuario de IAM.

15. Elija Next: Review (Siguiente: Revisión) para ver la lista de suscripciones a grupos que se van a añadiral nuevo usuario. Cuando esté listo para continuar, elija Create user (Crear usuario).

Puede usar este mismo proceso para crear más grupos y usuarios, y para otorgar a los usuarios accesoa los recursos de la Cuenta de AWS. Para obtener información acerca de cómo usar las políticas querestringen los permisos de los usuarios a recursos de AWS específicos, consulte Administración deaccesos y Ejemplos de políticas.

Inicie sesión como usuario de IAM.Inicie sesión en la consola de IAM; para ello, elija IAM user (Usuario de IAM) y escriba su ID de Cuenta deAWS o el alias de la cuenta. En la siguiente página, ingrese su nombre de usuario y su contraseña de IAM.

6

Page 13: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioRevisar los permisos de IAM necesarios

para el usuario de AWS Glue Studio

Note

Para su comodidad, en la página de inicio de sesión de AWS se utiliza una cookie del navegadorpara recordar su nombre de usuario de IAM y la información de su cuenta. Si ya ha iniciado sesióncomo otro usuario, elija el enlace de inicio de sesión debajo del botón para volver a la páginaprincipal de inicio de sesión. Desde allí, puede ingresar su ID de Cuenta de AWS o su alias decuenta, de modo que se lo redirija a la página de inicio de sesión del usuario de IAM y tengaacceso a su cuenta.

Revisar los permisos de IAM necesarios para elusuario de AWS Glue Studio

Para utilizar AWS Glue Studio, el usuario debe tener acceso a diversos recursos de AWS. El usuario debepoder ver y seleccionar buckets de Amazon S3, políticas y roles de IAM, y objetos de AWS Glue DataCatalog.

Permisos de servicios de AWS GlueAWS Glue Studio utiliza las acciones y recursos del servicio de AWS Glue. Su usuario necesita permisossobre estas acciones y recursos para utilizar AWS Glue Studio de manera eficaz. Puede conceder alusuario de AWS Glue Studio la política administrada de AWSGlueConsoleFullAccess o crear unapolítica personalizada con un conjunto de permisos más pequeño.

Important

Según las mejores prácticas de seguridad, se recomienda restringir el acceso mediante políticasmás estrictas para limitar aún más el acceso al bucket de Amazon S3 y grupos de registros deAmazon CloudWatch. Para ver un ejemplo de política de Amazon S3, consulte Cómo escribirpolíticas de IAM: cómo conceder acceso a un bucket de Amazon S3.

Creación de políticas de IAM personalizadas paraAWS Glue StudioPuede crear una política personalizada con un conjunto de permisos más pequeño para AWS Glue Studio.La política puede conceder permisos para un subconjunto de objetos o acciones. Utilice la siguienteinformación al crear una política personalizada.

Para utilizar las API de AWS Glue Studio, incluye glue:UseGlueStudio en la política de acción de lospermisos de IAM. Utilizar glue:UseGlueStudio le permitirá acceder a todas las acciones de AWS GlueStudio, incluso a las que se vayan agregando a la API a lo largo del tiempo.

Acciones de trabajo

• GetJob• CreateJob• DeleteJob• GetJobs• UpdateJob

Acciones de ejecución de trabajo

• StartJobRun• GetJobRuns

7

Page 14: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de políticas de IAM

personalizadas para AWS Glue Studio

• BatchStopJobRun• GetJobRun

Acciones de la base de datos

• GetDatabases

Acciones del plan

• GetPlan

Acciones de la tabla

• SearchTables• GetTables• GetTable

Acciones de conexión

• CreateConnection• DeleteConnection• UpdateConnection• GetConnections• GetConnection

Acciones de asignación

• GetMapping

Acciones de configuración de seguridad

• GetSecurityConfigurations

Acción de script

• CreateScript (diferente de la API del mismo nombre en AWS Glue)

Acceso a API de AWS Glue StudioPara acceder a AWS Glue Studio, agregue glue:UseGlueStudio a la lista de políticas de acciones delos permisos de IAM.

En el siguiente ejemplo, se ha incluido glue:UseGlueStudio en la política de acción, pero las APIde AWS Glue Studio no están identificadas individualmente. Esto se debe a que cuando se incluyeglue:UseGlueStudio se concede automáticamente acceso a las API internas sin tener que especificarlas API de AWS Glue Studio individuales en los permisos de IAM.

En el ejemplo, las políticas de acción adicionales que aparecen (por ejemplo, glue:SearchTables)no son API de AWS Glue Studio, de modo que se deberán incluir en los permisos de IAM según seanecesario. También se pueden incluir acciones de proxy de Amazon S3 para especificar el nivel de accesode Amazon S3 que se desea conceder. La siguiente política de ejemplo proporciona acceso para abrir

8

Page 15: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de políticas de IAM

personalizadas para AWS Glue Studio

AWS Glue Studio, crear un trabajo visual y guardarlo o ejecutarlo si el rol de IAM seleccionado tienesuficiente acceso.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "glue:UseGlueStudio", "iam:ListRoles", "iam:ListUsers", "iam:ListGroups", "iam:ListRolePolicies", "iam:GetRole", "iam:GetRolePolicy", "glue:SearchTables", "glue:GetConnections", "glue:GetJobs", "glue:GetTables", "glue:BatchStopJobRun", "glue:GetSecurityConfigurations", "glue:DeleteJob", "glue:GetDatabases", "glue:CreateConnection", "glue:GetSchema", "glue:GetTable", "glue:GetMapping", "glue:CreateJob", "glue:DeleteConnection", "glue:CreateScript", "glue:UpdateConnection", "glue:GetConnection", "glue:StartJobRun", "glue:GetJobRun", "glue:UpdateJob", "glue:GetPlan", "glue:GetJobRuns", "glue:GetTags", "glue:GetJob" ], "Resource": "*" }, { "Action": [ "iam:PassRole" ], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/AWSGlueServiceRole*", "Condition": { "StringLike": { "iam:PassedToService": [ "glue.amazonaws.com" ] } } } ]}

9

Page 16: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPermisos de vista previa de datos y cuaderno

Permisos de vista previa de datos y cuadernoLas vistas previas de datos y los cuaderno le permiten ver una muestra de los datos en cualquier etapadel trabajo (lectura, transformación, escritura), sin tener que ejecutar el trabajo. Se especifica un rol deAWS Identity and Access Management (IAM) para que utilice AWS Glue Studio al acceder a los datos. Losroles de IAM están destinados a ser asumibles y no tienen asociadas credenciales estándar a largo plazo,como una contraseña o clave de acceso. En lugar de esto, cuando AWS Glue Studio asume el rol, IAM leproporciona credenciales de seguridad temporales.

Para garantizar que las vistas previas de datos y los comandos de cuaderno funcionen correctamente,utilice un rol que tenga un nombre que empiece por la cadena AWSGlueServiceRole. Si decide utilizarotro nombre para el rol, debe agregar el permiso iam:passrole y configurar una política para el rolen IAM. Para obtener más información, consulte Crear una política de IAM para roles no denominados“AWSGlueServiceRole*” (p. 13) .

Warning

Si un rol concede el permiso iam:passrole a un cuaderno e implementa el encadenamientode roles, un usuario podría obtener acceso involuntariamente al cuaderno. Actualmente no se haimplementado ninguna auditoría que le permita monitorear a qué usuarios se les ha concedidoacceso al cuaderno.

Permisos de Amazon CloudWatchPuede monitorear sus trabajos de AWS Glue Studio mediante Amazon CloudWatch, que recopilay procesa los datos sin procesar de AWS Glue en métricas legibles y casi en tiempo real. De formapredeterminada, los datos de las métricas de AWS Glue se envían a CloudWatch en forma automática.Para obtener más información, consulte ¿Qué es Amazon CloudWatch? en la Guía del usuario de AmazonCloudWatch, y Métricas de AWS Glue en la Guía para desarrolladores de AWS Glue.

Para acceder a los paneles de CloudWatch, el usuario que accede a AWS Glue Studio necesita alguna delas siguientes:

• La política AdministratorAccess• La política CloudWatchFullAccess• Una política personalizada que incluya uno o varios de estos permisos específicos:

• cloudwatch:GetDashboard y cloudwatch:ListDashboards para ver paneles• cloudwatch:PutDashboard para poder crear o modificar paneles• cloudwatch:DeleteDashboards para eliminar paneles

Para obtener más información sobre cómo cambiar los permisos de un usuario de IAM mediante políticas,consulte Cambio de los permisos de un usuario de IAM en la Guía del usuario de IAM.

Revisar los permisos de IAM necesarios paratrabajos de ETL.

Cuando crea un trabajo con AWS Glue Studio, el trabajo asume los permisos del rol de IAM que seespecifica al crear el trabajo. Este rol de IAM debe tener permiso para extraer datos de su origen de datos,escribir en su destino y acceder a recursos de AWS Glue.

El nombre del rol que cree para el trabajo debe comenzar con la cadena AWSGlueServiceRole paraque AWS Glue Studio lo utilice correctamente. Por ejemplo, podría asignar el siguiente nombre a su rol:AWSGlueServiceRole-FlightDataJob.

10

Page 17: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPermisos de origen de datos y destino de datos

Permisos de origen de datos y destino de datosUn trabajo de AWS Glue Studio debe tener acceso a Amazon S3 para todos los orígenes, destinos, scriptsy directorios temporales que utilice en su trabajo. Puede crear una política para proporcionar un accesodetallado a determinados recursos de Amazon S3.

• Los orígenes de datos requieren permisos s3:ListBucket y s3:GetObject.• Los destinos de datos requieren permisos s3:ListBucket, s3:PutObject y s3:DeleteObject.

Si elige Amazon Redshift como origen de datos, puede proporcionar un rol para los permisos de clúster.Los trabajos que se ejecutan respecto de un clúster de Amazon Redshift envían comandos que acceden aAmazon S3 para el almacenamiento temporal mediante credenciales temporales. Si el trabajo se ejecutadurante más de una hora, estas credenciales caducarán, y provocarán un error en el trabajo. Para evitareste problema, puede asignar un rol al clúster de Amazon Redshift que conceda los permisos necesariosa los trabajos que utilizan credenciales temporales. Para obtener más información, consulte Movimiento dedatos desde y hacia Amazon Redshift en la Guía para desarrolladores de AWS Glue.

Si el trabajo utiliza orígenes o destinos de datos distintos de Amazon S3, debe asociar los permisosnecesarios al rol de IAM utilizado por el trabajo para acceder a estos orígenes y destinos de datos. Paraobtener más información, consulte Configuración del entorno para obtener acceso a almacenes de datosen la Guía para desarrolladores de AWS Glue.

Si utiliza conectores y conexiones para el almacén de datos, necesita permisos adicionales, como sedescribe en the section called “Permisos necesarios para utilizar conectores” (p. 11).

Permisos necesarios para eliminar trabajosEn AWS Glue Studio, puede seleccionar múltiples trabajos para eliminar en la consola. Para realizar estaacción, debe tener el permiso glue:BatchDeleteJob. Esto es diferente de la consola de AWS Glue, querequiere el permiso glue:DeleteJob para eliminar trabajos.

Permisos de AWS Key Management ServiceSi tiene previsto acceder a orígenes y destinos de Amazon S3 que utilizan cifrado del lado del servidorcon AWS Key Management Service (AWS KMS), adjunte una política al rol de AWS Glue Studioutilizado por el trabajo que permita al trabajo descifrar los datos. El rol del trabajo necesita los permisoskms:ReEncrypt, kms:GenerateDataKey y kms:DescribeKey. Además, el rol del trabajo necesita elpermiso kms:Decrypt para cargar o descargar un objeto de Amazon S3 cifrado con una clave maestradel cliente (CMK) AWS KMS.

La utilización de CMK de AWS KMS conlleva cargos adicionales. Para obtener más información, consulteConceptos de AWS Key Management Service: claves maestras del cliente (CMK) y Precios de AWS KeyManagement Service en la Guía para desarrolladores de AWS Key Management Service.

Permisos necesarios para utilizar conectoresSi utiliza un conector personalizado y conexión de AWS Glue para acceder a un almacén de datos, el rolutilizado para ejecutar el trabajo de ETL de AWS Glue necesita permisos adicionales asociados:

• La política administrada de AWS AmazonEC2ContainerRegistryReadOnly para acceder a losconectores adquiridos en AWS Marketplace.

• Los permisos glue:GetJob y glue:GetJobs.• Los permisos de AWS Secrets Manager para acceder a los secretos que se utilizan con las conexiones.

Consulte Ejemplos de políticas de IAM para secretos de AWS Secrets Manager por ejemplo, políticas deIAM.

11

Page 18: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioDefinición de permisos de IAM para AWS Glue Studio

Si sus trabajos de ETL de AWS Glue se ejecutan en una VPC que ejecuta Amazon VPC, la VPCdebe configurarse como se describe en the section called “Configurar una VPC para su trabajo deETL” (p. 14).

Definición de permisos de IAM para AWS GlueStudio

Puede crear los roles y asignar políticas a usuarios y roles de trabajo mediante el usuario administrado deAWS.

Puede utilizar la política administrada de AWS AWSGlueConsoleFullAccess para proporcionar lospermisos necesarios para utilizar la consola de AWS Glue Studio.

Para crear su propia política, siga los pasos documentados en Crear una política de IAM para el servicioAWS Glue en la Guía para desarrolladores de AWS Glue. Incluya los permisos de IAM descritosanteriormente en Revisar los permisos de IAM necesarios para el usuario de AWS Glue Studio (p. 7).

Temas• Creación de un rol de IAM (p. 12)• Adjuntar políticas al usuario de AWS Glue Studio (p. 13)• Crear una política de IAM para roles no denominados “AWSGlueServiceRole*” (p. 13)

Creación de un rol de IAMAWS Glue Studio necesita permisos para obtener acceso a otros servicios en su nombre. Puedeproporcionar esos permisos mediante la creación de un rol de IAM y la asignación de políticas a dicho rol.Este rol se especifica al crear trabajos, al utilizar el editor de cuaderno o al utilizar vistas previas de datos.AWS Glue Studio o su trabajo de ETL asume el rol y obtiene permisos temporales para acceder a otrosservicios y ubicaciones de datos.

Tiene que conceder los permisos de rol de IAM que AWS Glue Studio y AWS Glue puedan asumir al llamara otros servicios en su nombre. Esto incluye el acceso a Amazon S3 para almacenar los orígenes, losdestinos, los scripts y los directorios temporales que utilice con AWS Glue Studio.

Para crear un rol para sus trabajos de ETL

1. Inicie sesión en la AWS Management Console y abra la consola de IAM en https://console.aws.amazon.com/iam/.

2. En el panel de navegación izquierdo, seleccione Roles.3. Elija Create role (Crear rol).4. Para el tipo de rol, elija AWS Service (Servicio de AWS), encuentre y elija Glue y, luego, seleccione

Next: Permissions (Siguiente: permisos).5. En la página Attach permissions policy (Adjuntar políticas de permisos), elija las políticas

administradas que contengan los permisos necesarios. Por ejemplo, puede elegir la políticaadministrada por AWS AWSGlueServiceRole para permisos generales de AWS Glue Studio y AWSGlue y la polìtica administrada por AWS AmazonS3FullAccess para obtener acceso a los recursos deAmazon S3.

6. Agregue políticas adicionales según sea necesario para almacenes de datos o servicios adicionales.7. Elija Next: Review (Siguiente: revisar).8. En Role Name (Nombre del rol), escriba un nombre para el rol, por ejemplo, AWSGlueServiceRole-

Studio. Elija un nombre que comience por la cadena AWSGlueServiceRole para permitir que setransfiera el rol desde usuarios de la consola al servicio.

12

Page 19: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAdjuntar políticas al usuario de AWS Glue Studio

Si elige utilizar un nombre diferente para su rol, debe agregar una política para conceder a sususuarios el permiso iam:PassRole para que los roles de IAM se ajusten a la convención denomenclatura.

Elija Create Role (Crear rol) para finalizar la creación del rol.

Adjuntar políticas al usuario de AWS Glue StudioTodo usuario de AWS que inicie sesión en la consola de AWS Glue Studio debe tener permisos paraacceder a recursos específicos. Estos permisos los concede mediante la asignación de políticas de IAM alusuario.

Para adjuntar la política administrada AWSGlueConsoleFullAccess a un usuario

1. Inicie sesión en la AWS Management Console y abra la consola de IAM en https://console.aws.amazon.com/iam/.

2. En el panel de navegación, seleccione Policies (Políticas).3. En la lista de políticas, seleccione la casilla de verificación situada junto a

AWSGlueConsoleFullAccess. Puede utilizar el menú Filter y el cuadro de búsqueda para filtrar la listade políticas.

4. Seleccione Policy actions (Acciones de la política) y, a continuación, Attach (Adjuntar).5. Seleccione el usuario al que asociará la política. Puede utilizar el menú Filter (Filtro) y el cuadro de

búsqueda para filtrar la lista entidades principales. Después de seleccionar el usuario al que asociarála política, seleccione Attach policy (Asociar política).

6. Repita los pasos anteriores para adjuntar políticas adicionales al usuario según sea necesario.

Crear una política de IAM para roles no denominados“AWSGlueServiceRole*”Para configurar una política de IAM para los roles utilizados por AWS Glue Studio

1. Inicie sesión en la AWS Management Console y abra la consola de IAM en https://console.aws.amazon.com/iam/.

2. Agregue una nueva política de IAM. Puede agregar a una política existente o crear una nueva políticainsertada de IAM. Para crear una política de IAM:

1. Elija Policies y después, Create Policy. Si aparece el botón Get Started (Empezar), elíjalo y, acontinuación, elija Create Policy (Crear política).

2. Junto a Create Your Own Policy, seleccione Select.3. En Policy Name (Nombre de política), escriba cualquier valor que sea fácil de consultar más tarde.

Si lo desea, escriba un texto descriptivo en Description (Descripción).4. En Policy Document (Documento de política), escriba una instrucción de política con el formato

siguiente y, a continuación, elija Create Policy (Crear política):3. Copie y pegue los siguientes bloques en la política en la matriz "Statement" (Declaración).

{ "Action": ["iam:PassRole"], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/AWSGlueServiceRole*", "Condition": { "StringLike": {

13

Page 20: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioConfigurar una VPC para su trabajo de ETL

"iam:PassedToService": ["glue.amazonaws.com"] } } }, { "Effect": "Allow", "Principal": { "Service": ["glue.amazonaws.com"] }, "Action": "sts:AssumeRole" }

Este es el ejemplo completo con las matrices Version (Versión) y Statement (Declaración) incluidas enla política

{ "Version": "2012-10-17", "Statement": [ { "Action": ["iam:PassRole"], "Effect": "Allow", "Resource": "arn:aws:iam::*:role/AWSGlueServiceRole*", "Condition": { "StringLike": { "iam:PassedToService": ["glue.amazonaws.com"] } } }, { "Effect": "Allow", "Principal": { "Service": ["glue.amazonaws.com"] }, "Action": "sts:AssumeRole" } ]}

4. Para habilitar la política para un usuario, elija Users (Usuarios).5. Elija el usuario de IAM a quien desea asociar la política.

Configurar una VPC para su trabajo de ETLPuede utilizar Amazon Virtual Private Cloud (Amazon VPC) para definir una red virtual en su propia áreaaislada lógicamente dentro de la nube de AWS, que recibe el nombre de Virtual Private Cloud (VPC).Puede lanzar recursos de AWS, como, por ejemplo, instancias, en su VPC. Una VPC es prácticamenteidéntica a una red tradicional que usted puede operar en su propio centro de datos, con los beneficiosque supone utilizar la infraestructura escalable de AWS. Puede configurar la VPC, seleccionar su rangode direcciones IP, crear subredes y configurar tablas de ruteo, gateways de red y ajustes de seguridad.Ahora puede conectar sus instancias de la VPC a Internet. Puede conectar la VPC a su propio centro dedatos corporativo, lo que convierte la nube de AWS en una ampliación del centro de datos. Para protegerlos recursos de cada subred, puede utilizar varias capas de seguridad, incluidos grupos de seguridad ylistas de control de acceso a la red. Para obtener más información, consulte la Guía del usuario de AmazonVPC.

Puede configurar sus trabajo de ETL de AWS Glue para que se ejecuten dentro de una VPC cuando seutilicen conectores. Debe configurar la VPC para lo siguiente, según sea necesario:

14

Page 21: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCompletar el AWS Glue Data Catalog

• Acceso a la red pública de almacenes de datos externos a AWS. Todos los almacenes de datos a losque obtiene acceso el trabajo deben estar disponibles a partir de la subred de la VPC.

• Si su trabajo necesita obtener acceso a los recursos de la VPC y a la red pública de Internet, la VPCdebe tener una gateway de NAT (traducción de direcciones de red) dentro de la VPC.

Para obtener más información, consulte Configuración del entorno para obtener acceso a almacenes dedatos en la Guía para desarrolladores de AWS Glue.

Completar el AWS Glue Data CatalogAWS Glue Studio puede utilizar conjuntos de datos definidos en el AWS Glue Data Catalog. Estosconjuntos de datos se utilizan como orígenes y destinos de los flujos de trabajo de ETL en AWS GlueStudio. Si elige el Data Catalog para el origen o destino de sus datos, las tablas del Data Catalogrelacionadas con el origen de datos o el destino de sus datos deben existir antes de crear un trabajo.

Al leer o escribir a un origen de datos, es necesario que su trabajo de ETL conozca el esquema de losdatos. El trabajo de ETL puede obtener esta información de una tabla en el AWS Glue Data Catalog.Puede utilizar un rastreador, la consola de AWS Glue, AWS CLI, o un archivo de plantilla de AWSCloudFormation para agregar bases de datos y tablas al Data Catalog. Para obtener más informaciónacerca de completar el Data Catalog, consulte Data Catalog en la Guía para desarrolladores de AWS Glue.

Al utilizar conectores, puede ingresar la información del esquema mediante el generador de esquemascuando configura el nodo de origen de datos del trabajo de ETL en AWS Glue Studio. Para obtener másinformación, consulte the section called “Creación de trabajos con conectores personalizados” (p. 85) .

Para algunos orígenes de datos, AWS Glue Studio puede inferir automáticamente el esquema de los datosque lee de los archivos en la ubicación especificada.

• Para los orígenes de datos de Amazon S3, puede encontrar información en Uso de archivos en AmazonS3 para el origen de datos (p. 30).

• Para las orígenes de datos de streaming, puede encontrar más información enUso de un origen de datosde streaming (p. 31).

15

Page 22: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPrerequisites

Tutorial: Introducción a AWS GlueStudio

Puede utilizar AWS Glue Studio para crear trabajos que extraen datos estructurados o semiestructuradosde un origen de datos, realizar una transformación de esos datos y guardar el conjunto de resultados en undestino de datos.

Temas• Prerequisites (p. 16)• Paso 1: comenzar el proceso de creación del trabajo (p. 17)• Paso 2: editar el nodo de origen de datos en el diagrama de trabajo (p. 17)• Paso 3: editar el nodo de transformación del trabajo (p. 18)• Paso 4: editar el nodo de destino de datos del trabajo (p. 19)• Paso 5: ver el script de trabajo (p. 19)• Paso 6: especifique los detalles del trabajo y guarde el trabajo (p. 20)• Paso 7: ejecutar el trabajo (p. 20)• Pasos siguientes (p. 21)

PrerequisitesEste tutorial tiene los requisitos previos siguientes:

• Tener una cuenta de AWS.• Tiene acceso a AWS Glue Studio.• Su cuenta debe tener todos los permisos necesarios para crear y ejecutar un trabajo para un origen de

datos y un destino de datos de Amazon S3.• Debe haber creado un rol de AWS Identity and Access Management para que el trabajo utilice. También

puede elegir un rol de IAM para el trabajo que incluya permisos para todos los orígenes de datos,destinos de datos, directorios temporales, scripts y bibliotecas utilizados por el trabajo.

• Existen los siguientes componentes en AWS:• El rastreador Flights Data Crawler• La base de datos flights-db• La tabla flightscsv• El rol de IAM AWSGlueServiceRole-CrawlerTutorial

Para crear estos componentes, puede completar el tutorial de servicio Add a crawler (Agregar unrastreador), que rellena el AWS Glue Data Catalog con los objetos necesarios. Este tutorial también creaun rol de IAM con los permisos necesarios. Puede encontrar el tutorial en la página de servicio de AWSGlue en https://console.aws.amazon.com/glue/. El tutorial se encuentra en el panel de navegación de laizquierda, en Tutorials (Tutoriales). También puede utilizar la versión de documentación de este tutorial,Tutorial: agregar un rastreador de AWS Glue (p. 116).

16

Page 23: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso 1: comenzar el proceso de creación del trabajo

Paso 1: comenzar el proceso de creación deltrabajo

En esta tarea, elija iniciar la creación del trabajo mediante una plantilla.

Para crear un trabajo a partir de una plantilla

1. Inicie sesión en la AWS Management Console y abra la consola de AWS Glue Studio en https://console.aws.amazon.com/gluestudio/.

2. En la página de inicio de AWS Glue Studio elija View jobs (Ver trabajos), en el encabezado Create andmanage jobs (Crear y administrar trabajos).

3. En la página Jobs (Trabajos), en el encabezado Create job (Crear trabajo), elija la opción Source andtarget added to the graph (Origen y destino agregados al gráfico). A continuación, elija S3 para elSource (Origen) y S3 para el Target (Destino).

4. Seleccione el botón Create (Crear) para comenzar el proceso de creación de trabajo.

La página de edición de trabajos se abre con un simple diagrama de trabajo de tres nodos.

Paso 2: editar el nodo de origen de datos en eldiagrama de trabajo

Elija el nodo Data source - S3 bucket (Origen de datos: bucket de S3) en el diagrama de trabajo para editarlas propiedades del origen de datos.

Para editar el nodo de origen de datos

1. En la pestaña Node properties (Propiedades del nodo) en el panel de detalles del nodo, para Name(Nombre), escriba un nombre único para este trabajo.

El valor introducido se utiliza como etiqueta para el nodo de origen de datos en el diagrama de trabajo.Si utiliza nombres únicos para los nodos del trabajo, es más fácil identificar cada nodo en el diagramade trabajo y también seleccionar nodos principales. En este tutorial, ingrese el nombre S3 FlightData.

2. Elija la pestaña Data source properties - S3 (Propiedades del origen de datos: S3) en el panel dedetalles del nodo.

3. Elija la opción Data Catalog table (Tabla de Data Catalog) para el tipo de origen S3.4. Para Database (Base de datos), elija la base de datos flights-db (base de datos de vuelos) de la lista

de bases de datos disponibles en su AWS Glue Data Catalog.5. Para Table (Tabla), ingrese flight en el campo de búsqueda y, a continuación, elija la tabla

flightscsv de su AWS Glue Data Catalog.6. (Opcional) elija la pestaña Output schema (Esquema de salida) en el panel de detalles del nodo para

ver el esquema de datos.7. (Opcional) después de configurar las propiedades del nodo y del origen de datos, puede ver la

previsualización del conjunto de datos para su origen de datos al seleccionar la pestaña Data preview(Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija esta pestañapara cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

17

Page 24: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso 3: editar el nodo de transformación del trabajo

De forma predeterminada, se seleccionan las primeras cinco columnas en la pestaña Data preview(Previsualización de datos) para poder visualizarlas. Para ver otras columnas, elija Previewing5 of 65 fields (Previsualización de 5 de 65 campos). Por ejemplo, puede anular la selecciónde las cinco primeras columnas y seleccionar fl_date, airline_id, fl_num, tail_num yorigin_airport_id. Desplácese hasta el final de la lista de columnas y elija Confirm (Confirmar)para guardar sus elecciones.

Después de proporcionar la información necesaria para el nodo de origen de datos, aparece una marca deverificación verde en el nodo del diagrama de trabajo.

Paso 3: editar el nodo de transformación del trabajoEl nodo de transformación es donde se especifica cómo desea modificar los datos desde su formatooriginal. Una transformación ApplyMapping (Aplicar mapeo) le permite cambiar el nombre de las claves depropiedad de datos, cambiar los tipos de datos y eliminar columnas del conjunto de datos.

Cuando edita el nodo Transform - ApplyMapping (Transformación: aplicar mapeo), el esquema original delos datos se muestra en la columna Source key (Clave de origen) en el panel de detalles del nodo. Este esel nombre de la clave de propiedad de datos (nombre de columna) que se obtiene de los datos de origen yse almacena en la tabla de AWS Glue Data Catalog.

La columna Target key (Clave de destino) muestra el nombre de la clave que aparecerá en el destino dedatos. Puede utilizar este campo para cambiar el nombre de clave de propiedad de datos en la salida. Lacolumna Data type (Tipo de datos) muestra el tipo de datos de la clave y le permite cambiarla a un tipode datos diferente para el destino. La columna Drop (Descartar) contiene una casilla de verificación. Estacasilla le permite elegir un campo para descartarlo del esquema de destino.

Para editar el nodo de transformación

1. Elija el nodo Transform - ApplyMapping (Transformación: aplicar mapeo) en el diagrama de trabajopara editar las propiedades de transformación de datos.

2. Revise la información en el panel de detalles del nodo, en la pestaña Node properties (Propiedadesdel nodo).

Puede cambiar el nombre de este nodo si lo desea.3. Elija la pestaña Transform (Transformación) en el panel de detalles del nodo.4. Elija descartar las claves quarter y day_of_week al seleccionar la casilla de verificación en la

columna Drop (Descartar) para cada clave.5. Para la clave que muestra day_of_month en la columna Source key (Clave de origen), cambie el

valor Target key (Clave de destino) a day.

Cambie el tipo de datos para las claves month y day a tinyint. El tipo de datos tinyint almacenaenteros utilizando 1 byte de almacenamiento, con un rango de valores de 0 a 255. Al cambiar el tipode datos, debe verificar que el tipo de datos sea soportado por el destino.

6. (Opcional) elija la pestaña Output schema (Esquema de salida) en el panel de detalles del nodo paraver el esquema modificado.

7. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

18

Page 25: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso 4: editar el nodo de destino de datos del trabajo

De forma predeterminada, se seleccionan las cinco primeras columnas para la previsualización dedatos, pero las columnas ya no son las mismas que las que se ven en el nodo de origen de datosporque se eliminaron dos de las columnas y se cambió el nombre de una tercera columna.

Tenga en cuenta que el nodo Transform - Apply Mapping (Transformación: aplicar el mapeo) en eldiagrama de trabajo ahora tiene una marca de verificación verde, que indica que el nodo se ha editado ytiene toda la información necesaria.

Paso 4: editar el nodo de destino de datos deltrabajo

Un nodo de destino de datos determina dónde se envía la salida transformada. La ubicación puede serun bucket de Amazon S3, una tabla de Data Catalog o un conector y conexión. Si elige una tabla de DataCatalog, los datos se escribirán en la ubicación asociada a esa tabla. Por ejemplo, si utiliza un rastreadorpara crear una tabla en Data Catalog para un destino JDBC, los datos se escriben en esa tabla JDBC.

Para editar el nodo de destino de datos

1. Elija el nodo Data target- S3 bucket (Destino de datos: bucket de S3) en el diagrama de trabajo paraeditar las propiedades del destino de datos.

2. A la derecha del panel de detalles del nodo, elija la pestaña Node properties (Propiedades del nodo).En Name (Nombre), especifique un nombre para el nodo, como Revised Flight Data.

3. Elija la pestaña Data target properties - S3 (Propiedades del destino de datos: S3).4. En Format (Formato), elija JSON.

Para Compression Type (Tipo de compresión), mantenga el valor predeterminado de None (Ninguno).

Para S3 Target Location (Ubicación de destino de S3), elija el botón Browse S3 (Examinar S3) paraver los buckets de Amazon S3 a los que tiene acceso, y elija uno como el destino.

Para Data Catalog update options (Opciones de actualización de Data Catalog), mantenga laconfiguración predeterminada de Do not update the Data Catalog (No actualizar Data Catalog).

Para obtener más información sobre las opciones disponibles, consulte Información general de lasopciones de destino de datos (p. 54).

Paso 5: ver el script de trabajoDespués de configurar todos los nodos del trabajo, AWS Glue Studio genera un script que el trabajo utilizapara leer, transformar y escribir los datos en la ubicación de destino.

Para ver el script, elija la pestaña Script en la parte superior del panel de edición. No haga clic en el botónEdit script (Editar script), porque esto lo sacará del modo de editor visual.

Si ha hecho clic en el botón Edit script (Editar script) y confirmó su elección, puede volver a cargar lapágina (sin guardar el trabajo primero), para restablecer la pestaña Script.

19

Page 26: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso 6: especifique los detallesdel trabajo y guarde el trabajo

Paso 6: especifique los detalles del trabajo y guardeel trabajo

Antes de guardar y ejecutar el trabajo de extracción, transformación y carga (ETL), debe introducirinformación adicional sobre el trabajo en sí.

Para especificar los detalles del trabajo y guardar el trabajo

1. Elija la pestaña Job details (Detalles del trabajo).2. Ingrese un nombre para el trabajo, por ejemplo, FlightDataETL. Proporciona una cadena UTF-8

con una longitud máxima de 255 caracteres

También, si lo desea, ingrese una descripción del trabajo.3. Para el IAM rol (Rol de IAM), elija AWSGlueServiceRole-CrawlerTutorial de la lista de roles

disponibles. Es posible que deba dar a este rol acceso al bucket de Amazon S3 de destino.

Si tiene muchos roles para elegir, puede comenzar a escribir parte del nombre del rol en el campode búsqueda IAM rol (Rol de IAM) y se mostrarán los roles con la cadena de texto coincidente.Por ejemplo, puede ingresar tutorial en el campo de búsqueda para buscar todos los roles queincluyan tutorial (sin distinción entre mayúsculas y minúsculas) en el nombre.

El rol de AWS Identity and Access Management (IAM) se usa para dar una autorización a los recursosque se utilizan para ejecutar el trabajo. Solo puede elegir roles que ya existen en la cuenta. El rol queelija debe tener permiso para obtener acceso a los orígenes, destinos, directorio temporal, scripts y lasbibliotecas de Amazon S3 utilizados por el trabajo, así como acceso a recursos de servicio de AWSGlue.

Para conocer los pasos necesarios para crear un rol, consulte Crear un rol de IAM para AWS Glue enla Guía para desarrolladores de AWS Glue.

4. Deje los valores predeterminados en el resto de los campos.5. En la esquina superior derecha de la página, elija Save (Guardar).

Debería ver una notificación en la parte superior de la página de que el trabajo se guardó en formacorrecta.

Si no ve una notificación de que su trabajo se ha guardado en forma correcta, es probable que falteinformación que impida guardar el trabajo.

• Revise el trabajo en el editor visual y elija cualquier nodo que no tenga una marca de verificación verde.• Si alguna de las pestañas situadas encima del panel del editor visual tiene un globo, elija esa pestaña y

busque los campos que estén resaltados en rojo.

Paso 7: ejecutar el trabajoAhora que el trabajo se ha guardado, puede ejecutarlo. Elija el botón Run (Ejecución) en la parte superiorde la página. A continuación, debería ver una notificación de que el trabajo se inició correctamente.

Puede elegir el enlace de la notificación para Run details (Detalles de la ejecución), o elija la pestaña Runs(Ejecuciones) para ver el estado de ejecución del trabajo.

En la pestaña Runs (Ejecuciones), hay una tarjeta para cada ejecución reciente del trabajo con informaciónsobre esa ejecución.

20

Page 27: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPasos siguientes

Para obtener más información acerca de la ejecución de trabajos, consulte the section called “Verinformación sobre las ejecuciones de trabajos recientes” (p. 110).

Pasos siguientesDespués de iniciar la ejecución del trabajo, es posible que desee intentar algunas de las siguientes tareas:

• Ver el panel de monitoreo de trabajos: Acceso al panel de monitoreo de trabajos (p. 102).• Probar una transformación diferente en los datos: . – Edición del nodo de transformación de

datos (p. 34).• Ver los trabajos que existen en su cuenta: Ver los trabajos (p. 109).• Ejecutar el trabajo utilizando una programación basada en tiempo: Programar ejecuciones de

trabajo (p. 107).

21

Page 28: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioComenzar el proceso de creación del trabajo

Creación de trabajos ETL con AWSGlue Studio

Puede utilizar la interfaz visual simple en AWS Glue Studio para crear los trabajos de ETL. Se utiliza lapágina Jobs (Trabajos) para crear nuevos trabajos. También puede utilizar un editor de script o bloc denotas para trabajar en forma directa con el código en el script del trabajo de ETL de AWS Glue Studio.

En la página Jobs (Trabajos), puede ver todos los trabajos que ha creado con AWS Glue Studio o AWSGlue. Puede ver, administrar y ejecutar sus trabajos en esta página.

Temas• Comenzar el proceso de creación del trabajo (p. 22)• Crear trabajos que utilicen un conector (p. 23)• Siguientes pasos para crear un trabajo en AWS Glue Studio (p. 24)

Comenzar el proceso de creación del trabajoSe utiliza el editor visual para crear y personalizar los trabajos. Cuando crea un nuevo trabajo, tiene laopción de comenzar con un lienzo vacío, un trabajo con un origen de datos, una transformación y un nodode destino de datos, o escribir un script de ETL.

Para crear un trabajo en AWS Glue Studio

1. Inicie sesión en la AWS Management Console y abra la consola de AWS Glue Studio en https://console.aws.amazon.com/gluestudio/.

2. Puede elegir Create and manage jobs (Crear y administrar trabajos) desde la página de inicio de AWSGlue Studio, o puede elegir Jobs (Trabajos) en el panel de navegación.

Se visualizará la página Jobs (Trabajos).3. En la sección Create job (Crear trabajo), elija una opción de configuración para su trabajo.

• Visual con un lienzo en blanco: para crear un trabajo a partir de un lienzo vacío• Visual con una fuente y un destino: para crear un trabajo a partir del nodo de origen, o con un nodo

de origen, transformación y destino

A continuación, elija el tipo de origen de datos. También puede elegir el tipo de destino de datos, opuede elegir la opción Choose later (Elegir más tarde) de la lista desplegable de Target (Destino)para iniciar con sólo un nodo de origen de datos en el gráfico.

• Editor de scripts de Spark: para aquellos que estén familiarizados con la programación y la escriturade scripts ETL, elija esta opción a fin de crear un nuevo trabajo ETL de Spark. Luego, tendrá laopción de escribir un código Python o Scala en una ventana del editor de script, o cargar un scriptexistente desde un archivo local. Si elige utilizar el editor de script, no puede usar el editor visualpara diseñar o editar el trabajo.

Un trabajo de Spark se ejecuta en un entorno Apache Spark administrado por AWS Glue. De formapredeterminada, los nuevos scripts están codificados en Python. Para escribir un nuevo script deScala, consulte Creación y edición de scripts de Scala en AWS Glue Studio (p. 59).

22

Page 29: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCrear trabajos que utilicen un conector

• Editor de scripts de shell de Python: para aquellos que estén familiarizados con la programacióny la escritura de scripts ETL, elija esta opción a fin de crear un nuevo trabajo de shell de Python.Se escribe el código en una ventana del editor de scripts a partir de una plantilla (reutilizable), o sepuede cargar un script existente desde un archivo local. Si elige utilizar el editor de shell de Python,no puede usar el editor visual para diseñar o editar el trabajo.

Un trabajo de shell de Phyton ejecuta scripts de Python como un shell y admite una versión dePython según la versión de AWS Glue que utilice. Estos trabajos pueden utilizarse para programar yejecutar tareas que no requieren un entorno de Apache Spark.

• Blocs de notas de Jupyter: para aquellos que estén familiarizados con la programación y la escriturade scripts ETL, elija esta opción a fin de crear un nuevo script de trabajo de Python o Scalamediante una interfaz de bloc de notas basada en el bloc de notas de Jupyter. Se escribe el códigoen un bloc de notas. Si elige utilizar la interfaz del bloc de notas a fin de crear el trabajo, no puedeusar el editor visual para diseñar o editar el trabajo.

También puede utilizar una interfaz de línea de comandos para configurar de forma sencilla un blocde notas a fin de crear trabajos.

4. Elija Create (Crear) para crear un trabajo en la interfaz de edición que ha seleccionado.

5. Si eligió la opción de bloc de notas de Jupyter, la página Crear trabajo en el bloc de notas de Jupyteraparece en lugar de la interfaz del editor de trabajos. Debe proporcionar información adicional antesde crear una sesión de creación de bloc de notas. Para conocer más acerca de cómo especificar estainformación, consulte Introducción a los bloc de notas en AWS Glue Studio (p. 71).

Crear trabajos que utilicen un conectorDespués de agregar un conector AWS Glue Studio y crear una conexión para ese conector, puede crearun trabajo que utilice la conexión para el origen de datos.

Para obtener instrucciones detalladas, consulte the section called “Creación de trabajos con conectorespersonalizados” (p. 85).

23

Page 30: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioSiguientes pasos para crear un trabajo en AWS Glue Studio

Siguientes pasos para crear un trabajo en AWSGlue Studio

Utilice el editor visual de trabajos para configurar nodos para su trabajo. Cada nodo representa unaacción, como leer datos de la ubicación de origen o aplicar una transformación a los datos. Cada nodo queagregue al trabajo tiene propiedades que proporcionan información sobre la ubicación o la transformaciónde los datos.

Los próximos pasos para crear y administrar sus trabajos son los siguientes:

• Edición de trabajos de ETL en AWS Glue Studio (p. 25)• Introducción a los bloc de notas en AWS Glue Studio (p. 71)• Agregar conectores a AWS Glue Studio (p. 77)• Ver el script de trabajo (p. 110)• Modificar las propiedades del trabajo (p. 111)• Guardar el trabajo (p. 113)• Iniciar una ejecución de trabajo (p. 107)• Ver información sobre las ejecuciones de trabajos recientes (p. 110)• Acceso al panel de monitoreo de trabajos (p. 102)

24

Page 31: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAcceso al editor de diagramas de trabajo

Edición de trabajos de ETL en AWSGlue Studio

Al crear un nuevo trabajo o después de haberlo guardado, puede utilizar AWS Glue Studio para modificarlos trabajos de ETL. Puede hacerlo mediante la edición de los nodos en el editor visual o al editar el scriptde trabajo en modo desarrollador. También puede agregar y eliminar nodos en el editor visual para creartrabajos de ETL más complejos.

Temas• Acceso al editor de diagramas de trabajo (p. 25)• Características del editor de trabajo (p. 25)• Edición del nodo de origen de datos (p. 28)• Edición del nodo de transformación de datos (p. 34)• Configuración de nodos de destino de datos (p. 54)• Edición o carga de un script de trabajo (p. 57)• Agregado de nodos al diagrama de trabajo (p. 61)• Cambio de los nodos principales de un nodo en el diagrama de trabajo (p. 61)• Eliminación de nodos del diagrama de trabajo (p. 62)

Acceso al editor de diagramas de trabajoUtilice el editor de trabajo de AWS Glue Studio para editar los trabajos de ETL.

Puede acceder al editor de trabajos de las siguientes maneras:

• En el panel de navegación de la consola, elija Jobs (Trabajos). En la página Jobs (Trabajos), localice eltrabajo en la lista Your jobs (Sus trabajos). Luego, podrá realizar cualquiera de las acciones siguientes:• Elija el nombre de la tarea en la columna Name (Nombre) para abrir el editor de trabajos para ese

trabajo.• Elija el trabajo y, a continuación, elija Edit job (Editar trabajo) desde la lista Actions (Acciones).

• Elija Monitoring (Monitoreo) en el panel de navegación de la consola. En la página Monitoring(Monitoreo), localice el trabajo en la lista Job runs (Ejecuciones de trabajos). Puede filtrar las filasen la lista Job runs (Ejecuciones de trabajo), tal y como se describe en Vista de las ejecuciones detrabajo (p. 102). Elija el trabajo que desea editar y, a continuación, elija View job (Ver trabajo) desde elmenú Actions (Acciones).

Características del editor de trabajoEl editor de trabajos proporciona las siguientes características para crear y editar trabajos.

• Diagrama visual de su trabajo, con un nodo para cada tarea de trabajo: nodos de origen de datos paraleer los datos; nodos de transformación para modificar los datos; nodos de destino de datos para escribirlos datos.

Puede ver y configurar las propiedades de cada nodo en el diagrama de trabajo. También puede ver elesquema y los datos de ejemplo de cada nodo en el diagrama de trabajo. Estas características ayudan

25

Page 32: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de previsualizaciones de

esquema en el editor visual de trabajos

a comprobar que su trabajo está modificando y transformando los datos de la manera correcta, sin tenerque ejecutar el trabajo.

• Una pestaña Script viewing and editing (Visualización y edición de scripts), donde puede modificar elcódigo generado para su trabajo.

• Una pestaña Job details (Detalles del trabajo), en la que puede configurar una variedad de opcionespara personalizar el entorno en el que se ejecuta el trabajo de ETL de AWS Glue.

• Una pestaña Runs (Ejecuciones), donde puede ver las ejecuciones actuales y anteriores del trabajo, verel estado de la ejecución del trabajo y acceder a los registros de la ejecución del trabajo.

• Una pestaña Schedules (Programaciones), en la que puede configurar la hora de inicio del trabajo oconfigurar ejecuciones de trabajos recurrentes.

Uso de previsualizaciones de esquema en el editorvisual de trabajosMientras crea o edita su trabajo, puede usar la pestaña Output schema (Esquema de salida) para ver elesquema de sus datos.

Antes de ver el esquema, el editor de trabajos necesita permisos para acceder al origen de datos. Puedeespecificar un rol de IAM en la pestaña Job details (Detalles del trabajo) del editor o en la pestaña Outputschema (Esquema de salida) para un nodo. Si el rol de IAM tiene todos los permisos necesarios paraacceder al origen de datos, puede ver el esquema en la pestaña Output schema (Esquema de salida) paraun nodo.

Uso de previsualizaciones de datos en el editor visualde trabajosMientras crea o edita su trabajo, puede usar la pestaña Data preview (Previsualización de datos) para veruna muestra de sus datos.

Antes de ver la muestra de datos, el editor de trabajos necesita permisos para acceder al origen de datos.La primera vez que elija la pestaña Data preview (Previsualización de datos), se le pedirá que elija unrol de IAM que será el que se utilizará. Este puede ser el mismo rol que planea usar para su trabajo opuede ser un rol diferente. El rol de IAM que elija debe tener los permisos necesarios para crear lasprevisualizaciones de datos.

Después de elegir un rol de IAM, los datos aparecerán luego de entre 20 y 30 segundos. Se le cobrará porel uso de la previsualización de datos tan pronto como elija el rol de IAM. Las siguientes característicasfacilitan la visualización de los datos.

• Elija el ícono de configuración (un símbolo de engranaje) para configurar sus preferencias para lasprevisualizaciones de datos. Puede cambiar el tamaño de la muestra o puede elegir ajustar el texto deuna línea a la siguiente. Esta configuración se aplica a todos los nodos del diagrama de trabajo.

• Elija el boton Previewing x of y fields (Previsualización de x de y campos) para seleccionar lascolumnas (campos) que ds esea previsualizar. Al obtener una previsualización de los datos utilizando laconfiguración predeterminada, el editor de trabajos muestra las primeras cinco columnas del conjunto dedatos. Puede cambiar esto para mostrar todos o ninguno (no recomendado).

• Puede desplazarse por la ventana de previsualización de datos en forma horizontal como vertical.• Utilice el botón de pantalla dividida/completa para expandir la pestaña Data preview (Previsualización de

datos) a toda la pantalla (superposición del gráfico de trabajo), para ver mejor los datos y las estructurasde datos.

Las previsualizaciones de datos ayudan a crear y probar su trabajo, sin tener que ejecutarlo varias veces.

26

Page 33: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioRestricciones al usar previsualizaciones de datos

• Puede probar un rol de IAM para asegurarse de que tiene acceso a sus orígenes de datos o destinos dedatos.

• Puede comprobar que la transformación está modificando los datos de la forma deseada. Por ejemplo, siutiliza una transformación de filtro, puede asegurarse de que el filtro está seleccionando el subconjuntocorrecto de datos.

• Si el conjunto de datos contiene columnas con valores de varios tipos, la previsualización de datosmuestra una lista de tuplas para estas columnas. Cada tupla contiene el tipo de datos y su valor, tal ycomo se muestra en la captura de pantalla a continuación.

Restricciones al usar previsualizaciones de datosSi utiliza las previsualizaciones de datos, podría encontrarse con las siguientes restricciones o limitaciones.

• La primera vez que elija la pestaña Data preview (Previsualización de datos), deberá elegir un rol deIAM. Este rol debe tener los permisos correspondientes para acceder a los datos y otros recursosnecesarios para crear las previsualizaciones de datos.

• Después de proporcionar un rol de IAM, tarda un tiempo antes de que los datos estén disponibles parasu visualización. Para conjuntos de datos con menos de 1 GB de datos, puede tardar hasta un minuto. Sitiene un conjunto de datos grande, debe usar particiones para mejorar el tiempo de carga. La carga dedatos directamente desde Amazon S3 ofrece el mejor rendimiento.

• Si tiene un conjunto de datos muy grande y tarda más de 30 minutos en consultar los datos para laprevisualización de datos, se agotará el tiempo de espera de la solicitud. Puede reducir el tamaño delconjunto de datos que previsualizará.

• De forma predeterminada, verá las primeras cinco columnas en la pestaña Data preview(Previsualización de datos). Si las columnas no tienen valores de datos, recibirá un mensaje que indicaráque no hay datos para mostrar. Puede aumentar el número de filas muestreadas o seleccionar columnasdiferentes para ver los valores de los datos.

• Actualmente, las previsualizaciones de datos no se soportan para orígenes de datos de streaming nipara orígenes de datos que utilizan conectores personalizados.

• Los errores en un nodo afectan a todo el trabajo. Si un nodo tiene un error con las previsualizaciones dedatos, el error aparecerá en todos los nodos hasta que lo corrija.

• Si cambia un origen de datos para el trabajo, es posible que sea necesario actualizar los nodossecundarios de ese origen de datos para que coincidan con el nuevo esquema. Por ejemplo, si tiene

27

Page 34: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioGeneración de código de script

un nodo ApplyMapping que modifica una columna y la columna no existe en el origen de datos dereemplazo, deberá actualizar el nodo de transformación ApplyMapping.

• Si ve la pestaña Data preview (Previsualización de datos) de un nodo de transformación de consultaSQL y la consulta SQL utiliza un nombre de campo incorrecto, la pestaña Previsualización de datosmuestra un error.

Generación de código de scriptCuando se utiliza el editor visual para crear un trabajo, el código ETL se genera de forma automática. AWSGlue Studio crea un script de trabajo funcional y completo y lo guarda en una ubicación de Amazon S3.

Hay dos formas de código generadas por AWS Glue Studio: la versión original o clásica y una versiónmás nueva y optimizada. De forma predeterminada, el nuevo generador de código se utiliza para crear elscript de trabajo. Puede generar un script de trabajo mediante el generador de código clásico en la pestañaScript al seleccionar el botón de alternar Generate classic script (Generar script clásico).

Algunas de las diferencias en la nueva versión del código generado incluyen:

• Ya no se agregan bloques de comentarios grandes al script• Las estructuras de salida del código utilizan el nombre de nodo que especifica en el editor visual. En

el script de clase, las estructuras de salida se denominan tan solo DataSource0, DataSource1,Transform0, Transform1, DataSink0, DataSink1 y así sucesivamente.

• Los comandos largos se dividen en varias líneas para eliminar la necesidad de desplazarse por lapágina a fin de ver todo el comando.

Nuevas características en AWS Glue Studio requieren la nueva versión de generación de código yno funcionará con el script de código clásico. Se le pide que actualice estos trabajos cuando intenteejecutarlos.

Edición del nodo de origen de datosPara especificar las propiedades del origen de datos, elija primero un nodo de origen de datos en eldiagrama de trabajo. A continuación, en el lado derecho del panel de detalles del nodo, configure laspropiedades del nodo.

Para modificar las propiedades de un nodo de origen de datos

1. Vaya al editor visual para acceder a un trabajo nuevo o guardado.2. Elija un nodo de origen de datos en el diagrama de trabajo.3. Elija la pestaña Node properties (Propiedades del nodo) en el panel de detalles del nodo y escriba la

siguiente información:

• Name (Nombre): (opcional) ingrese un nombre para asociar al nodo en el diagrama de trabajo. Estenombre debe ser único entre todos los nodos de este trabajo.

• Node type (Tipo de nodo): el tipo de nodo determina la acción que realiza el nodo. En la lista deopciones para Node type (Tipo de nodo), elija uno de los valores enumerados en el encabezadoData source (Origen de datos).

4. Configuración de la información de Data source properties (Propiedades de origen de datos). Paraobtener más información, consulte las siguientes secciones:

• Uso de tablas de Data Catalog para el origen de datos (p. 29)

28

Page 35: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de tablas de Data Catalog para el origen de datos

• Uso de un conector para el origen de datos (p. 29)• Uso de archivos en Amazon S3 para el origen de datos (p. 30)• Uso de un origen de datos de streaming (p. 31)

5. (Opcional) después de configurar las propiedades del nodo y del origen de datos, puede ver elesquema de datos para su origen de datos al seleccionar la pestaña Output schema (Esquema desalida) en el panel de detalles del nodo. La primera vez que elija esta pestaña para cualquier nodo detrabajo, se le pedirá que proporcione un rol de IAM para acceder a los datos. Si no ha especificado unrol de IAM en Job details (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

6. (Opcional) después de configurar las propiedades del nodo y del origen de datos, puede ver laprevisualización del conjunto de datos para su origen de datos al seleccionar la pestaña Data preview(Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija esta pestañapara cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Uso de tablas de Data Catalog para el origen de datosEn todos los orígenes de datos, excepto Amazon S3 y los conectores, debe existir una tabla en el AWSGlue Data Catalog para el tipo de fuente que elija. AWS Glue Studio no crea la tabla del Data Catalog.

Para configurar un nodo de origen de datos en función de una tabla de Data Catalog

1. Vaya al editor visual para acceder a un trabajo nuevo o guardado.2. Elija un nodo de origen de datos en el diagrama de trabajo.3. Elija la pestaña Data source properties (Propiedades de origen de datos) y, a continuación, escriba la

información siguiente:

• S3 source type (Tipo de origen S3): (solo para orígenes de datos de Amazon S3) elija la opciónSelect a Catalog table (Seleccionar una tabla del catálogo) para utilizar una tabla del AWS GlueData Catalog existente.

• Database (Base de datos): elija la base de datos del Data Catalog que contiene la tabla de origenque desea utilizar para este trabajo. Puede utilizar el campo de búsqueda para buscar una base dedatos por su nombre.

• Table (Tabla): elija la tabla asociada a los datos de origen de la lista. Esta tabla ya debe existirenAWS Glue Data Catalog. Puede utilizar el campo de búsqueda para buscar una tabla por sunombre.

• Partition predicate (Predicado de partición): (sólo para orígenes de datos de Amazon S3) ingreseuna expresión booleana basada en Spark SQL que incluya sólo las columnas de partición. Porejemplo: "(year=='2020' and month=='04')"

• Temporary directory (Directorio temporal): (sólo para orígenes de datos de Amazon Redshift)ingrese una ruta de acceso para la ubicación de un directorio de trabajo en Amazon S3 donde sutrabajo de ETL puede escribir resultados intermedios temporales.

• Role associated with the cluster (Rol asociado al clúster): (sólo para orígenes de datos de AmazonRedshift) ingrese un rol para que utilice su trabajo de ETL que contenga permisos para clústeres deAmazon Redshift. Para obtener más información, consulte the section called “Permisos de origen dedatos y destino de datos” (p. 11).

Uso de un conector para el origen de datosSi selecciona un conector para el Node type (Tipo de nodo), siga las instrucciones en Creación de trabajoscon conectores personalizados (p. 85) para finalizar la configuración de las propiedades del origen dedatos.

29

Page 36: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de archivos en Amazon S3 para el origen de datos

Uso de archivos en Amazon S3 para el origen dedatosSi elige Amazon S3 como origen de datos, puede elegir entre lo siguiente:

• Una base de datos y una tabla del Data Catalog.• Un bucket, carpeta o archivo en Amazon S3.

Si utiliza un bucket de Amazon S3 como origen de datos, AWS Glue Studio detecta el esquema de losdatos en la ubicación especificada desde uno de los archivos o al utilizar el archivo especificado comoarchivo de muestra. La detección de esquemas se produce cuando se utiliza el botón Infer schema (Inferiresquema). Si cambia la ubicación de Amazon S3 o el archivo de ejemplo, debe elegir Infer schema (Inferiresquema) una vez más, para realizar la detección de esquemas utilizando la nueva información.

Para configurar un nodo de origen de datos que lea directamente desde archivos en Amazon S3

1. Vaya al editor visual para acceder a un trabajo nuevo o guardado.2. Elija un nodo de origen de datos en el diagrama de trabajo para un origen de Amazon S3.3. Elija la pestaña Data source properties (Propiedades de origen de datos) y, a continuación, escriba la

información siguiente:

• S3 source type (Tipo de origen de S3): (solo para orígenes de datos de Amazon S3) elija la opciónS3 location (Ubicación de S3).

• S3 URL (URL de S3): ingrese la ruta de acceso al bucket, carpeta o archivo de Amazon S3 quecontiene los datos de su trabajo. Puede elegir Browse S3 (Examinar S3) para seleccionar la ruta deacceso entre las ubicaciones disponibles para su cuenta.

• Recursive (Acción recursiva): elija esta opción si desea que AWS Glue Studio lea datos de archivosen carpetas secundarias en la ubicación de S3.

Si las carpetas secundarias contienen datos particionados, AWS Glue Studio no agrega ningunainformación de partición especificada en los nombres de carpeta al Data Catalog. Por ejemplo,considere la siguientes carpetas en Amazon S3:

S3://sales/year=2019/month=Jan/day=1S3://sales/year=2019/month=Jan/day=2

Si elige Recursive (Acción recursiva) y selecciona la carpeta sales como la ubicación de S3, AWSGlue Studio lee los datos en todas las carpetas secundarias, pero no crea particiones por año, meso día.

• Data format (Formato de datos): elija el formato en el que se almacenan los datos. Puede elegirJSON, CSV o Parquet. El valor que seleccione indica al trabajo de AWS Glue cómo leer los datosdel archivo de origen.

Note

Si no selecciona el formato correcto para los datos, AWS Glue Studio puede inferir bienel esquema, pero el trabajo no podrá analizar los datos del archivo de origen en formacorrecta.

Puede introducir opciones de configuración adicionales, en función del formato que elija.• JSON (JavaScript Object Notation)

• JsonPath: ingrese una ruta de JSON que apunte a un objeto que se usa para definir unesquema de tabla. Las expresiones de la ruta JSON siempre hacen referencia a una estructuraJSON de la misma manera que la expresión XPath se utiliza en combinación con un documento

30

Page 37: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de un origen de datos de streaming

XML. El “root member object (objeto miembro raíz)” en la ruta JSON siempre se conoce como$, incluso si es un objeto o matriz. La ruta de JSON se puede escribir en la notación de puntoso la notación de corchete.

Para obtener más información acerca de las rutas JSON, consulte JsonPath en el sitio webGitHub.

• Records in source files can span multiple lines (Los registros en los archivos de origen puedenabarcar varias líneas): elija esta opción si un solo registro puede abarcar varias líneas en elarchivo CSV.

• CSV (valores separados por comas)• Delimiter (Delimitador): escriba un carácter para indicar qué elemento va a separar cada

entrada de columna en la fila, por ejemplo, ; o ,.• Escape character (Carácter de escape): escriba un carácter que se utilice como carácter de

escape. Este carácter indica que el carácter que sigue inmediatamente al carácter de escapedebe tomarse en forma literal y no debe interpretarse como un delimitador.

• Quote characters (Caracteres de cita): ingrese el carácter que se utiliza para agrupar cadenasseparadas en un solo valor. Por ejemplo, debería elegir Double quote (") [Comilla doble (“)] sitiene valores como "This is a single value" en su archivo CSV.

• Records in source files can span multiple lines (Los registros en los archivos de origen puedenabarcar varias líneas): elija esta opción si un solo registro puede abarcar varias líneas en elarchivo CSV.

• First line of source file contains column headers (La primera línea del archivo de origencontiene encabezados de columna): elija esta opción si la primera fila del archivo CSV contieneencabezados de columna en lugar de datos.

• Parquet (almacenamiento en columna de Apache Parquet)

No hay ajustes adicionales que configurar para los datos almacenados en formato Parquet.• Partition predicate (Predicado de partición): para particionar los datos que se leen desde el origen

de datos, ingrese una expresión booleana basada en Spark SQL que incluya sólo las columnas departición. Por ejemplo: "(year=='2020' and month=='04')"

• Advanced options (Opciones avanzadas): expanda esta sección si desea que AWS Glue Studiodetecte el esquema de los datos en función de un archivo específico.• Schema inference (Inferencia de esquema): elija la opción Choose a sample file from S3 (Elegir

un archivo de ejemplo desde S3) si desea utilizar un archivo específico en lugar de permitir queAWS Glue Studio elija un archivo.

• Auto-sampled file (Archivo de ejemplo automático): ingrese la ruta de acceso al archivo enAmazon S3 que se utilizará para inferir el esquema.

Si está editando un nodo de origen de datos y cambia el archivo de ejemplo seleccionado, elijaReload schema (Volver a cargar esquema) para detectar el esquema mediante el nuevo archivo deejemplo.

4. Elija el botón Infer schema (Inferir esquema) para detectar el esquema a partir de los archivos deorigen en Amazon S3. Si cambia la ubicación de Amazon S3 o el archivo de ejemplo, debe elegir Inferschema (Inferir esquema) una vez más, para inferir el esquema con la nueva información.

Uso de un origen de datos de streamingPuede crear trabajos de extracción, transformación y carga (ETL) de streaming que se ejecuten en formacontinua y consuman datos de orígenes de streaming en Amazon Kinesis Data Streams, Apache Kafka yAmazon Managed Streaming for Apache Kafka (Amazon MSK).

31

Page 38: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de un origen de datos de streaming

Para configurar las propiedades de un origen de datos de streaming

1. Vaya al editor visual de gráficos para acceder a un trabajo nuevo o guardado.2. Elija un nodo de origen de datos en el gráfico para Kafka o Kinesis Data Streams.3. Elija la pestaña Data source properties (Propiedades de origen de datos) y, a continuación, escriba la

información siguiente:

Kinesis

• Kinesis source type (Tipo de origen de Kinesis): elija la opción Stream details (Detalles de latransmisión) para utilizar el acceso directo a la fuente de streaming o elegir Data Catalog table(Tabla de Data Catalog) a fin de utilizar la información almacenada allí en su lugar.

Si elige Stream details (Detalles de la transmisión), especifique la siguiente informaciónadicional.• Location of data stream (Ubicación de la secuencia de datos): elija si la transmisión se

encuentra dentro de la cuenta de usuario actual o si se encuentra en otra cuenta.• Region (Región): elija la Región de AWS donde existe la transmisión. Esta información se

utiliza con la finalidad de crear el ARN para acceder a la secuencia de datos.• Stream ARN (Transmisión de ARN): ingrese el nombre de recurso de Amazon (ARN) para

Kinesis Data Stream. Si la transmisión se encuentra en la cuenta corriente, puede elegir elnombre de la secuencia en la lista desplegable. Puede utilizar el campo de búsqueda parabuscar una secuencia de datos de datos por su nombre o ARN.

• Data format (Formato de los datos): elija el formato utilizado por la secuencia de datos de lalista.

AWS Glue Studio detecta de forma automática el esquema de los datos de streaming.

Si elige Data Catalog table (Tabla de Data Catalog), especifique la siguiente informaciónadicional.• Database (Base de datos): (opcional) elija la base de datos en el Data Catalog de AWS Glue

que contenga la tabla asociada al origen de datos de streaming. Puede utilizar el campo debúsqueda para buscar una base de datos por su nombre.

• Table (Tabla): (opcional) elija la tabla asociada a los datos de origen de la lista. Esta tablaya debe existir en el Data Catalog de AWS Glue. Puede utilizar el campo de búsqueda parabuscar una tabla por su nombre.

• Detect schema (Detectar esquemas): elija esta opción para que AWS Glue Studio detecteel esquema a partir de los datos de streaming, en lugar de almacenar la información delesquema en una tabla de del Data Catalog. Esta opción se habilita automáticamente si eligela opción Stream details (Detalles de la transmisión).

• Starting position (Posición inicial): de forma predeterminada, el trabajo de ETL utiliza la opciónEarliest (La primera), lo que significa que lee los datos desde el registro más antiguo disponibleen la transmisión. En su lugar, puede elegir Latest (El último), lo que indica que el trabajo deETL debería empezar a leer justo después del registro más reciente en la transmisión.

• Window size (Tamaño de ventana): de forma predeterminada, su trabajo de ETL procesa yescribe datos en ventanas de 100 segundos. Esto permite que los datos se procesen de formaeficiente y permite que las agregaciones se realicen en los datos que llegan más tarde de loprevisto. Puede modificar este tamaño de ventana para aumentar la puntualidad o la precisiónde agregación.

AWS GlueLos trabajos de streaming de utilizan puntos de control en lugar de marcadores detrabajo para realizar un seguimiento de los datos leídos.

• Advanced connection options (Opciones avanzadas de conexión): expanda esta secciónpara agregar pares de valor de clave a fin de especificar opciones de conexión adicionales.

32

Page 39: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de un origen de datos de streaming

Para obtener más información acerca de las opciones que puede especificar aquí, consulte“connectionType”: “kinesis” en la Guía para desarrolladores de AWS Glue.

Kafka

• Apache Kafka source (Fuente de Apache Kafka): elija la opción Stream details (Detalles de latransmisión) para utilizar el acceso directo a la fuente de streaming o elegir Data Catalog table(Tabla de Data Catalog) a fin de utilizar la información almacenada allí en su lugar.

Si elige Data Catalog table (Tabla de Data Catalog), especifique la siguiente informaciónadicional.• Database (Base de datos): (opcional) elija la base de datos en el Data Catalog de AWS Glue

que contenga la tabla asociada al origen de datos de streaming. Puede utilizar el campo debúsqueda para buscar una base de datos por su nombre.

• Table (Tabla): (opcional) elija la tabla asociada a los datos de origen de la lista. Esta tablaya debe existir en el Data Catalog de AWS Glue. Puede utilizar el campo de búsqueda parabuscar una tabla por su nombre.

• Detect schema (Detectar esquemas): elija esta opción para que AWS Glue Studio detecteel esquema a partir de los datos de streaming, en lugar de almacenar la información delesquema en una tabla del Data Catalog. Esta opción se habilita automáticamente si elige laopción Stream details (Detalles de la transmisión).

Si elige Stream details (Detalles de la transmisión), especifique la siguiente informaciónadicional.• Connection name (Nombre de la conexión): elija la conexión de AWS Glue que contiene la

información de acceso y autenticación para la secuencia de datos de Kafka. Debe utilizar unaconexión con los orígenes de datos de streaming de Kafka. Si no existe una conexión, puedeutilizar la consola de AWS Glue a fin de crear una conexión para la secuencia de datos deKafka.

• Topic name (Nombre del tema): ingrese el nombre del tema en el que se va a leer.• Data format (Formato de los datos): elija el formato que desea utilizar al leer datos de la

secuencia de eventos de Kafka.• Starting position (Posición inicial): de forma predeterminada, el trabajo de ETL utiliza la opción

Earliest (La primera), lo que significa que lee los datos desde el registro más antiguo disponibleen la transmisión. En su lugar, puede elegir Latest (El último), lo que indica que el trabajo deETL debería empezar a leer justo después del registro más reciente en la transmisión.

• Window size (Tamaño de ventana): de forma predeterminada, su trabajo de ETL procesa yescribe datos en ventanas de 100 segundos. Esto permite que los datos se procesen de formaeficiente y permite que las agregaciones se realicen en los datos que llegan más tarde de loprevisto. Puede modificar este tamaño de ventana para aumentar la puntualidad o la precisiónde agregación.

AWS GlueLos trabajos de streaming de utilizan puntos de control en lugar de marcadores detrabajo para realizar un seguimiento de los datos leídos.

• Advanced connection options (Opciones avanzadas de conexión): expanda esta secciónpara agregar pares de valor de clave a fin de especificar opciones de conexión adicionales.Para obtener más información acerca de las opciones que puede especificar aquí, consulte“connectionType”: “kafka” en la Guía para desarrolladores de AWS Glue.

Note

Las previsualizaciones de datos no se soportan actualmente para los orígenes de datos destreaming.

33

Page 40: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEdición del nodo de transformación de datos

Edición del nodo de transformación de datosAWS Glue Studio proporciona un conjunto de transformaciones integradas que puede utilizar paraprocesar los datos. Sus datos pasan de un nodo en el diagrama de trabajo a otro en una estructura dedatos denominada DynamicFrame, que es una extensión de un DataFrame de Apache Spark SQL.

En el diagrama rellenado previamente para un trabajo, entre el origen de datos y los nodos de destino dedatos se encuentra el nodo Transform - ApplyMapping (Transformación: aplicar mapeo). Puede configurareste nodo de transformación para modificar los datos o puede utilizar transformaciones adicionales.

AWS Glue Studio dispone de las siguientes transformaciones integradas:

• ApplyMapping (p. 34) (Aplicar asignación): asigne claves de propiedad de datos en el origen de datosa claves de propiedad de datos en el destino de datos. Puede cambiar el nombre de las claves, modificarlos tipos de datos de las claves y elegir las claves que desea descartar del conjunto de datos.

• SelectFields (p. 35) (Seleccionar campos): elija las claves de propiedad de datos que deseeconservar.

• DropFields (p. 36) (Descartar campos): elija las claves de propiedad de datos que desee descartar.• RenameField (p. 37) (Renombrar campos): cambie el nombre de una sola clave de propiedad de

datos.• Spigot (p. 38): escriba muestras de los datos en un bucket de Amazon S3.• Join (p. 38) (Combinar): combine dos conjuntos de datos en uno mediante una frase de comparación

en las claves de propiedad de datos especificadas. Puede utilizar combinaciones interna, externa,izquierda, derecha, semicombinación izquierda y anticombinación izquierda.

• SplitFields (p. 40) (Dividir campos): divida claves de propiedad de datos en dos DynamicFrames. Lasalida es una recopilación de DynamicFrames: uno con las claves de propiedad de datos seleccionadasy el otro con las claves de propiedad de datos restantes.

• SelectFromCollection (p. 41) (Seleccionar desde recopilación): elija un DynamicFrame de unarecopilación de DynamicFrames. La salida es el seleccionado DynamicFrame.

• FillMissingValues (p. 42) (Completar valores faltantes): para localizar registros en el conjunto dedatos que tienen valores faltantes y agregar un nuevo campo con un valor sugerido determinado porimputación

• Filter (p. 43) (Filtro): divida un conjunto de datos en dos, en función de una condición de filtro.• DropNullFields (p. 47) (p. 44): elimina columnas del conjunto de datos si todos los valores de la

columna son ‘nulos’.• SQL (p. 45): ingrese el código SparkSQL en un campo de entrada de texto para utilizar una consulta

SQL a fin de transformar los datos. La salida es un único DynamicFrame.• Aggregate (p. 47) (Agregado): realiza un cálculo (como el promedio, la suma, el mínimo, el máximo)

en los campos y filas seleccionados y crea un nuevo campo con los valores calculados recientemente.• Custom transform (p. 49) (Transformación personalizada): ingrese un código en un campo de

entrada de texto para utilizar transformaciones personalizadas. La salida es una recopilación deDynamicFrames.

Uso de ApplyMapping para reasignar claves depropiedad de datosUna transformación ApplyMapping vuelve a mapear las claves de propiedad de datos de origen en laconfiguración deseada para los datos de destino. En un nodo de transformación ApplyMapping, puederealizar los siguiente:

• Cambiar el nombre de varias claves de propiedad de datos.

34

Page 41: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de SelectFields (Seleccionar campos) para

eliminar la mayoría de las claves de propiedad de datos

• Cambiar el tipo de datos de las claves de propiedad de datos, si se soporta el nuevo tipo de datos yexiste una ruta de transformación entre los dos tipos de datos.

• Elegir un subconjunto de claves de propiedad de datos al indicar las claves de propiedad de datos quedesea descartar.

Puede agregar nodos ApplyMapping adicionales al diagrama de trabajo según sea necesario, por ejemplo,para modificar fuentes de datos adicionales o luego de una transformación Join.

Note

La trasformación ApplyMapping no distingue entre mayúsculas y minúsculas.

Para agregar un nodo de transformación ApplyMapping al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija ApplyMapping para agregar una nueva transformación al diagrama de trabajo,si es necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no está seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación) en el panel de detalles del nodo.4. Modifique el esquema de entrada:

• Para cambiar el nombre de una clave de propiedad de datos, escriba el nuevo nombre de la claveen el campo Target key (Clave de destino).

• Para cambiar el tipo de datos de una clave de propiedad de datos, elija el tipo de datos nuevo parala clave de la lista Data type (Tipo de datos).

• Para eliminar una clave de propiedad de datos del esquema de destino, seleccione la casilla Drop(Descartar) para esa clave.

5. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquemade datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

6. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Uso de SelectFields (Seleccionar campos) paraeliminar la mayoría de las claves de propiedad dedatosPuede crear un subconjunto de claves de propiedad de datos a partir del conjunto de datos mediante latransformación Seleccionar campos. Indique qué claves de propiedad de datos desea conservar y el restose eliminan del conjunto de datos.

Note

La transformación Seleccionar campos distingue entre mayúsculas y minúsculas. UseApplyMapping (Aplicar mapeo) si necesita una forma que no distinga entre mayúsculas yminúsculas para seleccionar campos.

35

Page 42: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de DropFields (Descartar campos) para

mantener la mayoría de las claves de propiedad

Para agregar un nodo de transformación Seleccionar campos al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija SelectFields (Seleccionar campos) para agregar una nueva transformación aldiagrama de trabajo, si es necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación) en el panel de detalles del nodo.4. En el encabezado SelectFields (Seleccionar campos) elija las claves de propiedad de datos en el

conjunto de datos que desea conservar. Las claves de propiedad de datos no seleccionadas sedescartan del conjunto de datos.

También puede seleccionar la casilla junto al encabezado de la columna Field (Campo) para elegirautomáticamente todas las claves de propiedad de datos en el conjunto de datos. Luego, puedeanular la selección de claves de propiedad de datos individuales para eliminarlas del conjunto dedatos.

5. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquemade datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

6. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Uso de DropFields (Descartar campos) para mantenerla mayoría de las claves de propiedadPuede crear un subconjunto de claves de propiedad de datos a partir del conjunto de datos mediante latransformación Descartar campos. Indique qué claves de propiedad de datos desea eliminar del conjuntode datos y el resto de las claves se conservan.

Note

La transformación Descartar campos distingue entre mayúsculas y minúsculas. UseApplyMapping (Aplicar mapeo) si necesita una forma que no distinga entre mayúsculas yminúsculas para seleccionar campos.

Para agregar un nodo de transformación Descartar campos al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija DropFields (Descartar campos) para agregar una nueva transformación aldiagrama de trabajo, si es necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación) en el panel de detalles del nodo.4. En el encabezado DropFields (Descartar campos), elija las claves de propiedad de datos que desea

descartar del origen de datos.

36

Page 43: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCambio de nombre de un campo en el conjunto de datos

También puede seleccionar la casilla junto al encabezado de la columna Field (Campo) para elegirautomáticamente todas las claves de propiedad de datos en el conjunto de datos. Luego, puedeanular la selección de claves de propiedad de datos individuales para que se conserven en el conjuntode datos.

5. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquemade datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

6. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Cambio de nombre de un campo en el conjunto dedatosPuede utilizar la transformación RenameField (Renombrar campo) para cambiar el nombre de una clave depropiedad individual en el conjunto de datos.

Note

La transformación Renombrar campo distingue entre mayúsculas y minúsculas. UseApplyMapping (Aplicar mapeo) si necesita una transformación que no distinga entre mayúsculas yminúsculas.

Tip

Si utiliza la transformación Aplicar mapeo, puede cambiar el nombre de varias claves depropiedad de datos en el conjunto de datos con una única transformación.

Para agregar un nodo de transformación Renombrar campo al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija RenameFields (Renombrar campos) para agregar una nueva transformación aldiagrama de trabajo, si es necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación).4. En el encabezado Data field (Campo de datos), elija una clave de propiedad de los datos de origen y,

a continuación, escriba un nuevo nombre en el cuadro New field name (Nombre de campo nuevo).5. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquema

de datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

6. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija esta

37

Page 44: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de Spigot para tomar muestras del conjunto de datos

pestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Uso de Spigot para tomar muestras del conjunto dedatosPara probar las transformaciones realizadas por el trabajo, es posible que desee obtener una muestrade los datos para comprobar que la transformación funciona según lo previsto. La transformación Spigotescribe un subconjunto de registros del conjunto de datos en un archivo JSON en un bucket de AmazonS3. El método de muestreo de datos puede ser un número especificado de registros del principio delarchivo o un factor de probabilidad utilizado para elegir los registros.

Para agregar un nodo de transformación Spigot al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija Spigot para agregar una nueva transformación al diagrama de trabajo, si esnecesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación) en el panel de detalles del nodo.4. Escriba una ruta de Amazon S3 o elija Browse S3 (Examinar S3) para elegir una ubicación en Amazon

S3. Esta es la ubicación donde el trabajo escribe el archivo JSON que contiene la muestra de datos.5. Ingrese la información para el método de muestreo. Puede especificar un valor para Number of

records (Número de registros) que se escribirá desde el principio del conjunto de datos y un Probabilitythreshold (Umbral de probabilidad) (que se ingresa como un valor decimal con un valor máximo de 1)para seleccionar cualquier registro determinado.

Por ejemplo, para escribir los primeros 50 registros del conjunto de datos, debe establecer Number ofrecords en 50 y Probability threshold en 1 (100 %).

Combinación de conjuntos de datosLa transformación Join (Combinación) le permite combinar dos conjuntos de datos en uno. Especifique losnombres de clave en el esquema de cada conjunto de datos que desea comparar. El DynamicFrame desalida contiene las filas donde las claves cumplen la condición de combinación. Las filas de cada conjuntode datos que cumplen con la condición de combinación se combinan en una sola fila en el DynamicFramede salida que contiene todas las columnas encontradas en cualquiera de los conjuntos de datos.

Para agregar un nodo de transformación de combinación al diagrama de trabajo

1. Si sólo hay un origen de datos disponible, debe agregar un nuevo nodo de origen de datos aldiagrama de trabajo. Para obtener más información, consulte Agregado de nodos al diagrama detrabajo (p. 61).

2. Elija uno de los nodos de origen para la combinación. Elija Transform (Transformación) en la barra deherramientas situada en la parte superior del editor visual y elija Join (Combinación) para agregar unanueva transformación al diagrama de trabajo.

3. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo.

4. En la pestaña Node properties (Propiedades del nodo), en el encabezado Node parents (Nodosprincipales), agregue un nodo principal para que haya dos conjuntos de datos que proporcionen

38

Page 45: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCombinación de conjuntos de datos

entradas para la combinación. El principal puede ser un nodo de origen de datos o un nodo detransformación.

Note

Una combinación sólo puede tener dos nodos principales.5. Elija la pestaña Transform (Transformación).

Si aparece un mensaje que indica que hay nombres de clave conflictivos, puede:

• Seleccionar Resolve it (Resolver) para agregar automáticamente un nodo de transformaciónApplyMapping (Aplicar mapeo) en el diagrama de trabajo. El nodo Aplicar mapeo agrega un prefijoa cualquier clave del conjunto de datos que tenga el mismo nombre que una clave del otro conjuntode datos. Por ejemplo, si utiliza el valor predeterminado de right, cualquier clave en el conjuntode datos derecho que tenga el mismo nombre que una clave en el conjunto de datos izquierdocambiará de nombre a (right)key name.

• Agregue manualmente un nodo de transformación con anterioridad en el diagrama de trabajo paraeliminar o cambiar el nombre de las claves en conflicto.

6. Elija el tipo de combinación en la lista Join type (Tipo de combinación).

• Inner join (Combinación interna): devuelve una fila con columnas de ambos conjuntos de datos paracada coincidencia basada en la condición de combinación. Las filas que no satisfacen la condiciónde combinación no se devuelven.

• Left join (Combinación izquierda): todas las filas del conjunto de datos izquierdo y solo las filas delconjunto de datos derecho que satisfacen la condición de combinación.

• Right join (Combinación derecha): todas las filas del conjunto de datos derecho y solo las filas delconjunto de datos izquierdo que satisfacen la condición de combinación.

• Outer join (Combinación externa): todas las filas de ambos conjuntos de datos.• Left semi join (Semicombinación izquierda): todas las filas del conjunto de datos izquierdo que

tienen una coincidencia en el conjunto de datos derecho en función de la condición de combinación.• Left anti join (Anticombinación izquierda): todas las filas del conjunto de datos izquierdo que no

tienen una coincidencia en el conjunto de datos derecho en función de la condición de combinación.7. En la pestaña Transform (Transformación), en el encabezado Join conditions (Condiciones de

combinación), elija Add condition (Agregar condición). Elija una clave de propiedad de cada conjuntode datos para comparar. Las claves de propiedad en el lado izquierdo del operador de comparación seconocen como el conjunto de datos izquierdo y las claves de propiedad de la derecha se denominanconjunto de datos derecho.

Para condiciones de combinación más complejas, puede agregar claves coincidentes adicionales alseleccionar Add condition (Agregar condición) más de una vez. Si agrega una condición por accidente,puede elegir el ícono de eliminación ( ) para eliminarla.

8. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquemade datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

9. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

39

Page 46: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de SplitFields (Dividir campos)

para dividir un conjunto de datos en dos

Para obtener un ejemplo del esquema de salida de combinación, considere una combinación entre dosconjuntos de datos con las siguientes claves de propiedad:

Left: {id, dept, hire_date, salary, employment_status}Right: {id, first_name, last_name, hire_date, title}

La combinación está configurada para que coincida en las claves id y hire_date mediante el operadorde comparación =.

Debido a que ambos conjuntos de datos contienen claves id y hire_date, debe elegir Resolve it(Resolver) para agregar automáticamente el prefijo right a las claves del conjunto de datos correcto.

Las claves en el esquema de salida serían:

{id, dept, hire_date, salary, employment_status, (right)id, first_name, last_name, (right)hire_date, title}

Uso de SplitFields (Dividir campos) para dividir unconjunto de datos en dosLa transformación SplitFields (Dividir campos) le permite elegir algunas de las claves de propiedad dedatos en el conjunto de datos de entrada para ponerlas en un conjunto de datos y colocar las clavesno seleccionadas en otro conjunto de datos independiente. La salida de esta transformación es unarecopilación de DynamicFrames.

Note

Debe utilizar la transformación SelectFromCollection (Seleccionar desde la recopilación) paraconvertir la recopilación de DynamicFrames en un solo DynamicFrame antes de enviar la salidaa una ubicación de destino.

La transformación Dividir campos distingue entre mayúsculas y minúsculas. Agregue una transformaciónApplyMapping (Aplicar mapeo)como nodo principal si necesita nombres de clave de propiedad que nodistingan entre mayúsculas y minúsculas.

Para agregar un nodo de transformación Dividir campos al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija SplitFields (Dividir campos) para agregar una nueva transformación al diagramade trabajo, si es necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación).4. Elija las claves de propiedad que desea poner en el primer conjunto de datos. Las claves que no elija

se colocan en el segundo conjunto de datos.5. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquema

de datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

6. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a los

40

Page 47: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioInformación general de la

transformación SelectFromCollection

datos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

7. Configure un nodo de transformación SelectFromCollection (Seleccionar desde la recopilación) paraprocesar los conjuntos de datos resultantes.

Información general de la transformaciónSelectFromCollectionAlgunas transformaciones tienen múltiples conjuntos de datos como salida en lugar de un único conjuntode datos, por ejemplo, Dividir campos. La transformación Seleccionar desde recopilación seleccionaun conjunto de datos (DynamicFrame) desde una recopilación de conjuntos de datos (una matriz deDynamicFrames). El resultado de la transformación es el seleccionado DynamicFrame.

Debe utilizar esta transformación después de utilizar una transformación que crea una recopilación deDynamicFrames, por ejemplo:

• Transformaciones de código personalizado• SplitFields

Si no agrega un nodo de transformación Seleccionar desde recopilación a su diagrama de trabajo despuésde cualquiera de estas transformaciones, su trabajo arrojará error.

El nodo principal de esta transformación debe ser un nodo que devuelve una recopilación deDynamicFrames. Si elige un nodo principal para este nodo de transformación que devuelve un únicoDynamicFrame, como una transformación Combinación, su trabajo arroja un error.

Del mismo modo, si usa un nodo Seleccionar desde recopilación en el diagrama de trabajo como nodoprincipal de una transformación que espera un único DynamicFrame como entrada, su trabajo arroja unerror.

Uso de SelectFromCollection (Seleccionar desde larecopilación) para elegir qué conjunto de datos deseamantenerUse la transformación Seleccionar desde recopilación para convertir una recopilación de DynamicFramesen un solo DynamicFrame.

Para agregar un nodo de transformación Seleccionar desde recopilación al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija SelectFromCollection (Seleccionar desde la recopilación) para agregar unanueva transformación al diagrama de trabajo, si es necesario.

41

Page 48: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioBuscar y rellenar valores faltantes en un conjunto de datos

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación).4. En el encabezado Frame index (Índice del marco), elija el número de índice de la matriz que

corresponde al DynamicFrame que desea seleccionar de la recopilación de DynamicFrames.

Por ejemplo, si el nodo principal de esta transformación es Dividir campos, podrá ver el esquema paracada DynamicFrame en la pestaña Output schema (Esquema de salida) del nodo. Si desea mantenerel DynamicFrame asociado al esquema para Output 2 (Salida 2), debería seleccionar 1 para el valorde Frame index (Índice del marco), que es el segundo valor de la lista.

Solo el DynamicFrame que elija se incluye en la salida.5. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquema

de datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

6. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Buscar y rellenar valores faltantes en un conjunto dedatosPuede utilizar la transformación FillMissingValues (Completar valores faltantes) para localizar registrosen el conjunto de datos que tienen valores faltantes y agregar un nuevo campo con un valor determinadopor imputación. El conjunto de datos de entrada se utiliza para brindar formación al modelo de machinelearning (ML) que determina cuál debe ser el valor que falta. Si utiliza conjuntos de datos progresivos, cadaconjunto progresivo se utiliza como datos de formación para el modelo de ML, por lo que es posible que losresultados no sean tan precisos.

Para utilizar un nodo de transformación FillMissingValues (Completar valores faltantes) en eldiagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija FillMissingValues (Completar valores faltantes) para agregar una nuevatransformación al diagrama de trabajo, si es necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no está seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación).4. Para Data field (Campo de datos), elija el nombre de columna o campo de los datos de origen que

desea analizar para detectar los valores que faltan.5. (Opcional) en el campo New field name (Nombre de campo nuevo), ingrese un nombre para el campo

agregado a cada registro que contendrá el valor de reemplazo estimado para el campo analizado.Si el campo analizado no tiene un valor faltante, el valor del campo analizado se copia en el nuevocampo.

42

Page 49: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioFiltrado de claves dentro de un conjunto de datos

Si no especifica un nombre para el campo nuevo, el nombre predeterminado es el nombre de lacolumna analizada con _filledasociado. Por ejemplo, si ingresa Age para el Data field (Campo dedatos) y no especifica un valor para New field name (Nombre de campo nuevo), se agrega un nombrede campo nuevo Age_filled a cada registro.

6. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquemade datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

7. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Filtrado de claves dentro de un conjunto de datosUse la transformación Filter (Filtro) para crear un nuevo conjunto de datos al filtrar los registros delconjunto de datos de entrada en función de una expresión regular. Las filas que no satisfacen la condicióndel filtro se eliminan de la salida.

• Para los tipos de datos de cadena, puede filtrar filas en las que el valor de clave coincida con unacadena especificada.

• Para los tipos de datos numéricos, puede filtrar filas mediante la comparación del valor clave con unvalor especificado a través de los operadores de comparación <, >, =, !=, <= y >=.

Si especifica varias condiciones de filtro, los resultados se combinan mediante un operador AND de formapredeterminada, pero puede elegir OR en su lugar.

La transformación Filtro distingue entre mayúsculas y minúsculas. Agregue una transformaciónApplyMapping (Aplicar mapeo)como nodo principal si necesita nombres de clave de propiedad que nodistingan entre mayúsculas y minúsculas.

Para agregar un nodo de transformación de filtro al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija Filter (Filtro) para agregar una nueva transformación al diagrama de trabajo, sies necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, elija un nodo de la lista Nodeparents (Nodos principales) para utilizar como origen de entrada para la transformación.

3. Elija la pestaña Transform (Transformación).4. Elija Global AND (Global Y) o Global OR (Global O). Esto determina cómo se combinan distintas

condiciones de filtro. Todas las condiciones se combinan mediante operaciones AND o OR. Si solotiene una sola condición de filtro, puede elegir entre cualquiera de las dos.

5. Elija el botón Add condition (Agregar condición) en la sección Filter condition (Condición de filtro) paraagregar una condición de filtro.

En el campo Key (Clave), elija un nombre de clave de propiedad a partir del conjunto de datos. En elcampo Operation (Operación) elija el operador de comparación. En el campo Value (Valor), ingrese elvalor de comparación. Estas son algunas ejemplos de condiciones de filtro:

• year >= 2018

43

Page 50: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de DropNullFields para

eliminar campos con valores nulos

• State matches 'CA*'

Cuando filtra los valores de cadena, asegúrese de que el valor de comparación utiliza un formato deexpresión regular que coincida con el lenguaje de script seleccionado en las propiedades del trabajo(Python o Scala).

6. Agregue condiciones de filtro adicionales, según sea necesario.7. (Opcional) después de configurar las propiedades del nodo de transformación, puede ver el esquema

de datos para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel dedetalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se le pediráque proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM en Jobdetails (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

8. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

Uso de DropNullFields para eliminar campos convalores nulosUtilice la transformación DropNullFields para eliminar campos del conjunto de datos si todos los valoresson ‘nulos’. De forma predeterminada, AWS Glue Studio reconocerá objetos nulos, pero algunos valores,como cadenas vacías, cadenas que son “nulas”, los enteros -1 u otros marcadores de posición, comoceros, no se reconocen de manera automática como nulos.

Para utilizar DropNullFields

1. Agregue un nodo DropNullFields al diagrama de trabajo.2. En la pestaña Node properties (Propiedades del nodo), elija valores adicionales que representen un

valor nulo. Puede elegir seleccionar todos los valores o ninguno:

44

Page 51: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de una consulta SQL para transformar datos

• Cadena vacía (“” o “): los campos que contienen cadenas vacías se eliminarán• “cadena null”: los campos que contienen la cadena con la palabra ‘null’ se eliminarán• entero -1: los campos que contienen un entero -1 (uno negativo) se eliminarán

3. Si es necesario, también puede especificar valores nulos personalizados. Son valores nulos quepueden ser exclusivos de su conjunto de datos. Para agregar un valor nulo personalizado, elija Addnew value (Agregar un nuevo valor).

4. Ingrese el valor nulo personalizado. Por ejemplo, puede ser cero o cualquier valor que se utilice pararepresentar un valor nulo en el conjunto de datos.

5. Elija el tipo de datos en el campo desplegable. Los tipos de datos pueden ser String o Integer.

Note

Los valores nulos personalizados y los tipos de datos deben coincidir con exactitud para quelos campos se reconozcan como valores nulos y se eliminen. Las coincidencias parcialesen las que solo coincide el valor nulo personalizado, pero el tipo de datos no lo hace, noprovocarán que los campos se eliminen.

Uso de una consulta SQL para transformar datosPuede usar una transformación SQL para escribir su propia transformación en forma de consulta SQL.

Un nodo de transformación SQL puede tener varios conjuntos de datos como entradas, pero solo produceun único conjunto de datos como salida. Contiene un campo de texto, donde se introduce la consulta deApache SparkSQL. Puede asignar alias a cada conjunto de datos utilizado como entrada, para ayudarsimplemente a la consulta SQL. Para obtener más información acerca de la sintaxis SQL, consultedocumentación de Spark SQL.

Note

Si utiliza una transformación de Spark SQL con un origen de datos ubicado en una VPC, agregueun punto de enlace de desarrollo de la VPC de AWS Glue a la VPC que contenga el origende datos. Para obtener más información acerca de la configuración de puntos de enlace dedesarrollo, consulte Agregar un punto de enlace de desarrollo, Configuración del entorno parapuntos de enlace de desarrollo y Acceso al punto de enlace de desarrollo en la Guía paradesarrolladores de AWS Glue.

Para agregar un nodo de transformación SQL al diagrama de trabajo

1. (Opcional) agregue un nodo de transformación al diagrama de trabajo, de ser necesario. SeleccioneSpark SQL para el tipo de nodo.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, o si desea varias entradaspara la transformación SQL, elija un nodo en la lista Node parents (Nodos principales) que se utilizarácomo origen de entrada para la transformación. Agregue nodos principales adicionales según seanecesario.

3. Elija la pestaña Transform (Transformación) en el panel de detalles del nodo.4. Los conjuntos de datos de origen para la consulta SQL se identifican mediante los nombres

especificados en el campo Name (Nombre) para cada nodo. Si no desea utilizar estos nombres o silos nombres no son adecuados para una consulta SQL, puede asociar un nombre a cada conjunto dedatos. La consola proporciona alias predeterminados, como MyDataSource.

45

Page 52: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de una consulta SQL para transformar datos

Por ejemplo, si un nodo principal para el nodo de transformación SQL se denomina Rename Org PKfield, puede asociar el nombre org_table con este conjunto de datos. Este alias se puede utilizaren la consulta SQL en lugar del nombre del nodo.

5. En el campo de entrada de texto bajo el encabezado Code block (Bloque de código), pegue o escribala consulta SQL. El campo de texto muestra resaltado de sintaxis SQL y sugerencias de palabrasclave.

6. Con el nodo de transformación SQL seleccionado, elija la opción Output schema (Esquema de salida)y, a continuación, elija Edit (Editar). Proporcione las columnas y los tipos de datos que describen loscampos de salida de la consulta SQL.

Especifique el esquema mediante las siguientes acciones en la sección Output schema (Esquema desalida) de la página:

• Para cambiar el nombre de una columna, coloque el cursor en el cuadro de texto Key (Clave) parala columna [también conocido como field (campo) o property key (clave de propiedad)] e ingrese elnuevo nombre.

• Para cambiar el tipo de datos de una columna, seleccione el nuevo tipo de datos para la columna enla lista desplegable.

• Para agregar una nueva columna de nivel superior al esquema, elija la opción Overflow(Desbordamiento) ( ) y, a continuación, elija Add root key (Agregar clave raíz). Se agregannuevas columnas en la parte superior del esquema.

• Para eliminar una columna del esquema, elija el ícono de eliminación ( ) en el extremo derechodel nombre de la clave.

7. Cuando termine de especificar el esquema de salida, elija Apply (Aplicar) para guardar los cambios ysalir del editor de esquemas. Si no desea guardar los cambios, elija Cancel (Cancelar) para editar eleditor de esquemas.

8. (Opcional) después de configurar las propiedades del nodo y las propiedades de transformación,puede obtener una previsualización del conjunto de datos modificado si selecciona la opción Datapreview (Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija estapestaña para cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

46

Page 53: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de agregado para realizar cálculos de

resumen en los campos seleccionados

Uso de agregado para realizar cálculos de resumenen los campos seleccionadosPara utilizar la transformación agregada

1. Agregue el nodo agregado al diagrama de trabajos.2. En la pestaña Node properties (Propiedades del nodo), elija los campos para agruparlos al seleccionar

el campo desplegable (opcional). Puede seleccionar más de un campo a la vez o buscar un nombrede campo al escribir en la barra de búsqueda.

Cuando se seleccionan los campos, se muestran el nombre y el tipo de datos. Para eliminar uncampo, seleccione ‘X’.

47

Page 54: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de agregado para realizar cálculos de

resumen en los campos seleccionados

3. Elija Aggregate another column (Agregar otra columna). Es necesario seleccionar al menos un campo.

48

Page 55: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCrear una transformación personalizada

4. Elija un campo en el Field to aggretate (Campo a agregar) desplegable.5. Elija la función de agregación que desea aplicar al campo elegido:

• avg: calcula el promedio• countDistinct: calcula el número de valores únicos no nulos• count: calcula el número de valores no nulos• first: devuelve el primer valor que satisface los criterios “agrupar por”• last: devuelve el último valor que satisface los criterios “agrupar por”• kurtosis: calcula la nitidez del pico de una curva de distribución de frecuencias• max: devuelve el valor más alto que satisface los criterios “agrupar por”• min: devuelve el valor más bajo que satisface los criterios “agrupar por”• sesgo: medida de la asimetría de la distribución de probabilidad de una distribución normal• stddev_pop: calcula la desviación estándar de la población y devuelve la raíz cuadrada de la

variación de la población• sum: la suma de todos los valores en el grupo• sumDistinct: la suma de distintos valores en el grupo• var_samp: la variación de la muestra del grupo (ignora los valores nulos)• var_pop: la variación de la población del grupo (ignora los valores nulos)

Crear una transformación personalizadaSi necesita realizar transformaciones más complicadas en sus datos o desea agregar claves de propiedadde datos al conjunto de datos, puede agregar una transformación Custom code (Código personalizado) aldiagrama de trabajo. El nodo Custom code (Código personalizado) permite introducir un script que realizala transformación.

Cuando utilice el código personalizado, debe utilizar un editor de esquemas para indicar los cambiosrealizados en la salida a través del código personalizado. Cuando edita el esquema, puede realizar lassiguientes acciones:

• Agregar o eliminar claves de propiedades de datos• Cambiar el tipo de datos de las claves de propiedad de datos• Cambiar el nombre de las claves de propiedad de datos• Reestructurar una clave de propiedad anidada

Debe utilizar una transformación SelectFromCollection (Seleccionar desde la recopilación) para elegir unúnico DynamicFrame del resultado del nodo de transformación personalizado antes de enviar la salida auna ubicación de destino.

Utilice las siguientes tareas para agregar un nodo de transformación personalizado al diagrama de trabajo.

Agregar un nodo de transformación de código personalizado aldiagrama de trabajoPara agregar un nodo de transformación personalizado al diagrama de trabajo

1. (Opcional) elija Transform (Transformación) en la barra de herramientas situada en la parte superiordel editor visual y elija Custom transform (Transformación personalizada) para agregar una nuevatransformación al diagrama de trabajo, si es necesario.

2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en eldiagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, o si desea varias entradas

49

Page 56: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCrear una transformación personalizada

para la transformación personalizada, elija un nodo en la lista Node parents (Nodos principales) que seutilizará como origen de entrada para la transformación.

Introducción de código para el nodo de transformaciónpersonalizadoPuede escribir o copiar el código en un campo de entrada. El trabajo utiliza este código para realizar latransformación de datos. Puede proporcionar un fragmento de código en Python o Scala. El código debetener uno o varios DynamicFrames como entrada y devuelve una recopilación de DynamicFrames.

Para escribir el script para un nodo de transformación personalizado

1. Con el nodo de transformación personalizado seleccionado en el diagrama de trabajo, elija la pestañaTransform (Transformación).

2. En el campo de entrada de texto en el encabezado Code block (Bloque de código), pegue o escriba elcódigo para la transformación. El código que utilice debe coincidir con el lenguaje especificado para eltrabajo en la pestaña Job details (Detalles del trabajo).

Al hacer referencia a los nodos de entrada en el código, AWS Glue Studio nombra losDynamicFrames que devuelven los nodos del diagrama de trabajo de manera secuencial en funcióndel orden de creación. Utilice uno de los siguientes métodos de nomenclatura en el código:

• Generación de código clásico: utilice nombres funcionales para hacer referencia a los nodos deldiagrama de trabajo.• Nodo de origen de datos: DataSource0, DataSource1, DataSource2, etc.• Nodos de transformación: Transform0, Transform1, Transform2, etc.

• Nueva generación de código: utilice el nombre especificado en la pestaña Nodeproperties (Propiedades del nodo) de un nodo, anexado con ‘_node1’, ‘_node2’, y asísucesivamente. Por ejemplo, S3bucket_node1, ApplyMapping_node2, S3bucket_node2,MyCustomNodeName_node1.

Para obtener más información acerca del nuevo generador de código, consulte Generación de códigode script (p. 28).

Los siguientes ejemplos muestran el formato del código que se va a introducir en el cuadro de código:

Python

En el siguiente ejemplo se toma el primer DynamicFrame recibido, se convierte en un valor deDataFrame para aplicar el método de filtro nativo (se mantienen solo los registros que tienen más de1000 votos), luego se convierte nuevamente en un DynamicFrame antes de que se devuelva.

def FilterHighVoteCounts (glueContext, dfc) -> DynamicFrameCollection: df = dfc.select(list(dfc.keys())[0]).toDF() df_filtered = df.filter(df["vote_count"] > 1000) dyf_filtered = DynamicFrame.fromDF(df_filtered, glueContext, "filter_votes") return(DynamicFrameCollection({"CustomTransform0": dyf_filtered}, glueContext))

Scala

En el siguiente ejemplo se toma el primer DynamicFrame recibido, se convierte en un valor deDataFrame para aplicar el método de filtro nativo (se mantienen solo los registros que tienen más de1000 votos), luego se convierte nuevamente en un DynamicFrame antes de que se devuelva.

object FilterHighVoteCounts {

50

Page 57: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCrear una transformación personalizada

def execute(glueContext : GlueContext, input : Seq[DynamicFrame]) : Seq[DynamicFrame] = { val frame = input(0).toDF() val filtered = DynamicFrame(frame.filter(frame("vote_count") > 1000), glueContext) Seq(filtered) }}

Edición de esquema para un nodo de transformaciónpersonalizadoCuando utiliza un nodo de transformación personalizado, AWS Glue Studio no puede inferirautomáticamente los esquemas de salida creados por la transformación. Utilice el editor de esquemas paradescribir los cambios de esquema implementados por el código de transformación personalizado.

Un nodo de código personalizado puede tener cualquier número de nodos principales, cada uno de loscuales proporciona un DynamicFrame como entrada para su código personalizado. Un nodo de códigopersonalizado devuelve una recopilación de DynamicFrames. Cada DynamicFrame que se utiliza comoentrada tiene asociado un esquema. Debe agregar un esquema que describa cada DynamicFramedevuelto por el nodo de código personalizado.

Note

Cuando configura su propio esquema en una transformación personalizada, AWS Glue Studiono hereda esquemas de nodos anteriors. Para actualizar el esquema, seleccione el nodo detransformación personalizada y, a continuación, elija la pestaña Data preview (Vista previa dedatos). Una vez generada la vista previa, elija 'Use Preview Schema' (Usar esquema de vistaprevia). A continuación, el esquema será reemplazado por el esquema utilizando los datos devista previa.

Para editar los esquemas de un nodo de transformación personalizado

1. Con el nodo de transformación personalizado seleccionado en el diagrama de trabajo, elija la pestañaOutput schema (Esquema de salida), en el panel de detalles del nodo.

2. Seleccione Edit (Editar) para realizar cambios al esquema.

Si tiene claves de propiedad de datos anidadas, como una matriz u objeto, puede elegir el ícono

Expand-Rows (Expandir filas) ( ) en la parte superior derecha del panel de cada esquema paraexpandir la lista de claves de propiedades de datos secundarias. Después de seleccionarlo, el íconocambia a Collapse-Rows (Contraer filas) ( ), que puede elegir para contraer la lista de claves depropiedad secundarias.

3. Modifique el esquema mediante las siguientes acciones en la sección situada en la parte derecha dela página:

• Para cambiar el nombre de una clave de propiedad, coloque el cursor en el cuadro de texto Key(Clave) para la clave de propiedad y, a continuación, escriba el nuevo nombre.

• Para cambiar el tipo de datos de una clave de propiedad, utilice la lista para elegir un nuevo tipo dedatos para la clave de propiedad.

• Para agregar una nueva clave de propiedad de nivel superior al esquema, elija el ícono Overflow(Desbordamiento) ( ) a la izquierda del botón Cancel (Cancelar) y luego elija Add root key(Agregar clave raíz).

• Para agregar una clave de propiedad secundaria al esquema, elija el ícono Add-Key (Agrega clave) asociado a la clave principal. Escriba un nombre para la clave secundaria y elija el tipo de datos.

• Para eliminar una clave de propiedad del esquema, elija el ícono Remove (Eliminar) ( ) en elextremo derecho del nombre de la clave.

51

Page 58: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de agregado para realizar cálculos de

resumen en los campos seleccionados

4. Si su código de transformación personalizado utiliza múltiples DynamicFrames, puede agregaresquemas de salida adicionales.

• Para agregar un esquema nuevo, vacío, elija la opción Overflow (Desbordamiento) ( ) y, acontinuación, elija Add output schema (Agregar esquema de salida).

• Para copiar un esquema existente en un nuevo esquema de salida, asegúrese de que el esquemaque desea copiar se muestra en el selector de esquema. Elija el ícono Overflow (Desbordamiento)( ) y, a continuación, elija Duplicate (Duplicar).

Si desea eliminar un esquema de salida, asegúrese de que el esquema que desea copiar se muestraen el selector de esquema. Elija el ícono Overflow (Desbordamiento) ( ) y, a continuación, elijaDelete (Eliminar).

5. Agregue nuevas claves raíz al nuevo esquema o edite las claves duplicadas.6. Cuando modifique los esquemas de salida, elija el botón Apply (Aplicar) para guardar los cambios y

salir del editor de esquemas.

Si no desea guardar los cambios, elija Cancel (Cancelar).

Configurar la salida de transformación personalizadaUna transformación de código personalizado devuelve una recopilación de DynamicFrames, aún cuandohaya solo un DynamicFrame en el conjunto de resultados.

Para procesar la salida desde un nodo de transformación personalizado

1. Agregue un nodo de transformación SelectFromCollection (Seleccionar desde la recopilación), quetenga el nodo de transformación personalizado como su nodo principal. Actualice esta transformaciónpara indicar qué conjunto de datos desea utilizar. Para obtener más información, consulte Uso deSelectFromCollection (Seleccionar desde la recopilación) para elegir qué conjunto de datos deseamantener (p. 41).

2. Agregue una transformación Seleccionar desde recopilación adicional al diagrama de trabajo si deseautilizar DynamicFrames adicionales, producidos por el nodo de transformación personalizado.

Considere un escenario en el que agrega un nodo de transformación personalizado para dividirun conjunto de datos de vuelo en varios conjuntos de datos, pero duplica algunas de las claves depropiedad de identificación en cada esquema de salida, como la fecha de vuelo o el número de vuelo.Agregue un nodo de transformación Seleccionar desde la recopilación para cada esquema de salida,con el nodo de transformación personalizado como su nodo principal.

3. (Opcional) a continuación, puede usar cada nodo de transformación Seleccionar desde la recopilacióncomo entrada para otros nodos del trabajo, o como nodo principal para un nodo de destino de datos.

Uso de agregado para realizar cálculos de resumenen los campos seleccionadosPara utilizar la transformación agregada

1. Agregue el nodo agregado al diagrama de trabajos.2. En la pestaña Node properties (Propiedades del nodo), elija los campos para agruparlos al seleccionar

el campo desplegable (opcional). Puede seleccionar más de un campo a la vez o buscar un nombrede campo al escribir en la barra de búsqueda.

52

Page 59: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioUso de agregado para realizar cálculos de

resumen en los campos seleccionados

Cuando se seleccionan los campos, se muestran el nombre y el tipo de datos. Para eliminar uncampo, seleccione ‘X’.

3. Elija Aggregate another column (Agregar otra columna). Es necesario seleccionar al menos un campo.

53

Page 60: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioConfiguración de nodos de destino de datos

4. Elija un campo en el Field to aggretate (Campo a agregar) desplegable.5. Elija la función de agregación que desea aplicar al campo elegido:

• avg: calcula el promedio• countDistinct: calcula el número de valores únicos no nulos• count: calcula el número de valores no nulos• first: devuelve el primer valor que satisface los criterios “agrupar por”• last: devuelve el último valor que satisface los criterios “agrupar por”• kurtosis: calcula la nitidez del pico de una curva de distribución de frecuencias• max: devuelve el valor más alto que satisface los criterios “agrupar por”• min: devuelve el valor más bajo que satisface los criterios “agrupar por”• sesgo: medida de la asimetría de la distribución de probabilidad de una distribución normal• stddev_pop: calcula la desviación estándar de la población y devuelve la raíz cuadrada de la

variación de la población• sum: la suma de todos los valores en el grupo• sumDistinct: la suma de distintos valores en el grupo• var_samp: la variación de la muestra del grupo (ignora los valores nulos)• var_pop: la variación de la población del grupo (ignora los valores nulos)

Configuración de nodos de destino de datosEl destino de datos es donde el trabajo escribe los datos transformados.

Información general de las opciones de destino dedatosSu destino de datos (también denominado receptor de datos) puede ser uno de los siguientes:

• S3: el trabajo escribe los datos en un archivo en la ubicación de Amazon S3 que elija y en el formato queespecifique.

Si configura columnas de partición para el destino de datos, el trabajo escribe el conjunto de datos enAmazon S3 en directorios en función de la clave de partición.

• AWS Glue Data Catalog – el trabajo utiliza la información asociada a la tabla del Data Catalog paraescribir los datos de salida en una ubicación de destino.

Puede crear la tabla en forma manual o con el rastreador. También puede utilizar plantillas de AWSCloudFormation para crear tablas en el Data Catalog.

54

Page 61: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEdición del nodo de destino de datos

• Conector: un conector es un fragmento de código que facilita la comunicación entre el almacén de datosy AWS Glue. El trabajo utiliza el conector y la conexión asociada para escribir los datos de salida en unaubicación de destino. Puede suscribirse a un conector ofrecido en AWS Marketplace o puede crear supropio conector personalizado. Para obtener más información, consulte Agregar conectores a AWS GlueStudio (p. 77)

Puede elegir actualizar el Data Catalog cuando su trabajo escriba en un destino de datos de AmazonS3. En lugar de requerir que un rastreador actualice el Data Catalog cuando cambian el esquema o lasparticiones, esta opción facilita la actualización de las tablas. Esta opción simplifica el proceso de hacerque los datos estén disponibles para análisis mediante el agregado opcional de nuevas tablas al DataCatalog, la actualización de particiones de tabla y del esquema de las tablas directamente desde el trabajo.

Edición del nodo de destino de datosEl destino de datos es donde el trabajo escribe los datos transformados.

Para agregar o configurar un nodo de destino de datos en el diagrama de trabajo

1. (Opcional) si necesita agregar un nodo de destino, elija Target (Destino) en la barra de herramientassituada en la parte superior del editor visual y elija S3 o Glue Data Catalog.

• Si elige S3 para el destino, el trabajo escribe el conjunto de datos en uno o más archivos en laubicación de Amazon S3 que especifique.

• Si elige AWS Glue Data Catalog para el destino, el trabajo escribe en una ubicación descrita por latabla seleccionada en el Data Catalog.

2. Elija un nodo de destino de datos en el diagrama de trabajo. Al elegir un nodo, aparece el panel dedetalles del nodo en el lado derecho de la página.

3. Elija la pestaña Node properties (Propiedades del nodo) y, a continuación, escriba la informaciónsiguiente:

• Name (Nombre): ingrese un nombre para asociar al nodo en el diagrama de trabajo.• Node type (Tipo de nodo): ya se debe haber seleccionado un valor, pero podrá modificarlo según

sea necesario.• Node parents (Nodo principales): el nodo principal es el nodo del diagrama de trabajo que

proporciona los datos de salida que desea escribir en la ubicación de destino. Para un diagrama detrabajo previamente completado, el nodo de destino ya debe tener seleccionado el nodo principal. Sino se muestra ningún nodo principal, elija un nodo principal de la lista.

Un nodo de destino tiene un nodo principal único.4. Configure la información de Data source properties (Propiedades de origen de datos). Para obtener

más información, consulte las siguientes secciones:

• Uso de Amazon S3 para el destino de datos (p. 56)• Uso de tablas de Data Catalog para el destino de datos (p. 57)• Uso de un conector para el destino de datos (p. 57)

5. (Opcional) después de configurar las propiedades del nodo de destino de datos, puede ver elesquema de salida para sus datos al seleccionar la pestaña Output schema (Esquema de salida) en elpanel de detalles del nodo. La primera vez que elija esta pestaña para cualquier nodo de trabajo, se lepedirá que proporcione un rol de IAM para acceder a los datos. Si no ha especificado un rol de IAM enJob details (Detalles del trabajo), se le pedirá que ingrese un rol de IAM aquí.

55

Page 62: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEdición del nodo de destino de datos

Uso de Amazon S3 para el destino de datosEn todos los orígenes de datos, excepto Amazon S3 y los conectores, debe existir una tabla en el AWSGlue Data Catalog para el tipo de fuente que elija. AWS Glue Studio no crea la tabla del Data Catalog.

Para configurar un nodo de destino de datos que escriba en Amazon S3

1. Vaya al editor visual para acceder a un trabajo nuevo o guardado.2. Elija un nodo de origen de datos en el diagrama de trabajo.3. Elija la pestaña Data source properties (Propiedades de origen de datos) y, a continuación, escriba la

información siguiente:

• Format (Formato): elija un formato de la lista. Los tipos de formato disponibles para los resultadosde datos son:• JSON: notación de objetos JavaScript.• CSV: valores separados por comas.• Avro: Apache Avro JSON binario.• Parquet: almacenamiento en columna de Apache Parquet.• Glue Parquet: un tipo personalizado de escritor de Parquet, optimizado para DynamicFrames

como el formato de datos. En lugar de requerir un esquema precalculado para los datos, calcula ymodifica el esquema dinámicamente.

• ORC: formato Apache Optimized Row Columnar (ORC).

Para obtener más información sobre estas opciones de formato, consulte Opciones de formato paralas entradas y salidas de ETL en AWS Glue en la Guía para desarrolladores de AWS Glue.

• Compression Type (Tipo de compresión): puede optar por comprimir los datos de manera opcionalmediante el formato gzip o bzip2. El valor predeterminado es no compresión, o None (Ninguno).

• S3 Target Location (Ubicación de destino de S3): el bucket y la ubicación de Amazon S3 para lasalida de datos. Puede elegir la opción Browse S3 (Examinar S3) para ver los depósitos de AmazonS3 a los que tiene acceso y elegir uno como destino.

• Opciones de actualización de Data Catalog• Do not update the Data Catalog (No actualizar Data Catalog): (predeterminado) seleccione esta

opción si no desea que el trabajo actualice el Data Catalog, incluso si el esquema cambia o seagregan nuevas particiones.

• Create a table in the Data Catalog and on subsequent runs, update the schema and add newpartitions (Crear una tabla en el Data Catalog y en ejecuciones posteriores, actualizar el esquemay agregar nuevas particiones): si elige esta opción, el trabajo crea la tabla en el Data Catalogdurante la primera ejecución del trabajo. En las ejecuciones de trabajos posteriores, el trabajoactualiza la tabla de Data Catalog si cambia el esquema o se agregan nuevas particiones.

También debe seleccionar una base de datos en el Data Catalog e introducir un nombre de tabla.• Create a table in the Data Catalog and on subsequent runs, keep existing schema and add new

partitions (Crear una tabla en el Data Catalog y en ejecuciones posteriores, mantener el esquemaexistente y agregar nuevas particiones): si elige esta opción, el trabajo crea la tabla en el DataCatalog durante la primera ejecución del trabajo. En las ejecuciones de trabajos posteriores, eltrabajo actualiza la tabla de Data Catalog solo para agregar nuevas particiones.

También debe seleccionar una base de datos en el Data Catalog e introducir un nombre de tabla.• Partition keys (Claves de partición): elija qué columnas utilizar como claves de partición en la

salida. Para agregar más claves de partición, elija Add a partition key (Agregar una clave departición).

56

Page 63: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEdición o carga de un script de trabajo

Uso de tablas de Data Catalog para el destino de datosEn todos los orígenes de datos, excepto Amazon S3 y los conectores, debe existir una tabla en el AWSGlue Data Catalog para el tipo de destino que elija. AWS Glue Studio no crea la tabla del Data Catalog.

Para configurar las propiedades de datos de un destino que utiliza una tabla de Data Catalog

1. Vaya al editor visual para acceder a un trabajo nuevo o guardado.2. Elija un nodo de destino de datos en el diagrama de trabajo.3. Elija la pestaña Data target properties (Propiedades de destino de datos) y, a continuación, escriba la

información siguiente:

• Database (Base de datos): elija la base de datos que contiene la tabla que desea utilizar comodestino a partir de la lista. Esta base de datos ya debe existir en el Data Catalog.

• Table (Tabla): elija la tabla que define el esquema de los datos de salida a partir de la lista. Estatabla ya debe existir en el Data Catalog.

Una tabla de Data Catalog está formada por los nombres de las columnas, las definiciones de tiposde datos, la información de partición y otros metadatos acerca de un conjunto de datos de destino.Su trabajo escribe a una ubicación descrita en esta tabla en Data Catalog.

Para obtener más información acerca de cómo crear tablas en el Data Catalog, consulte Definiciónde tablas en Data Catalog en la Guía para desarrolladores de AWS Glue.

• Opciones de actualización de Data Catalog• Do not change table definition (No cambiar la definición de la tabla): (predeterminado) seleccione

esta opción si no desea que el trabajo actualice el Data Catalog, incluso si el esquema cambia ose agregan nuevas particiones.

• Update schema and add new partitions (Actualizar esquema y agregar nuevas particiones): sielige esta opción, el trabajo actualiza la tabla de Data Catalog si cambia el esquema o se agregannuevas particiones.

• Keep existing schema and add new partitions (Mantener el esquema existente y agregar nuevasparticiones): si elige esta opción, el trabajo actualiza la tabla de Data Catalog solo para agregarnuevas particiones.

• Partition keys (Claves de partición): elija qué columnas utilizar como claves de partición en lasalida. Para agregar más claves de partición, elija Add a partition key (Agregar una clave departición).

Uso de un conector para el destino de datosSi selecciona un conector para el Node type (Tipo de nodo), siga las instrucciones en Creación de trabajoscon conectores personalizados (p. 85) para finalizar la configuración de las propiedades del destino dedatos.

Edición o carga de un script de trabajoUtilice el editor visual de AWS Glue Studio para editar el script de trabajo o cargar el propio.

Puede utilizar el editor visual para editar nodos de trabajo sólo si estos se crearon con AWS Glue Studio.Si el trabajo se creó con la consola de AWS Glue, a través de comandos de la API, o con la interfaz delínea de comandos (CLI), puede utilizar el editor de scripts en AWS Glue Studio para editar el script, losparámetros y la programación del trabajo. También puede editar el script para un trabajo creado en AWSGlue Studio mediante la conversión del trabajo a modo de sólo script.

57

Page 64: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEdición o carga de un script de trabajo

Para editar el script de trabajo o cargar su propio script

1. Si crea un nuevo trabajo, en la página Jobs (Trabajos), seleccione la opción Spark script editor (Editorde scripts de Spark) para crear un trabajo de Spark o elija la opción Python Shell script editor (Editorde scripts de shell de Python) para crear un trabajo de shell de Python. Puede escribir un nuevo scripto cargar un script existente. Si elige Spark script editor (Editor de scripts de Spark), puede escribiro cargar un script de Scala o Python. Si elige Python Shell script editor (Editor de scripts de shell dePython), solo puede escribir o cargar un script de Python.

Después de elegir la opción para crear un nuevo trabajo, en la sección Options (Opciones) queaparece, puede optar por comenzar con un script de inicio (Create a new script with boilerplate code(Crear un nuevo script con código reutilizable), o puede cargar un archivo local para utilizarlo comoscript de trabajo.

Si elige Spark script editor (Editor de scripts de Spark), puede cargar archivos de script de Scala oPython. Los scripts de Scala deben tener la extensión de archivo .scala. Los scripts de Pythondeben reconocerse como archivos de tipo Python. Si elige Python Shell script editor (Editor de scriptsde shell de Python), solo puede cargar archivos de script de Python.

Cuando termine de tomar sus decisiones, elija Create (Crear) para crear el trabajo y abrir el editorvisual.

2. Diríjase al editor visual de trabajos para el trabajo nuevo o guardado y, a continuación, elija la pestañaScript.

3. Si no creó un nuevo trabajo con una de las opciones del editor de script y nunca ha editado elscript para un trabajo existente, la pestaña Script muestra el encabezado Script (Locked) [Script(bloqueado)]. Esto significa que el editor de scripts está en modo de solo lectura. Seleccione Edit script(Editar script) para desbloquear el script para su edición.

Para poder editar el script, AWS Glue Studio convierte el trabajo de visual a de sólo script. Sidesbloquea el script para editarlo, no podrá utilizar el editor visual para este trabajo después deguardarlo.

En la ventana de confirmación, elija Confirm (Confirmar) para continuar o Cancel (Cancelar) paramantener el trabajo disponible para la edición visual.

Si elige Confirm (Confirmar), la pestaña Visual ya no aparecerá en el editor. Puede utilizar AWS GlueStudio para modificar el script mediante el editor de script, modificar los detalles o la programación deltrabajo o ver las ejecuciones de trabajos.

Note

La conversión a un trabajo de sólo script solo será permanente una vez que guarde el trabajo.Si actualiza la página web de la consola o cierra el trabajo antes de guardarlo y vuelve aabrirlo en el editor visual, podrá editar los nodos individuales en el editor visual.

4. Edite el script según sea necesario.

Cuando haya terminado de editar el script, elija Save (Guardar) para guardar el trabajo y convertir eltrabajo de visual a sólo script de forma permanente.

5. (Opcional) Puede descargar el script desde la consola de AWS Glue Studio mediante el botónDownload (Descargar) en la pestaña Script. Al seleccionar este botón, se abre una nueva ventana delnavegador, que muestra el script desde su ubicación en Amazon S3. Los parámetros Script filename(Nombre de archivo del script) y Script path (Ruta del script) en la pestaña Job details (Detalles deltrabajo) determinan el nombre y la ubicación del archivo de script en Amazon S3.

58

Page 65: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación y edición de scripts de Scala en AWS Glue Studio

Cuando guarda el trabajo, AWS Glue guarda el script de trabajo en la ubicación especificada por estoscampos. Si modifica el archivo de script en esta ubicación dentro de Amazon S3, AWS Glue Studiocargará el script modificado la próxima vez que edite el trabajo.

Creación y edición de scripts de Scala en AWS GlueStudioCuando elige el editor de script para crear un trabajo, de forma predeterminada, el lenguaje deprogramación de trabajo se establece en Python 3. Si elige escribir un nuevo script en lugar de cargarlo,AWS Glue Studio inicia un nuevo script con texto reutilizable escrito en Python. Si desea escribir un scriptde Scala en su lugar, primero debe configurar el editor de script para que utilice Scala.

Note

Si elige Scala como lenguaje de programación para el trabajo y utiliza el editor visual para diseñarsu trabajo, el script de trabajo generado se escribe en Scala y no es necesario realizar másacciones.

Para escribir un nuevo script de Scala en AWS Glue Studio

1. Cree un nuevo trabajo mediante la opción Spark script editor (Editor de scripts de Spark).2. En Options (Opciones), elija Create a new script with boilerplate code (Crear un nuevo script con

código reutilizable).3. Elija la pestaña Job details (Detalles del trabajo) y configure el Languaje (Lenguaje) a Scala (en lugar

de Python 3).

Note

La propiedad Type (Tipo) para el trabajo se configura automáticamente en Spark cuandoelije la opción Spark script editor (Editor de scripts de Spark) para crear un trabajo.

59

Page 66: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación y edición de trabajos de

shell de Python en AWS Glue Studio

4. Elija la pestaña Script.5. Elimine el texto reutilizable de Python. Puede reemplazarlo con el siguiente texto reutilizable de Scala.

import com.amazonaws.services.glue.{DynamicRecord, GlueContext}import org.apache.spark.SparkContextimport com.amazonaws.services.glue.util.JsonOptionsimport com.amazonaws.services.glue.util.GlueArgParserimport com.amazonaws.services.glue.util.Job

object MyScript { def main(args: Array[String]): Unit = { val sc: SparkContext = new SparkContext() val glueContext: GlueContext = new GlueContext(sc)

}}

6. Escriba su script de trabajo de Scala en el editor. Agregue declaraciones import adicionales, segúnsea necesario.

Creación y edición de trabajos de shell de Python enAWS Glue StudioCuando elige el editor de scripts de shell de Python para crear un trabajo, puede cargar un script de Pythonexistente o escribir uno nuevo. Si elige escribir un nuevo script, se agrega código reutilizable al nuevoscript de trabajo de Python.

Para crear un nuevo trabajo de shell de Python

Consulte las instrucciones en Comenzar el proceso de creación del trabajo (p. 22).

Las propiedades de trabajo que se soportan para los trabajos de shell de Python no son las mismas quelas soportadas para los trabajos de Spark. La siguiente lista describe los cambios en los parámetros detrabajo disponibles para los trabajos de shell de Python en la pestaña Job details (Detalles del trabajo).

• La propiedad Type (Tipo) para el trabajo se establece automáticamente en Python Shell y no sepuede cambiar.

• En lugar de Language (Lenguaje), hay una propiedad Python version (Versión de Python) para eltrabajo. Actualmente, los trabajos de shell de Python creados en AWS Glue Studio utilizan Python 3.6.

• La propiedad Glue version (Versión de Glue) no está disponible, ya que no se aplica a trabajos de shellde Python.

• En lugar de Worker type (Tipo de empleado) y Number of workers (Número de empleados), se muestrauna propiedad Data processing units (Unidades de procesamiento de datos). Esta propiedad de trabajodetermina cuántas unidades de procesamiento de datos (DPU) consume el shell de Python al ejecutar eltrabajo.

• La propiedad Job bookmark (Marcador de trabajo) no está disponible, porque no se soporta paratrabajos de shell de Python.

• En Advanced properties (Propiedades avanzadas), las siguientes propiedades no están disponibles paratrabajos de shell de Python.• Job metrics (Métricas de trabajo• Registro continuo• Spark UI (Interfaz de usuario de Spark) y Spark UI logs path (Ruta de los registros de la interfaz de

usuario de Spark)• Dependent jars path (Ruta de archivos JAR dependientes), en el encabezado Libraries (Bibliotecas)

60

Page 67: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAgregado de nodos al diagrama de trabajo

Agregado de nodos al diagrama de trabajoPuede agregar orígenes de datos, transformaciones y destinos de datos adicionales a su trabajo paraadmitir acciones de ETL más complejas.

Para agregar nodos a un diagrama de trabajo

1. Diríjase al editor visual para el trabajo nuevo o guardado y, a continuación, elija la pestaña Visual.2. Utilice los botones de la barra de herramientas para agregar un nodo de un tipo específico: Source

(Origen), Transform (Transformación), o bien, Target (Destino).

3. Edite el nodo, tal y como se describe en las secciones siguientes:

• Para obtener el nodo de origen, consulte Edición del nodo de origen de datos (p. 28).• Para obtener un nodo de transformación, consulte Edición del nodo de transformación de

datos (p. 34).• Para obtener un nodo de destino de datos, consulte Edición del nodo de destino de datos (p. 55).

4. Si insertará un nodo entre dos nodos en el diagrama de trabajo, realice las siguientes acciones:

a. Elija el nodo que será el principal para el nuevo nodo.b. Elija uno de los botones de la barra de herramientas para agregar un nuevo nodo al diagrama

de trabajo. El nuevo nodo se agrega como un elemento secundario del nodo seleccionadoactualmente.

c. Elija el nodo que será secundario al nodo recién agregado y cambie su nodo principal para queapunte al nodo recién agregado.

Si agregó un nodo por error, puede utilizar el botón Undo (Deshacer) de la barra de herramientas pararevertir la acción.

Cambio de los nodos principales de un nodo en eldiagrama de trabajo

Puede cambiar los elementos principales de un nodo para mover nodos dentro del diagrama de trabajo opara cambiar un origen de datos para un nodo.

Para cambiar el nodo principal

1. Elija el nodo del diagrama de trabajo que desee modificar.2. En el panel de detalles del nodo, en la pestaña Node properties (Propiedades del nodo), en el

encabezado Node parents (Nodos principales) elimine el nodo principal actual.3. Elija un nuevo nodo principal de la lista.4. Modifique las demás propiedades del nodo según sea necesario para que coincida con el nodo

principal recién seleccionado.

61

Page 68: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEliminación de nodos del diagrama de trabajo

Si modificó un nodo por error, puede utilizar el botón Undo (Deshacer) de la barra de herramientas pararevertir la acción.

Eliminación de nodos del diagrama de trabajoPuede eliminar nodos del diagrama de trabajo.

Para eliminar un nodo

1. Diríjase al editor visual para el trabajo nuevo o guardado y, a continuación, elija la pestaña Visual.2. Seleccione el nodo que desea eliminar.3. En la barra de herramientas situada en la parte superior del panel de edición visual, elija el botón

Remove (Eliminar).4. Si el nodo que eliminó tenía nodos secundarios, modifique los elementos principales de esos nodos

según sea necesario.

Si eliminó un nodo por error, puede utilizar el botón Undo (Deshacer) de la barra de herramientas pararevertir la acción.

62

Page 69: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioElegir cómo desea que se escaneen los datos

Detectar y procesar informaciónconfidencial

Note

El uso de la transformación Detectar PII en trabajos de AWS Glue Studio requiere AWS Glue 3.0.

La transformación Detectar PII identifica la información de identificación personal (PII) en su origen dedatos. Usted elige la entidad PII que desea identificar, cómo desea que se escaneen los datos y qué hacercon la entidad PII identificada por la transformación Detectar PII.

La transformación Detectar PII proporciona la capacidad de detectar, enmascarar o eliminar entidadesdefinidas por el usuario o predefinidas por AWS. Esto permite aumentar la conformidad y reducirla responsabilidad. Por ejemplo, es posible que desee asegurarse de que no exista información deidentificación personal en los datos que pueda leerse, y que desee enmascarar números de la seguridadsocial con una cadena fija (por ejemplo, xxx-xx-xxxx), números de teléfono o direcciones.

Temas• Elegir cómo desea que se escaneen los datos (p. 63)• Elección de las entidades de PII que se desea detectar (p. 64)• Elegir qué hacer con los datos de PII identificados (p. 66)

Elegir cómo desea que se escaneen los datosPuede elegir detectar la PII en todo el origen de datos o detectar las columnas de campos que contienenPII.

Cuando elige Detectar PII en cada celda, elige escanear todas las filas del origen de datos. Se trata de unanálisis exhaustivo para garantizar que se identifiquen las entidades de PII.

Cuando elige Detectar campos que contienen PII, elige escanear una muestra de filas en busca deentidades de PII. Esta es una forma de mantener bajos los costos y los recursos, al mismo tiempo que seidentifican los campos en los que se encuentran las entidades de PII.

Cuando elige detectar campos que contienen PII, puede reducir los costos y mejorar el rendimientomediante muestras de una parte de las filas. La elección de esta opción permitirá que especifique opcionesadicionales:

63

Page 70: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioElección de las entidades de PII que se desea detectar

• Porción de muestra: permite especificar el porcentaje de filas que se van a mostrar. Por ejemplo, siingresa ‘50’, especifica que desea el 50 por ciento de las filas escaneadas para la entidad PII.

• Umbrales de detección: permite especificar el porcentaje de filas que contienen la entidad PII paraidentificar que toda la columna tiene la entidad PII. Por ejemplo, si ingresa ‘10’, especifica que el númerode la entidad PII, teléfono EE. UU., en las filas escaneadas debe ser del 10 por ciento o superior paraque el campo se identifique como la entidad PII, teléfono EE. UU. Si el porcentaje de filas que contienenla entidad PII es inferior al 10 por ciento, ese campo no se etiquetará por tener la entidad PII, teléfonoEE. UU., en él.

Elección de las entidades de PII que se deseadetectar

Si ha seleccionado Detect PII in each cell (Detectar PII en cada celda), puede elegir entre tres opciones:

• All available PII patterns (Todos los patrones de PII disponibles): eso incluye las entidades de AWS.• Select categories (Seleccionar categorías): si selecciona las categorías, los patrones de PII incluirán

automáticamente los patrones de las categorías seleccionadas.• Select specific patterns (Seleccionar patrones específicos): solo se detectarán los patrones que

seleccione.

Elegir entre todos los patrones de PII disponiblesSi elige All available PII patterns (Todos los patrones de PII disponibles), seleccione entidades predefinidaspor AWS. Puede seleccionar una entidad, varias o todas ellas.

64

Page 71: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioSelect categories (Seleccionar categorías)

Select categories (Seleccionar categorías)Si ha elegido Select categories (Seleccionar categorías) como patrones de PII que se deben detectar,puede elegir entre las opciones del menú desplegable. Tenga en cuenta que algunas entidades puedenpertenecer a más de una categoría. Por ejemplo, Nombre de la persona es una entidad que pertenece alas categorías Universal y HIPAA.

• Universal (ejemplos: correo electrónico, tarjeta de crédito)• HIPAA (ejemplos: licencia de conducir de EE. UU., código del sistema de codificación de procedimientos

comunes de atención médica [HCPCS])

65

Page 72: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioSelect specific patterns (Seleccionar patrones específicos)

• Redes (ejemplos: dirección IP, dirección MAC)• Estados Unidos (ejemplos: teléfono estadounidense, pasaporte estadounidense)

Select specific patterns (Seleccionar patronesespecíficos)Si elige Select specific patterns (Seleccionar patrones específicos) como patrones de PII que se debendetectar, puede buscar o examinar una lista de patrones que ya haya creado, o bien crear un nuevo patrónde entidad de detección.

En los siguientes pasos se describe la creación de un nuevo patrón personalizado para detectarinformación confidencial. Creará el patrón personalizado al ingresar un nombre para dicho patrón,agregará una expresión regular y, opcionalmente, definirá palabras de contexto.

1. Para crear un nuevo patrón, haga clic en el botón Create new (Crear nuevo).

2. En la página Create detection entity (Crear entidad de detección), ingrese el nombre de la entidady una expresión regular. La expresión regular (regex) es lo que AWS Glue utilizará para buscarcoincidencias de entidades.

3. Haga clic en Validate (Validar). Si la validación se realiza correctamente, aparecerá un mensaje deconfirmación que indica que la cadena es una expresión regular válida. Si la validación no se realizacorrectamente, aparecerá un mensaje que indica que la cadena no se ajusta al formato adecuado ni alos caracteres, los operadores o las construcciones aceptados.

4. Puede optar por agregar palabras contextuales además de la expresión regular. Las palabrascontextuales pueden aumentar la probabilidad de coincidencia. Pueden resultar útiles en los casosen que los nombres de los campos no ofrezcan información descriptiva sobre la entidad. Por ejemplo,los números de la seguridad social pueden denominarse “NSS” o “SS”. Agregar estas palabrascontextuales puede ayudar a encontrar una coincidencia de la entidad.

5. Haga clic en Create (Crear) para crear la entidad de detección. Todas las entidades creadas sonvisibles en la consola de AWS Glue Studio. Haga clic en Detection entities (Entidades de detección) enel menú de navegación de la izquierda.

Puede editar, eliminar o crear entidades de detección desde la página Detection entities (Entidades dedetección). También puede buscar un patrón mediante el campo de búsqueda.

Elegir qué hacer con los datos de PII identificadosSi optó por detectar la PII en toda el origen de datos, puede elegir:

• Enriquecer los datos con los resultados de detección: si eligió Detectar PII en cada celda, puedealmacenar las entidades detectadas en una nueva columna.

• Texto detectado de redacción: puede reemplazar el valor de PII detectado por una cadena queespecifique en el campo opcional Reemplazo de entrada de texto. Si no se especifica ninguna cadena,la entidad PII detectada se sustituye por ‘*******’.

66

Page 73: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioElegir qué hacer con los datos de PII identificados

Si elige detectar campos que contienen PII, puede elegir realizar las siguientes acciones:

• Resultados de detección de salida: esto crea un nuevo marco de datos con la información de PIIdetectada para cada columna.

• Texto detectado de redacción: puede reemplazar el valor de PII detectado por una cadena queespecifique. Si no se especifica ninguna cadena, la entidad PII detectada se sustituye por ‘*******’.

67

Page 74: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioDiseño de API y las API de CRUD

API de Visual Job de AWS GlueAWS Glue proporciona una API que permite a los clientes crear trabajos de integración de datos mediantela API de AWS Glue a partir de un objeto JSON que representa un flujo de trabajo de pasos visuales. Losclientes pueden utilizar el editor visual de AWS Glue Studio para realizar estos trabajos.

Para obtener más información sobre los tipos de datos de la API Visual Job, consulte API Visual Job.

Temas• Diseño de API y las API de CRUD (p. 68)• Introducción (p. 68)• Limitaciones de los trabajos visuales (p. 69)

Diseño de API y las API de CRUDLas API CreateJob y UpdateJob ahora son compatibles con un parámetro opcional adicional:codeGenConfigurationNodes. Proporcionar una estructura JSON no vacía para este campo hará quese registre el DAG en AWS Glue Studio para el trabajo creado y que se genere el código asociado. Seignorará un valor nulo o una cadena vacía para este campo en la creación del trabajo.

Las actualizaciones del campo codeGenConfigurationNodes se realizarán a través de la API de AWS GlueUpdateJob de forma similar a CreateJob. En UpdateJob se debe especificar el campo completo en el quese ha modificado el DAG según lo deseado. Se ignorará todo valor nulo proporcionado y no se realizaráninguna actualización del DAG. Una estructura o cadena vacía hará que los codeGenConfigurationNodesse establezcan como vacíos y se elimine cualquier DAG anterior. La API GetJob devolverá un DAG, si lohay. La API DeleteJob también eliminará cualquier DAG asociado.

IntroducciónPara crear un trabajo, utilice la acción CreateJob. La entrada de la solicitud CreateJob tendrá un campo“codeGenConfigurationNodes” adicional en el que se puede especificar el objeto DAG en JSON.

Para tener en cuenta:

• El campo “codeGenConfigurationNodes” es un mapa de nodeId a nodo.• Cada nodo comienza con una clave que identifica qué tipo de nodo es.• Solo puede haber una clave especificada, ya que un nodo solo puede ser de un tipo.• El campo de entrada contiene los nodos principales del nodo actual.

La siguiente es una representación JSON de una entrada de CreateJob.

{ "node-1": { "S3CatalogSource": { "Table": "csvFormattedTable", "PartitionPredicate": "", "Name": "S3 bucket", "AdditionalOptions": {}, "Database": "myDatabase"

68

Page 75: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioLimitaciones de los trabajos visuales

} }, "node-3": { "S3DirectTarget": { "Inputs": ["node-2"], "PartitionKeys": [], "Compression": "none", "Format": "json", "SchemaChangePolicy": { "EnableUpdateCatalog": false }, "Path": "", "Name": "S3 bucket" } }, "node-2": { "ApplyMapping": { "Inputs": ["node-1"], "Name": "ApplyMapping", "Mapping": [ { "FromType": "long", "ToType": "long", "Dropped": false, "ToKey": "myheader1", "FromPath": ["myheader1"] }, { "FromType": "long", "ToType": "long", "Dropped": false, "ToKey": "myheader2", "FromPath": ["myheader2"] }, { "FromType": "long", "ToType": "long", "Dropped": false, "ToKey": "myheader3", "FromPath": ["myheader3"] } ] } }}

Actualización y obtención de trabajos

Dado que UpdateJob también tendrá un campo “codeGenConfigurationNodes”, el formato de entrada seráel mismo. Consulte Acción UpdateJob.

La acción GetJob devolverá también un campo “codeGenConfigurationNodes” con el mismo formato.Consulte Acción GetJob.

Limitaciones de los trabajos visualesDado que el parámetro “codeGenConfigurationNodes” se ha agregado a las API existentes, se heredarácualquier limitación en esas API. Además, los codeGenConfigurationNodes y algunos nodos tendrán untamaño limitado. Consulte Estructura de los trabajos para obtener más información.

69

Page 76: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioInformación general sobre el uso de bloc de notas

Uso de bloc de notas con AWS GlueStudio y AWS Glue

Los ingenieros de datos pueden crear trabajos de AWS Glue de forma más rápida y sencilla que antesmediante el uso de la nueva interfaz de bloc de notas interactiva en AWS Glue Studio o sesionesinteractivas en AWS Glue.

Temas• Información general sobre el uso de bloc de notas (p. 70)• Introducción a los bloc de notas en AWS Glue Studio (p. 71)

Información general sobre el uso de bloc de notasAWS Glue Studio permite crear trabajos de forma interactiva en una interfaz de bloc de notas basada enbloc de notas de Jupyter. A través de los bloc de notas en AWS Glue Studio, es posible editar scripts detrabajos y el código de integración de datos y ver el resultado sin que sea necesario ejecutar un trabajocompleto. También es posible agregar un marcado y guardar bloc de notas como archivos .ipynb y scriptsde trabajo. Puede iniciar un bloc de notas sin instalar software en forma local ni administrar servidores. Unavez que esté satisfecho con el código, AWS Glue Studio puede convertir el bloc de notas en un trabajo deGlue con solo hacer clic en un botón.

Algunos de los beneficios de utilizar bloc de notas son:

• No hay clúster que aprovisionar o administrar• No hay que pagar por clústeres inactivos• No se requiere una configuración inicial• No se requiere instalación de bloc de notas de Jupyter• Mismo tiempo de ejecución y plataforma que ETL de AWS Glue

Al iniciar un bloc de notas a través de AWS Glue Studio, todos los pasos de configuración ya han sidocompletados para que, apenas después de unos segundos, pueda explorar los datos y comenzar adesarrollar el script de trabajo. AWS Glue Studio configura un bloc de notas de Jupyter con el kernel deJupyter de AWS Glue. No es necesario configurar VPC, conexiones de red ni puntos de conexión dedesarrollo para utilizar este bloc de notas.

Para crear trabajos mediante la interfaz de bloc de notas:

• Configure los permisos de IAM necesarios.• Inicie una sesión de bloc de notas para crear un trabajo.• Escriba código en las celdas en el bloc de notas.• Ejecute y pruebe el código para ver el resultado.• Guarde el trabajo.

Una vez guardado, el bloc de notas es un trabajo completo de AWS Glue. Puede administrar todoslos aspectos del trabajo, tales como la programación de ejecuciones de trabajos, la configuración de

70

Page 77: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioIntroducción a los bloc de notas en AWS Glue Studio

parámetros del trabajo y la visualización del historial de ejecuciones de trabajos justo al lado del bloc denotas.

Introducción a los bloc de notas en AWS GlueStudio

Al iniciar un bloc de notas a través de AWS Glue Studio, todos los pasos de configuración se hacen porusted para que, después de unos segundos, pueda explorar los datos y comenzar a desarrollar el script detrabajo.

En las secciones siguientes, se describe cómo utilizar AWS Glue Studio para crear bloc de notas paratrabajos de ETL.

Temas• Concesión de permisos para el rol de IAM (p. 71)• Creación de un trabajo de ETL mediante bloc de notas en AWS Glue Studio (p. 72)• Componentes del editor de bloc de notas (p. 73)• Cómo guardar el bloc de notas y el script de trabajo (p. 74)• Administración de las sesiones de bloc de notas (p. 74)

Concesión de permisos para el rol de IAMConfigurar AWS Glue Studio es un requisito previo para utilizar cuadernos. Para obtener más informaciónsobre la configuración de roles para AWS Glue Studio, consulte Revisar los permisos de IAM necesariospara el usuario de AWS Glue Studio (p. 7).

El rol que se utilizará para usar cuadernos requiere tres cosas:

• Una relación de confianza con AWS Glue para la acción sts:AssumeRole y, si desea etiquetar,sts:TagSession.

• Una política de IAM que contenga todas las operaciones de la API para cuadernos, AWS Glue ysesiones interactivas.

• Una política de IAM para un rol de pase, ya que el rol debe poder pasarse a sí mismo desde el cuadernoa sesiones interactivas.

Acciones necesarias para una relación de confianza con AWSGlueAl iniciar una sesión de cuaderno, se debe agregar sts:AssumeRole a la relación de confianzadel rol que se pase al cuaderno. Si la sesión incluye etiquetas, también se debe pasar la acciónsts:TagSession. Sin estas acciones, la sesión del cuaderno no puede iniciarse.

Políticas que contienen las operaciones de API para cuadernosLa siguiente política de ejemplo describe los permisos de AWS IAM requeridos para cuadernos.

{

71

Page 78: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de un trabajo de ETL mediante

bloc de notas en AWS Glue Studio

"Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "glue:StartNotebook", "glue:TerminateNotebook", "glue:GlueNotebookRefreshCredentials", "glue:DeregisterDataPreview", "glue:GetNotebookInstanceStatus", "glue:GlueNotebookAuthorize" ], "Resource": "*" } ]}

Puede utilizar las siguientes políticas de IAM para permitir el acceso a recursos específicos:

• AwsGlueSessionUserRestrictedNotebookServiceRole: proporciona acceso completo a todos losrecursos de AWS Glue, excepto las sesiones. Permite a los usuarios crear y utilizar solo las sesiones decuadernos que estén asociadas a esos usuarios. Esta política también incluye otros permisos que AWSGlue necesita para administrar recursos de AWS Glue en otros servicios de AWS.

• AwsGlueSessionUserRestrictedNotebookPolicy: proporciona permisos que permiten a los usuarios creary utilizar solo las sesiones de cuadernos que estén asociadas a esos usuarios. Esta política tambiénincluye permisos para que los usuarios puedan pasar expresamente un rol de sesión de AWS Gluerestringida.

Política de IAM para un rol de paseCuando se crea un cuaderno con un rol, ese rol se pasa a las sesiones interactivas para que se puedautilizar el mismo rol en ambos lugares. Como tal, el permiso iam:PassRole debe formar parte de lapolítica del rol. Por ejemplo:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::590186200215:role/<role_name>" } ]}

Creación de un trabajo de ETL mediante bloc de notasen AWS Glue StudioPara empezar a utilizar los bloc de notas en la consola de AWS Glue Studio

1. Adjunte políticas de AWS Identity and Access Management al usuario de AWS Glue Studio y cree unrol de IAM para el trabajo y bloc de notas de ETL, como se indica en Definición de permisos de IAMpara AWS Glue Studio (p. 12).

2. Configure seguridad adicional de IAM para blocs de notas, como se describe en3. Abra la consola de AWS Glue Studio en https://console.aws.amazon.com/gluestudio/.

72

Page 79: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioComponentes del editor de bloc de notas

Note

Compruebe que el navegador no bloquea las cookies de terceros. Cualquier navegador quebloquee las cookies de terceros, ya sea de manera predeterminada o porque el usuario lohaya configurado así, impedirá que se inicien los cuadernos. Para obtener más informaciónsobre cómo administrar las cookies, consulte:

• Chrome• Firefox• Safari

4. Elija el icono Jobs (Trabajos) en el menú de navegación de la izquierda.5. Elija Jupyter Notebooks (Bloc de notas de Jupyter) y, luego, elija Create (Crear) para iniciar una nueva

sesión de bloc de notas.6. En la página Create job in Jupyter notebook (Crear trabajo en cuaderno de Jupyter), proporcione el

nombre del trabajo y elija qué rol de IAM desea utilizar. Seleccione Create job (Crear trabajo).

Tras un breve momento, aparece el editor de bloc de notas.7. Después de agregar el código, debe ejecutar la celda para iniciar una sesión. La celda se puede

ejecutar de varias formas:

• Pulse el botón de reproducción.• Utilice un método abreviado de teclado; por ejemplo, el comando + Enter (macOS).

Para obtener información sobre cómo escribir código mediante una interfaz de bloc de notas deJupyter, consulte The Jupyter Notebook User Documentation (Documentación del usuario de bloc denotas de Jupyter).

8. Para probar el script, ejecute el script completo o celdas individuales. Cualquier salida de comando semostrará en el área situada debajo de la celda.

9. Una vez que haya terminado de desarrollar el cuaderno, puede guardar el trabajo y luego ejecutarlo.Encontrará el script en la pestaña Script. Cualquier comando mágico que haya agregado al cuadernose eliminará y no se guardará como parte del script del trabajo de AWS Glue generado. AWS GlueStudio agregará automáticamente un job.commit() al final del script generado desde el contenidodel cuaderno.

Para obtener más información sobre cómo ejecutar un trabajo, consulte Iniciar una ejecución detrabajo (p. 107).

Componentes del editor de bloc de notasLa interfaz del editor de bloc de notas tiene las siguientes secciones principales.

• Interfaz de bloc de notas (panel principal) y barra de herramientas• Pestañas de edición de trabajo

Editor de bloc de notasEl editor de bloc de notas de AWS Glue Studio se basa en la aplicación de bloc de notas de Jupyter. Lainterfaz de bloc de notas de AWS Glue Studio es similar a la provista por Bloc de notas de Jupyter, la cualse describe en la sección Notebook user interface (Interfaz de usuario de bloc de notas). El bloc de notasutilizado por las sesiones interactivas es un bloc de notas de Jupyter.

73

Page 80: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCómo guardar el bloc de notas y el script de trabajo

Aunque el bloc de notas de AWS Glue Studio es similar a bloc de notas de Jupyter, difiere en algunosaspectos clave:

• en la actualidad, el bloc de notas de AWS Glue Studio no puede instalar extensiones• no se pueden utilizar varias pestañas; existe una relación 1:1 entre un trabajo y un bloc de notas• el bloc de notas de AWS Glue Studio no tiene el mismo menú de archivos principales que existe en el

bloc de notas de Jupyter• actualmente, el cuaderno de AWS Glue Studio solo se ejecuta con el kernel de AWS Glue. Tenga en

cuenta que no puede actualizar el kernel por su cuenta.

pestañas de edición de trabajo de AWS Glue StudioLas pestañas que utiliza para interactuar con el trabajo de ETL se encuentran en la parte superior de lapágina del bloc de notas. Son similares a las pestañas que aparecen en el editor visual de trabajos deAWS Glue Studio y realizan las mismas acciones.

• Notebook (Bloc de notas): utilice esta pestaña para ver el script de trabajo mediante la interfaz del blocde notas.

• Job details (Detalles del trabajo): configure el entorno y las propiedades de las ejecuciones de trabajos.• Runs (Ejecuciones): permite ver información sobre las ejecuciones anteriores de este trabajo.• Schedules (Cronograma): configure un cronograma para ejecutar su trabajo en momentos específicos.

Cómo guardar el bloc de notas y el script de trabajoPuede guardar el bloc de notas y el script de trabajo que esté creando en cualquier momento.Simplemente elija el botón Save (Guardar) en la esquina superior derecha, igual que si estuviera en eleditor visual o de script.

Cuando elige Save (Guardar), el script de trabajo y el archivo de bloc de notas se guardan en lasubicaciones especificadas.

• El script de trabajo se guarda en la ubicación de Amazon S3 indicada por la propiedad del trabajo Scriptpath (Ruta del script), en la carpeta Scripts.

• El archivo de bloc de notas (.ipynb) se guarda en la ubicación de Amazon S3 indicada por la propiedaddel trabajo Script path (Ruta del script), en la carpeta Notebooks.

Al guardar el trabajo, el script de trabajo contiene solo las celdas de código del bloc de notas. Las celdasde marcado no están incluidas.

Después de guardar el trabajo, puede ejecutarlo mediante el script que creó en el bloc de notas.

Administración de las sesiones de bloc de notasLos bloc de notas en AWS Glue Studio se basan en la característica de sesiones interactivas de AWSGlue. El uso de sesiones interactivas conlleva un costo. Para ayudar a administrar los costos, puedemonitorear las sesiones creadas para su cuenta y ajustar la configuración predeterminada de todas lassesiones.

Cambio del tiempo de espera predeterminado de todas lassesiones de bloc de notasDe manera predeterminada, la sesión (interactiva) del cuaderno en Glue Studio se cierra después de 12horas.

74

Page 81: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAdministración de las sesiones de bloc de notas

Para modificar el tiempo de espera de sesión predeterminado para los bloc de notas en AWS GlueStudio

1. En el bloc de notas, ingrese el comando mágico %idle_timeout en una celda y especifique el valorde tiempo de espera en minutos.

2. Por ejemplo: %idle_timeout 15 cambiará el tiempo de espera predeterminado a 15 minutos. Si lasesión no se utiliza en 15 minutos, se detiene automáticamente.

Instalación de módulos adicionales de PythonSi desea instalar módulos adicionales a su sesión mediante pip, puede hacerlo con%additional_python_modules para agregarlos a la sesión:

%additional_python_modules awswrangler, s3://mybucket/mymodule.whl

Todos los argumentos para additional_python_modules se pasan a pip3 install -m <>.

Para ver una lista de los módulos de Python disponibles, consulte Uso de bibliotecas Python con AWSGlue.

Cambio de la configuración de AWS GlueSe pueden utilizar comandos mágicos para controlar los valores de configuración de los trabajos de AWSGlue. Si desea cambiar el valor de configuración de un trabajo, debe utilizar el comando mágico adecuadoen el cuaderno.

AWS Glue admite varios tipos de empleados. Puede configurar el tipo de empleado con %worker_type.Por ejemplo: %worker_type G.2X . El valor predeterminado es G.1X.

También puede especificar el número de empleados con %number_of_workers. Por ejemplo, paraespecificar 40 empleados: %number_of_workers 40.

Para obtener más información, consulte Defining Job Properties (Definición de las propiedades del trabajo).

Cómo detener una sesión de bloc de notasPara detener una sesión de bloc de notas, utilice el comando mágico %stop_session.

Si se aleja del bloc de notas en la consola de AWS, recibirá un mensaje de advertencia en el que podráelegir detener la sesión.

75

Page 82: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioInformación general del uso de conectores y conexiones

Uso de conectores y conexiones conAWS Glue Studio

AWS Glue proporciona soporte integrado con los almacenes de datos más utilizados (como AmazonRedshift, Amazon Aurora, Microsoft SQL Server, MySQL, MongoDB y PostgreSQL) mediante conexionesJDBC. AWS Glue también permite usar controladores JDBC personalizados en sus trabajos de extracción,transformación y carga (ETL). Para los almacenes de datos no soportados de forma nativa, como lasaplicaciones de software como servicio (SaaS), puede utilizar conectores.

Un conector es un paquete de códigos opcionales que ayuda a acceder a almacenes de datos en AWSGlue Studio. Puede suscribirse a varios conectores ofrecidos en AWS Marketplace.

Al crear trabajos de ETL, puede usar un almacén de datos soportado de forma nativa, un conector deAWS Marketplace, o sus propios conectores personalizados. Si utiliza un conector, primero debe crearuna conexión para el conector. Una conexión contiene las propiedades necesarias para conectarse a unalmacén de datos determinado. Utilice la conexión con los orígenes de datos y los destinos de datos enel trabajo de ETL. Los conectores y las conexiones funcionan en conjunto para facilitar el acceso a losalmacenes de datos.

Temas• Información general del uso de conectores y conexiones (p. 76)• Agregar conectores a AWS Glue Studio (p. 77)• Creación de conexiones para conectores (p. 80)• Creación de trabajos con conectores personalizados (p. 85)• Administración de conectores y conexiones (p. 91)• Desarrollo de conectores personalizados (p. 93)• Restricciones para el uso de conectores y conexiones en AWS Glue Studio (p. 95)

Información general del uso de conectores yconexiones

Una conexión contiene las propiedades necesarias para conectarse a un almacén de datos determinado.Cuando se crea una conexión, se almacena en el AWS Glue Data Catalog. Elija un conector y, acontinuación, cree una conexión basada en ese conector.

Puede suscribirse a conectores para almacenes de datos soportados de forma no nativa en AWSMarketplace y luego utilizar esos conectores para crear conexiones. Los desarrolladores también puedencrear sus propios conectores, que el usuario puede utilizar para crear conexiones.

Note

Las conexiones creadas con conectores personalizados o de AWS Marketplace en AWS GlueStudio aparecen en la consola de AWS Glue con el tipo configurado en UNKNOWN (Desconocido).

Los siguientes pasos describen el proceso general para utilizar conectores en AWS Glue Studio:

1. Suscríbase a un conector en AWS Marketplace o desarrolle su propio conector y cárguelo a AWS GlueStudio. Para obtener más información, consulte Agregar conectores a AWS Glue Studio (p. 77) .

2. Revise la información de uso del conector. Puede encontrar esta información en la pestaña Usage (Uso)en la página de producto del conector. Por ejemplo, si hace clic en la pestaña Usage (Uso) en esta

76

Page 83: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAgregar conectores a AWS Glue Studio

página de producto, Conector para Google BigQuery de AWS Glue, puede ver en la sección AdditionalResources (Recursos adicionales) un enlace a un blog sobre el uso de este conector. Otros conectorespueden contener vínculos a las instrucciones de la sección Overview (Información general), como semuestra en la página de producto del conector para Conector Cloudwatch Logs para AWS Glue.

3. Cree una conexión. Puede elegir qué conector usar y proporcionar información adicional para laconexión, como credenciales de inicio de sesión, cadenas de URI e información de nube privada virtual(VPC). Para obtener más información, consulte Creación de conexiones para conectores (p. 80) .

4. Crear un rol de IAM para su trabajo. El flujo de trabajo asume los permisos de la IAM role (funciónde IAM) que especifica al crearla. Este rol de IAM debe tener permisos para autenticarse con susalmacenes de datos, extraer datos de sus almacén de datos y escribir datos a los mismos. Para obtenermás información, consulte Revisar los permisos de IAM necesarios para trabajos de ETL. (p. 10) yPermisos necesarios para utilizar conectores (p. 11).

5. Cree un trabajo de ETL y configure las propiedades de origen de datos para su trabajo de ETL.Proporcione las opciones de conexión y la información de autenticación según las instrucciones delproveedor del conector personalizado. Para obtener más información, consulte Creación de trabajos conconectores personalizados (p. 85) .

6. Personalice su trabajo de ETL mediante al agregado de transformaciones o almacenes de datosadicionales, como se describe en Edición de trabajos de ETL en AWS Glue Studio (p. 25).

7. Si utiliza un conector para el destino de datos, configure las propiedades de destino de datos parasu trabajo de ETL. Proporcione las opciones de conexión y la información de autenticación según lasinstrucciones del proveedor del conector personalizado. Para obtener más información, consulte thesection called “Creación de trabajos con conectores personalizados” (p. 85) .

8. Personalice el entorno de ejecución de trabajos mediante la configuración de las propiedades deltrabajo, como se describe en Modificar las propiedades del trabajo (p. 111).

9. Ejecute el trabajo.

Agregar conectores a AWS Glue StudioUn conector es un fragmento de código que facilita la comunicación entre el almacén de datos y AWSGlue. Puede suscribirse a un conector ofrecido en AWS Marketplace o puede crear su propio conectorpersonalizado.

Temas• Suscripción a conectores de AWS Marketplace (p. 77)• Creación de conectores personalizados (p. 78)

Suscripción a conectores de AWS MarketplaceAWS Glue Studio facilita el agregado de conectores desde AWS Marketplace.

Para agregar un conector de AWS Marketplace a AWS Glue Studio

1. En la consola de AWS Glue Studio, elija Connectors (Conectores) en el panel de navegación de laconsola.

2. En la página Connectors (Conectores), elija Go to AWS Marketplace (Ir a MKT).3. En AWS Marketplace, Featured products (Productos destacados) elija el conector que desea usar.

Puede elegir uno de los conectores destacados o utilizar la búsqueda. Puede buscar el nombre o eltipo de conector, y puede utilizar opciones para refinar los resultados de búsqueda.

Si desea utilizar uno de los conectores destacados, elija View product (Ver producto). Si utilizó labúsqueda para localizar un conector, elija el nombre del conector.

77

Page 84: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de conectores personalizados

4. En la página de producto del conector, utilice las pestañas para ver información sobre el conector. Sidecide comprar este conector, elija Continue to Subscribe (Continuar con la suscripción).

5. Proporcione la información de pago y, a continuación, elija Continue to Configure (Continuar con laconfiguración).

6. En la página Configure this software (Configurar este software), elija el método de implementación yla versión del conector que se va a utilizar. A continuación, elija Continue to Launch (Continuar con ellanzamiento).

7. En la página Launch this software (Lanzar este software), puede revisar las Usage Instructions(Instrucciones de uso) proporcionada por el proveedor del conector. Cuando esté listo para continuar,elija Activate connection in AWS Glue Studio (Activar conexión en AWS Glue Studio).

Después de cierto tiempo, la consola muestra la página Create marketplace connection (Crearconexión de marketplace) en AWS Glue Studio.

8. Cree una conexión que utilice este conector, tal y como se describe en Creación de conexiones paraconectores (p. 80).

También puede elegir Activate connector only (Activar sólo el conector) para omitir la creación de unaconexión en este momento. Debe crear una conexión en una fecha posterior antes de poder usar elconector.

Creación de conectores personalizadosTambién puede crear su propio conector y después cargar el código en AWS Glue Studio.

Los conectores personalizados están integrados en AWS Glue Studio a través de la API de tiempo deejecución de AWS Glue Spark. El tiempo de ejecución de AWS Glue Spark le permite conectar cualquierconector que cumpla con la interfaz de Spark, Athena o JDBC. Le permite transferir cualquier opción deconexión que esté disponible con el conector personalizado.

Puede encapsular todas sus propiedades de conexión con Conexiones de AWS Glue y proporcionar elnombre de la conexión para su trabajo de ETL. La integración con las conexiones de Data Catalog lepermite utilizar las mismas propiedades de conexión en varias llamadas en una sola aplicación Spark oentre diferentes aplicaciones.

Puede especificar opciones adicionales para la conexión. El script de trabajo que genera AWS Glue Studiocontiene una entrada de Datasource que utiliza la conexión para conectar el conector con las opcionesespecificadas. Por ejemplo:

Datasource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"dbTable":"Account","connectionName":"my-custom-jdbc-connection"}, transformation_ctx = "DataSource0")

Para agregar un conector personalizado a AWS Glue Studio

1. Cree el código para su conector personalizado. Para obtener más información, consulte Desarrollo deconectores personalizados (p. 93) .

2. Agregue soporte para características de AWS Glue a su conector. Aquí hay algunos ejemplos de estascaracterísticas y cómo se utilizan dentro del script de trabajo generado por AWS Glue Studio:

• Mapeo de tipos de datos: el conector puede convertir el tipo de las columnas mientraslas lee desde el almacén de datos subyacente. Por ejemplo, un dataTypeMapping de{"INTEGER":"STRING"} convierte todas las columnas de tipo Integer a columnas de tipoString al analizar los registros y construir el archivo DynamicFrame. Esto ayuda a los usuarios aconvertir columnas en los tipos de su elección.

DataSource0 = glueContext.create_dynamic_frame.from_options(connection_type

78

Page 85: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de conectores personalizados

= "custom.jdbc", connection_options = {"dataTypeMapping":{"INTEGER":"STRING"}", connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")

• Partición para lecturas paralelas: AWS Glue permite leer datos paralelos desde el almacén de datosparticionando los datos en una columna. Debe especificar la columna de partición, el límite inferiorde partición, el límite superior de partición y el número de particiones. Esta función le permite haceruso del paralelismo de datos y de varios ejecutores Spark asignados para la aplicación Spark.

DataSource0 = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"upperBound":"200","numPartitions":"4","partitionColumn":"id","lowerBound":"0","connectionName":"test-connection-jdbc"},transformation_ctx = "DataSource0")

• Usar AWS Secrets Manager para almacenar credenciales: la conexión del Data Catalog tambiénpuede contener un secretId para un secreto almacenado en AWS Secrets Manager. El secretode AWS puede almacenar de forma segura la información de autenticación y credenciales, yproporcionarla a su trabajo de ETL durante el tiempo de ejecución. También puede especificar elsecretId del script de Spark de la siguiente manera:

DataSource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"connectionName":"test-connection-jdbc", "secretId"-> "my-secret-id"}, transformation_ctx = "DataSource0")

• Filtrar los datos de origen con predicados de fila y proyecciones de columna: el tiempo de ejecuciónde AWS Glue Spark también permite a los usuarios insertar consultas SQL para filtrar datos enel origen con predicados de fila y proyecciones de columna. Esto permite que su trabajo de ETLcargue datos filtrados más rápidamente desde los almacenes de datos que admiten inserciones.Un ejemplo de consulta SQL insertada a un origen de datos JDBC es: SELECT id, name,department FROM department WHERE id < 200.

DataSource = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"query":"SELECT id, name, department FROM department WHERE id < 200","connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")

• Marcadores de trabajo: AWS Glue admite la carga progresiva de datos de orígenes JDBC. AWSGlue realiza un seguimiento del último registro procesado del almacén de datos y procesa nuevosregistros de datos en las siguientes ejecuciones de trabajos de ETL. Los marcadores de trabajoutilizan la clave principal como columna predeterminada para la clave de marcador, siempre queesta columna aumente o disminuya en forma secuencial. Para obtener más información acerca delos marcadores de trabajo, consulte Marcadores de trabajo en la Guía para desarrolladores de AWSGlue.

DataSource0 = glueContext.create_dynamic_frame.from_options(connection_type = "custom.jdbc", connection_options = {"jobBookmarkKeys":["empno"], "jobBookmarkKeysSortOrder":"asc", "connectionName":"test-connection-jdbc"}, transformation_ctx = "DataSource0")

3. Empaquete el conector personalizado como un archivo JAR y cárguelo a Amazon S3.4. Pruebe su conector personalizado. Para obtener más información, consulte las instrucciones en

GitHub en Conectores personalizados de Glue: guía de pruebas de validación local.5. En la consola de AWS Glue Studio, elija Connectors (Conectores) en el panel de navegación de la

consola.6. En la página Connectors (Conectores), seleccione Create custom connector (Crear conector

personalizado).7. En la página Create custom connector (Crear conector personalizado), ingrese la siguiente

información:

79

Page 86: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de conexiones para conectores

• La ruta a la ubicación del archivo JAR de código personalizado en Amazon S3.• Un nombre para el conector que utilizará AWS Glue Studio.• El tipo de conector, que puede ser JDBC, Spark o Athena.• El nombre del punto de entrada dentro del código personalizado que AWS Glue Studio invoca para

utilizar el conector.• Para los conectores JDBC, este campo debe ser el nombre de clase del controlador JDBC.• En el caso de los conectores Spark, este campo debe ser el nombre de clase del origen de datos

completo, o su alias, que se utiliza al cargar el origen de datos Spark con el operador de format.• (Sólo JDBC) la dirección URL base utilizada por la conexión JDBC para el almacén de datos.• (Opcional) descripción del conector personalizado.

8. Elija Create connector (Crear conector).9. Desde la página Connectors (Conectores), cree una conexión que utilice este conector, tal y como se

describe en Creación de conexiones para conectores (p. 80).

Creación de conexiones para conectoresUna conexión de AWS Glue es un objeto del Data Catalog que almacena información de conexión paraun almacén de datos determinado. Las conexiones almacenan credenciales de inicio de sesión, cadenasde URI, información de nube privada virtual (VPC), etc. Al crear conexiones en Data Catalog se ahorra elesfuerzo de tener que especificar todos los detalles de conexión cada vez que se crea un trabajo.

Note

Las conexiones creadas con la consola de AWS Glue no aparecen en AWS Glue Studio.

Para crear una conexión para un conector

1. En la consola de AWS Glue Studio, elija Connectors (Conectores) en el panel de navegación de laconsola.

2. Elija el conector para el que desea crear una conexión y, a continuación, elija Create connection(Crear conexión).

3. En la página Create connection (Crear conexión) ingrese un nombre para la conexión y, si lo desea,una descripción.

4. Ingrese los detalles de conexión. En función del tipo de conector que haya seleccionado, se le pediráque ingrese información adicional:

• Ingrese la información de autenticación solicitada, como el nombre de usuario y la contraseña, oelija un secreto de AWS.

• Para los conectores que utilizan JDBC, ingrese la información necesaria para crear la dirección URLJDBC para el almacén de datos.

• Si usa una nube privada virtual (VPC), ingrese la información de red de su VPC.5. Elija Create connection (Crear conexión).

Será dirigido a la página Connectors (Conectores) y el banner informativo le indicará la conexión quese creó. Ahora puede utilizar la conexión en los trabajos de AWS Glue Studio, como se describe enthe section called “Crear trabajos que utilicen un conector” (p. 23).

Creación de una conexión KafkaAl crear una conexión Kafka, si se selecciona la opción Kafka en el menú desplegable, se mostraránconfiguraciones adicionales que puede establecer:

80

Page 87: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de una conexión Kafka

• Detalles del clúster de Kafka• Autenticación• Cifrado• Opciones de red

Configuración del clúster de Kafka

1. Elija la ubicación del clúster. Puede elegir entre un streaming administrado de Amazon para unclúster Apache Kafka (MSK o un clúster Apache Kafka administrado por el cliente. Para obtener másinformación sobre streaming administrado de Amazon para Apache Kafka, consulte Amazon managedstreaming for Apache Kafka (MSK).

Note

Amazon Managed Streaming for Apache Kafka solo admite métodos de autenticación TLS ySASL/SCRAM-SHA-512.

2. Ingrese las URL de sus servidores Bootstrap de Kafka. Puede ingresar más de uno separando cadaservidor por una coma. Incluya el número de puerto al final de la URL agregando :<port number>.

Por ejemplo: b-1.vpc-test-2.034a88o.kafka-us-east-1.amazonaws.com:9094

Seleccione un método de autenticación

AWS Glue admite el marco de autenticación simple y capa de seguridad (SASL) para la autenticación. Elmarco SASL admite varios mecanismos de autenticación y AWS Glue ofrece tanto el protocolo SCRAM(nombre de usuario y contraseña) como GSSAPI (protocolo Kerberos).

Al elegir un método de autenticación en el menú desplegable, se pueden seleccionar los siguientesmétodos de autenticación de clientes:

81

Page 88: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de una conexión Kafka

• Ninguno: sin autenticación. Esto resulta útil si se crea una conexión con fines de prueba.• SASL/SCRAM-SHA-512: la elección de este método de autenticación le permitirá especificar

credenciales de autenticación. Existen dos opciones disponibles:• Usar AWS Secrets Manager (recomendado): si selecciona esta opción, puede almacenar su token

en AWS Secrets Manager y dejar que AWS Glue acceda a él cuando sea necesario. Para agregar eltoken, búsquelo en el cuadro de búsqueda escribiendo el nombre o ARN.

Puede seleccionar el ARN secreto de AWS Secrets Manager asociado a su cuenta.

Para obtener más información, consulte Granting permission to retrieve secret values (Concesión depermiso para recuperar valores secretos).

• Nombre de usuario y contraseña del proveedor directamente.• SASL/GSSAPI (Kerberos): si selecciona esta opción, puede seleccionar la ubicación del archivo keytab,

el archivo krb5.conf e ingresar el nombre principal y el nombre del servicio de Kerberos. Las ubicacionesde los archivos keytab y krb5.conf deben estar en una ubicación de Simple Storage Service (AmazonS3). Dado que MSK aún no admite SASL/GSSAPI, esta opción solo está disponible para clústeresApache Kafka administrados por el cliente. Para obtener más información, consulte MIT KerberosDocumentation: Keytab (Documentación de MIT Kerberos: Keytab).

• Autenticación de cliente SSL: si selecciona esta opción, puede seleccionar la ubicación del almacén declaves del cliente Kafka navegando por Simple Storage Service (Amazon S3). Opcionalmente, puedeingresar la contraseña del almacén de claves del cliente Kafka y la contraseña de clave de cliente Kafka.

82

Page 89: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de una conexión Kafka

Establecimiento de la configuración de cifrado

1. Si la conexión Kafka requiere una conexión SSL, active la casilla de verificación de Require SSLconnection (Requerir conexión SSL). Tenga en cuenta que la conexión fallará si no puede conectarsea través de SSL. SSL para cifrado se puede utilizar con cualquiera de los métodos de autenticación(SASL/SCRAM-SHA-512, SASL/GSSAPI, autenticación de cliente SSL) y es opcional.

Si el método de autenticación se establece en SSL client authentication (Autenticación de cliente SSL),esta opción se seleccionará automáticamente y se desactivará para evitar cambios.

2. (Opcional). Elija la ubicación del certificado privado de la entidad de certificación (CA). Tenga encuenta que la ubicación de la certificación debe estar en una ubicación de S3. Elija la opción Browse(Explorar) para elegir el archivo de un bucket de S3 conectado. La ruta debe tener el formato s3://bucket/prefix/filename.pem. Debe terminar con el nombre de archivo y la extensión .pem.

3. Puede optar por omitir la validación del certificado de una entidad de certificación (CA). Elija la casillade verificación Skip validation of certificate from certificate authority (CA) (Omitir la validación delcertificado de la entidad de certificación [CA]). Si esta casilla no está marcada, AWS Glue validacertificados para tres algoritmos:

• SHA256withRSA• SHA384withRSA• SHA512withRSA

83

Page 90: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de una conexión Kafka

(Opcional) Opciones de red

A continuación, se indican pasos opcionales para configurar la VPC, subred y grupos de seguridad. Si eltrabajo de AWS Glue debe ejecutarse en instancias de Amazon EC2 en una subred de nube virtual privada(VPC), debe proporcionar información adicional de configuración específica de la VPC.

1. Elija el nombre de la nube virtual privada (VPC) que contenga el origen de datos.2. Elija una subred con su VPC.3. Elija uno o más grupos de seguridad que permitan el acceso al almacén de datos de la subred VPC.

Los grupos de seguridad están asociados a la ENI asociada a la subred. Debe elegir al menos ungrupo de seguridad con una regla de entrada con autorreferencia para todos los puertos TCP.

84

Page 91: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioCreación de trabajos con conectores personalizados

Creación de trabajos con conectorespersonalizados

Puede utilizar conectores y conexiones tanto para nodos de origen de datos como para nodos de destinode datos en AWS Glue Studio.

Temas• Creación de trabajos que utilicen un conector para el origen de datos (p. 85)• Configuración de las propiedades de origen para los nodos que utilizan conectores (p. 86)• Configuración de las propiedades de destino para los nodos que utilizan conectores (p. 90)

Creación de trabajos que utilicen un conector para elorigen de datosAl crear un nuevo trabajo, puede elegir un conector para el origen de datos y los destinos de datos.

Para crear un trabajo que utilice conectores para el origen de datos o el destino de datos

1. Inicie sesión en la AWS Management Console y abra la consola de AWS Glue Studio en https://console.aws.amazon.com/gluestudio/.

2. En la página Connectors (Conectores), en la lista de recursos Your connections (Sus conexiones), elijala conexión que desea usar en su trabajo y, a continuación, elija Create job (Crear el trabajo).

Como alternativa, en la página Jobs (Trabajos) de AWS Glue Studio, en Create job (Crear el trabajo),elija Source and target added to the graph (Origen y destino agregados al gráfico). En la listadesplegable Source (Origen), elija el conector personalizado que desea usar en el trabajo. Tambiénpuede elegir un conector para Target (Destino).

85

Page 92: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioConfiguración de las propiedades de origen

para los nodos que utilizan conectores

3. Elija Create (Crear) para abrir el editor visual de trabajos.4. Configure el nodo de origen de datos, como se describe en Configuración de las propiedades de

origen para los nodos que utilizan conectores (p. 86).5. Continúe creando su trabajo de ETL mediante el agregado de transformaciones, almacenes de datos

adicionales y destinos de datos, como se describe en Edición de trabajos de ETL en AWS GlueStudio (p. 25).

6. Personalice el entorno de ejecución del trabajo mediante la configuración de las propiedades deltrabajo, como se describe en Modificar las propiedades del trabajo (p. 111).

7. Guarde y ejecute el trabajo.

Configuración de las propiedades de origen para losnodos que utilizan conectoresDespués de crear un trabajo que utiliza un conector para el origen de datos, el editor visual de trabajosmuestra un gráfico de trabajo con un nodo de origen de datos configurado para el conector. Debeconfigurar las propiedades del origen de datos para ese nodo.

Para configurar las propiedades de un nodo de origen de datos que utiliza un conector

1. Elija el nodo de origen de datos del conector en el gráfico de trabajo o agregue un nodo nuevo yelija el conector para el Node type (Tipo de nodo). A continuación, en el lado derecho, en el panel dedetalles del nodo, seleccione la pestaña Data source properties (Propiedades de origen de datos), siaún no está seleccionada.

86

Page 93: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioConfiguración de las propiedades de origen

para los nodos que utilizan conectores

2. En la pestaña Data source properties (Propiedades de origen de datos), elija la conexión que deseautilizar para este trabajo.

Ingrese la información adicional necesaria para cada tipo de conexión:

JDBC

• Data source input type (Tipo de entrada de origen de datos): elija proporcionar un nombre detabla o una consulta SQL como origen de datos. En función de su elección, deberá proporcionarla siguiente información adicional:• Table name (Nombre de la tabla): el nombre de la tabla en el origen de datos. Si el origen de

datos no utiliza el término tabla, proporcione el nombre de una estructura de datos adecuada,como se indica en la información de uso del conector personalizado (que está disponible enAWS Marketplace).

• Filter predicate (Filtrar predicado): una cláusula de condición que se usa al leer el origen dedatos, similar a WHERE, utilizada para recuperar un subconjunto de los datos.

• Query code (Código de consulta): ingrese una consulta SQL que se utilizará para recuperarun conjunto de datos específico del origen de datos. Un ejemplo de una consulta SQL básicaes:

SELECT column_list FROM table_name WHERE where_clause

• Schema (Esquema): ya que AWS Glue Studio utiliza la información almacenada en la conexiónpara tener acceso al origen de datos en lugar de recuperar información de los metadatos deuna tabla de Data Catalog, debe proporcionar los metadatos del esquema para el origen dedatos. Elija Add schema (Agregar esquema) para abrir el editor de esquemas.

Para obtener instrucciones sobre cómo utilizar el editor de esquemas, consulte Edición deesquema para un nodo de transformación personalizado (p. 51).

• Partition column (Columna de partición): (opcional) puede optar por particionar las lecturasde datos al proporcionar valores para Partition column (Columna de partición), Lower bound(Límite inferior),Upper bound (Límite superior) y Number of partitions (Número de particiones).

87

Page 94: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioConfiguración de las propiedades de origen

para los nodos que utilizan conectores

Los valores lowerBound y upperBound se utilizan para decidir el intervalo de partición, nopara filtrar las filas de la tabla. Todas las filas de la tabla se particionan y se devuelven.

Note

La partición de columnas agrega una condición de partición adicional a la consultautilizada para leer los datos. Cuando se utiliza una consulta en lugar de un nombre detabla, debe validar que la consulta funciona con la condición de partición especificada.Por ejemplo:• Si el formato de consulta es "SELECT col1 FROM table1", pruebe la consulta

al agregar una cláusula WHERE al final de la consulta que utiliza la columna departición.

• Si su formato de consulta es "SELECT col1 FROM table1 WHERE col2=val",pruebe la consulta al ampliar la cláusula WHERE con AND y una expresión que utilizala columna de partición.

• Data type casting (Conversión de tipo de datos): si el origen de datos utiliza tipos de datos queno están disponibles en JDBC, utilice esta sección para especificar cómo se debe convertirun tipo de datos del origen de datos en tipos de datos JDBC. Puede especificar hasta 50conversiones de tipos de datos diferentes. Todas las columnas del origen de datos que utilizanel mismo tipo de datos se convierten de la misma manera.

Por ejemplo, si tiene tres columnas en el origen de datos que utilizan el tipo de datos Float eindica que el tipo de datos Float se debe convertir al tipo de datos String de JDBC, las trescolumnas que utilizan el tipo de datos Float se convierten a los tipos de datos String.

• Job bookmark keys (Claves de marcadores de trabajo): los marcadores de trabajo ayudana AWS Glue a mantener la información de estado y evitar el reprocesamiento de los datosantiguos. Especifique una o más columnas como claves favoritas. AWS Glue Studio utilizaclaves favoritas para realizar un seguimiento de los datos que ya se han procesado durante unaejecución anterior del trabajo de ETL. Cualquier columna que utilice para claves de marcadorespersonalizadas debe ser estrictamente monotónica en aumento o disminución, pero se permitenespacios.

Si ingresa varias claves de marcadores, se combinan para formar una única clave compuesta.Una clave de marcador de trabajo compuesta no debe contener columnas duplicadas. Sino especifica ninguna clave favorita, AWS Glue Studio utiliza la clave principal como clavefavorita de forma predeterminada, siempre que aumente o disminuya en forma secuencial (sinbrechas). Si la tabla no tiene una clave principal, pero la propiedad del marcador de trabajo estáhabilitada, debe proporcionar claves de marcadores de trabajo personalizadas. De lo contrario,la búsqueda de claves principales que se utilizarán como valor predeterminado fallará y laejecución del trabajo fallará.

• Job bookmark keys sorting order (Orden de clasificación de claves de marcadores de trabajo):elija si los valores clave están en aumento o disminución secuencial.

Spark

• Schema (Esquema): ya que AWS Glue Studio utiliza la información almacenada en la conexióna fin de tener acceso al origen de datos en lugar de recuperar información de los metadatosde una tabla de Data Catalog, debe proporcionar los metadatos del esquema para el origen dedatos. Elija Add schema (Agregar esquema) para abrir el editor de esquemas.

Para obtener instrucciones sobre cómo utilizar el editor de esquemas, consulte Edición deesquema para un nodo de transformación personalizado (p. 51).

• Connection options (Opciones de conexión): ingrese pares clave-valor adicionales según seanecesario para proporcionar información u opciones de conexión adicionales. Por ejemplo,

88

Page 95: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioConfiguración de las propiedades de origen

para los nodos que utilizan conectores

puede ingresar un nombre de base de datos, un nombre de tabla, un nombre de usuario y unacontraseña.

Por ejemplo, para OpenSearch, ingrese los siguientes pares clave-valor, como se describe enTutorial: uso del Elasticsearch Spark Connector (p. 96):• es.net.http.auth.user : username• es.net.http.auth.pass : password• es.nodes : https://<Elasticsearch endpoint>• es.port : 443• path: <Elasticsearch resource>• es.nodes.wan.only : true

Para obtener un ejemplo de las opciones de conexión mínimas que se van a utilizar, consulteel script de prueba de ejemplo MinimalSparkConnectorTest.scala en GitHub, que muestra lasopciones de conexión que normalmente proporcionaría en una conexión.

Athena

• Table name (Nombre de la tabla): el nombre de la tabla en el origen de datos. Si está utilizandoun conector para leer los registros de Athena-CloudWatch, debe ingresar all_log_streamsdel nombre de la tabla.

• Athena schema name (Nombre del esquema Athena): elija el esquema de su origen de datosAthena que corresponde a la base de datos que contiene la tabla. Si está utilizando un conectorpara leer los registros de Athena-CloudWatch, debe ingresar un nombre de esquema similar a /aws/glue/name.

• Schema (Esquema): ya que AWS Glue Studio utiliza la información almacenada en la conexióna fin de tener acceso al origen de datos en lugar de recuperar información de los metadatosde una tabla de Data Catalog, debe proporcionar los metadatos del esquema para el origen dedatos. Elija Add schema (Agregar esquema) para abrir el editor de esquemas.

Para obtener instrucciones sobre cómo utilizar el editor de esquemas, consulte Edición deesquema para un nodo de transformación personalizado (p. 51).

• Additional connection options (Opciones adicionales de conexión): ingrese pares clave-valoradicionales según sea necesario para proporcionar información u opciones de conexiónadicionales.

Para ver un ejemplo, consulte el archivo README.md en https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Athena. En los pasos de estedocumento, el código de muestra muestra las opciones de conexión mínimas necesarias, que sontableName, schemaName y className. En el ejemplo del código se especifican estas opcionescomo parte de la variable optionsMap, pero puede especificarlos para su conexión y luego usarla conexión.

3. (Opcional) después de proporcionar la información necesaria, puede ver el esquema de datosresultante para su origen de datos al seleccionar la pestaña Output schema (Esquema de salida) enel panel de detalles del nodo. Los nodos secundarios que agregue al gráfico de trabajo utilizan elesquema que se muestra en esta pestaña.

4. (Opcional) después de configurar las propiedades del nodo y del origen de datos, puede ver laprevisualización del conjunto de datos para su origen de datos al seleccionar la pestaña Data preview(Previsualización de datos) en el panel de detalles del nodo. La primera vez que elija esta pestañapara cualquier nodo de trabajo, se le pedirá que proporcione un rol de IAM para acceder a losdatos. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto comoproporcione un rol de IAM.

89

Page 96: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioConfiguración de las propiedades de destino

para los nodos que utilizan conectores

Configuración de las propiedades de destino para losnodos que utilizan conectoresSi utiliza un conector para el tipo de destino de datos, debe configurar las propiedades del nodo de destinode datos.

Para configurar las propiedades de un nodo de destino de datos que utiliza un conector

1. Elija el nodo de destino de datos para el conector en el gráfico de trabajo. A continuación, en el ladoderecho, en el panel de detalles del nodo, seleccione la pestaña Data target properties (Propiedadesde destino de datos), si aún no está seleccionada.

2. En la pestaña Data target properties (Propiedades de Destino de datos), elija la conexión que seutilizará para escribir en el destino.

Ingrese la información adicional necesaria para cada tipo de conexión:

JDBC

• Connection (Conexión): elija la conexión que desea utilizar con el conector. Para obtenerinformación acerca de cómo crear una conexión, consulte Creación de conexiones paraconectores (p. 80).

• Table name (Nombre de la tabla): el nombre de la tabla en el destino de datos. Si el destino dedatos no utiliza el término tabla, proporcione el nombre de una estructura de datos adecuada,como se indica en la información de uso del conector personalizado (que está disponible enAWS Marketplace).

• Batch size (Tamaño del lote) (opcional): ingrese el número de filas o registros que deseainsertar en la tabla de destino en una sola operación. El valor predeterminado es 1000 filas.

Spark

• Connection (Conexión): elija la conexión que desea utilizar con el conector. Si no creó unaconexión anteriormente, elija Create connection (Crear conexión) para crear una. Para obtenerinformación acerca de cómo crear una conexión, consulte Creación de conexiones paraconectores (p. 80).

• Connection options (Opciones de conexión): ingrese pares clave-valor adicionales según seanecesario para proporcionar información u opciones de conexión adicionales. Puede ingresarun nombre de base de datos, un nombre de tabla, un nombre de usuario y una contraseña.

Por ejemplo, para OpenSearch, ingrese los siguientes pares clave-valor, como se describe enTutorial: uso del Elasticsearch Spark Connector (p. 96):• es.net.http.auth.user : username• es.net.http.auth.pass : password• es.nodes : https://<Elasticsearch endpoint>• es.port : 443• path: <Elasticsearch resource>• es.nodes.wan.only : true

Para obtener un ejemplo de las opciones de conexión mínimas que se van a utilizar, consulteel script de prueba de ejemplo MinimalSparkConnectorTest.scala en GitHub, que muestra lasopciones de conexión que normalmente proporcionaría en una conexión.

90

Page 97: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAdministración de conectores y conexiones

3. Después de proporcionar la información necesaria, puede ver el esquema de datos resultante para suorigen de datos al seleccionar la pestaña Output schema (Esquema de salida) en el panel de detallesdel nodo.

Administración de conectores y conexionesUtiliza la página Connectors (Conectores) en AWS Glue Studio para administrar los conectores y lasconexiones.

Temas• Visualización de detalles del conector y la conexión (p. 91)• Edición de conectores y conexiones (p. 91)• Eliminación de conectores y conexiones (p. 92)• Cancelar una suscripción para un conector (p. 92)

Visualización de detalles del conector y la conexiónPuede ver información resumida acerca de los conectores y las conexiones en las tablas de recursos Yourconnectors (Sus conectores) y Your connections (Sus conexiones) en la página Connectors (Conectores).Para ver la información detallada, siga estos pasos.

Note

Las conexiones creadas con la consola de AWS Glue no aparecen en AWS Glue Studio.

Para ver los detalles del conector o la conexión

1. En la consola de AWS Glue Studio, elija Connectors (Conectores) en el panel de navegación de laconsola.

2. Elija el conector o la conexión para el/la que desea ver información detallada.3. Seleccione Actions (Acciones) y luego elija View details (Ver detalles) para abrir la página de detalles

de ese conector o conexión.4. En la página de detalles, puede elegir Edit (Editar) o Delete (Eliminar)guilabel> el conector o la

conexión.

• En el caso de los conectores, puede elegir Create connection (Crear conexión) para crear unaconexión nueva que utilice el conector.

• En el caso de las conexiones, puede elegir Create job (Crear trabajo) para crear un trabajo queutilice la conexión.

Edición de conectores y conexionesSe utiliza la página Connectors (Conectores) para modificar la información almacenada en sus conectoresy conexiones.

Para modificar un conector o una conexión

1. En la consola de AWS Glue Studio, elija Connectors (Conectores) en el panel de navegación de laconsola.

2. Elija el conector o conexión que desea modificar.

91

Page 98: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEliminación de conectores y conexiones

3. Seleccione Actions y luego Edit.

También puede elegir View details (Ver detalles) y en la página de detalles del conector o la conexión,puede elegir Edit (Editar).

4. En la página Edit connector (Editar conector) o Edit connection (Editar conexión), actualice lainformación y, a continuación, elija Save (Guardar).

Eliminación de conectores y conexionesSe utiliza la página Connectors (Conectores) para eliminar conectores y conexiones. Si elimina unconector, también se deben eliminar todas las conexiones que se hayan creado para ese conector.

Para quitar conectores de AWS Glue Studio

1. En la consola de AWS Glue Studio, elija Connectors (Conectores) en el panel de navegación de laconsola.

2. Elija el conector o conexión que desea eliminar.3. Elija Acciones y, a continuación, elija Eliminar.

También puede elegir View details (Ver detalles) y en la página de detalles del conector o la conexión,puede elegir Delete (Eliminar).

4. Compruebe que desea eliminar el conector o la conexión mediante la introducción de Delete y luegoelija Delete (Eliminar).

Al eliminar un conector, también se eliminan todas las conexiones creadas para ese conector.

Los trabajos que utilicen una conexión eliminada ya no funcionarán. Puede editar los trabajos para queutilicen un almacén de datos diferente o eliminar los trabajos. Para obtener información sobre cómoeliminar un trabajo, consulte Eliminación de trabajos (p. 115).

Si elimina un conector, esto no cancela la suscripción del conector en AWS Marketplace. Para cancelaruna suscripción de un conector eliminado, siga las instrucciones en Cancelar una suscripción para unconector (p. 92).

Cancelar una suscripción para un conectorDespués de eliminar las conexiones y el conector de AWS Glue Studio, puede cancelar la suscripción enAWS Marketplace si ya no necesita el conector.

Note

Si cancela su suscripción a un conector, esto no elimina el conector o la conexión de su cuenta.Cualquier trabajo que utilice el conector y las conexiones relacionadas ya no podrá usar elconector y fallará.Antes de cancelar la suscripción o volver a suscribirse a un conector desde AWS Marketplace,debe eliminar las conexiones existentes y los conectores asociados con ese producto AWSMarketplace.

Para cancelar la suscripción a un conector en AWS Marketplace

1. Inicie sesión en la consola de AWS Marketplace en https://console.aws.amazon.com/marketplace.2. Elija Manage subscriptions (Administrar suscripciones).3. En la página Manage subscriptions (Administrar suscripciones), elija Manage (Administrar) junto a la

suscripción del conector que desea cancelar.

92

Page 99: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioDesarrollo de conectores personalizados

4. Elija Actions (Acciones) y después Cancel Subscription (Cancelar suscripción).5. Seleccione la casilla de verificación para confirmar que las instancias en ejecución se cargan a su

cuenta y, a continuación, elija Yes, cancel subscription (Sí, cancelar suscripción).

Desarrollo de conectores personalizadosPuede escribir el código que lee datos del almacén de datos o escribe datos en él y los formatea parautilizarlos con trabajos de AWS Glue Studio. Puede crear conectores para los almacenes de datos deSpark, Athena y JDBC. El código de muestra publicado en GitHub proporciona información general de lasinterfaces básicas que debe implementar.

Será necesario un entorno de desarrollo local para crear su código de conector. Puede usar cualquier IDEo incluso solo un editor de línea de comandos para escribir su conector. Algunos ejemplos de entornos dedesarrollo incluyen los siguientes:

• Un entorno Scala local con una biblioteca AWS Glue ETL Maven local, como se describe en Desarrollolocal con Scala en la Guía para desarrolladores de AWS Glue.

• IDE de IntelliJ, mediante la descarga de IDE desde https://www.jetbrains.com/idea/.

Temas• Desarrollo de conectores Spark (p. 93)• Desarrollo de conectores Athena (p. 93)• Desarrollo de conectores JDBC (p. 93)• Ejemplos de uso de conectores personalizados con AWS Glue Studio (p. 94)• Desarrollo de conectores de AWS Glue para AWS Marketplace (p. 94)

Desarrollo de conectores SparkPuede crear un conector Spark con la API Spark DataSource V2 (Spark 2.4) para leer datos.

Para crear un conector Spark personalizado

Siga los pasos en la biblioteca GitHub de AWS Glue para desarrollar conectores Spark, que se encuentraen https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Spark/README.md.

Desarrollo de conectores AthenaPuede crear un conector de Athena para que lo utilice AWS Glue y AWS Glue Studio con la finalidad deconsultar un origen de datos personalizado.

Para crear un conector Athena personalizado

Siga los pasos en la biblioteca GitHub de AWS Glue para desarrollar conectores Athena, que se encuentraen https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Athena.

Desarrollo de conectores JDBCPuede crear un conector que utilice JDBC para acceder a los almacenes de datos.

93

Page 100: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioEjemplos de uso de conectores

personalizados con AWS Glue Studio

Para crear un conector JDBC personalizado

1. Instale las bibliotecas de tiempo de ejecución Spark de AWS Glue en su entorno de desarrollo local.Consulte las instrucciones en la biblioteca de ejemplo GitHub de AWS Glue en https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/GlueSparkRuntime/README.md.

2. Implemente el controlador JDBC que es responsable de recuperar los datos del origen de datos.Consulte la documentación de Java para Java SE 8.

Cree un punto de entrada dentro del código que AWS Glue Studio utiliza para localizar el conector. Elcampo Class name (Nombre de clase) debe ser la ruta completa de su controlador JDBC.

3. Use la API GlueContext para leer datos con el conector. Los usuarios pueden agregar más opcionesde entrada en la consola de AWS Glue Studio para configurar la conexión con el origen de datos, si esnecesario. Para obtener un ejemplo de código que muestra cómo leer y escribir en una base de datosJDBC con un conector JDBC personalizado, consulte Valores personalizado y tipo de conexión AWSMarketplace.

Ejemplos de uso de conectores personalizados conAWS Glue StudioPuede consultar los siguientes blogs para ver ejemplos de uso de conectores personalizados:

• Desarrollar, probar e implementar conectores personalizados para los almacenes de datos con AWSGlue

• Apache Hudi: Writing to Apache Hudi tables using AWS Glue Custom Connector (Escribir en tablasApache Hudi con conectores personalizados de Glue)

• Google BigQuery: Migrar datos de Google BigQuery a Amazon S3 mediante conectores personalizadosde AWS Glue

• Snowflake (JDBC): Performing data transformations using Snowflake and AWS Glue (Realizartransformaciones de datos con Snowflake y Glue)

• SingleStore: Building fast ETL using SingleStore and AWS Glue (Construir ETL rápido con SingleStore yGlue)

• Salesforce: Ingest Salesforce data into Amazon S3 using the CData JDBC custom connector with AWSGlue (Capturar datos de Salesforce en Amazon S3 mediante el conector personalizado CData JDBC conAWS Glue)

• MongoDB: Building AWS Glue Spark ETL jobs using Amazon DocumentDB (with MongoDBcompatibility) and MongoDB (Crear trabajos de ETL de Glue Spark mediante Amazon DocumentDB[compatible con MongoDB] y MongoDB)

• Amazon Relational Database Service(Amazon RDS): Building AWS Glue Spark ETL jobs by bringingyour own JDBC drivers for Amazon RDS (Crear trabajos de ETL de Glue Spark al incorporar sus propioscontroladores JDBC para Amazon RDS)

• MySQL (JDBC): https://github.com/aws-samples/aws-glue-samples/blob/master/GlueCustomConnectors/development/Spark/SparkConnectorMySQL.scala

Desarrollo de conectores de AWS Glue para AWSMarketplaceComo socio de AWS, puede crear conectores personalizados y cargarlos a AWS Marketplace para vendera clientes de AWS Glue.

94

Page 101: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioRestricciones para el uso de conectores

y conexiones en AWS Glue Studio

El proceso para desarrollar el código del conector es el mismo que para los conectores personalizados,pero el proceso de carga y verificación del código del conector es más detallado. Consulte lasinstrucciones en Creación de conectores para AWS Marketplace en el sitio web de GitHub.

Restricciones para el uso de conectores yconexiones en AWS Glue Studio

Cuando se utilizan conectores personalizados o conectores de AWS Marketplace, tenga en cuenta lassiguientes restricciones:

• La API TestConnection no se admite con conexiones creadas para conectores personalizados.• El cifrado de las contraseñas de conexión del Data Catalog no se admite con conectores personalizados.• No puede utilizar marcadores de trabajo si especifica un predicado de filtro para un nodo de origen de

datos que utiliza un conector JDBC.

95

Page 102: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioRequisitos previos

Tutorial: uso del Elasticsearch SparkConnector

Elasticsearch es un motor de búsqueda y análisis popular y de código abierto para casos de uso comoanálisis de registros, monitoreo de aplicaciones en tiempo real y análisis de secuencias de clics. Puedeusar OpenSearch como almacén de datos para sus trabajos de extracción, transformación y carga (ETL) alconfigurar el Elasticsearch Spark Connector en AWS Glue Studio. Este conector está disponible de formagratuita en AWS Marketplace.

En este tutorial, mostraremos cómo conectarse a sus nodos de Amazon OpenSearch Service con unnúmero mínimo de pasos.

Temas• Requisitos previos (p. 96)• Paso 1: (opcional) cree un secreto de AWS para la información del clúster de OpenSearch (p. 96)• Paso 2: suscríbase al conector (p. 97)• Paso 3: activar el conector en AWS Glue Studio y crear una conexión (p. 98)• Paso 4: configurar un rol de IAM para el trabajo de ETL (p. 98)• Paso 5: crear un trabajo que utilice la conexión OpenSearch (p. 99)• Paso 6: ejecutar el trabajo (p. 101)

Requisitos previosPara utilizar este tutorial, debe disponer de lo siguiente:

• Acceso a AWS Glue Studio• Acceso a un clúster de OpenSearch en AWS Cloud• Acceso configurado a la Amazon VPC que contiene su almacén de datos, tal y como se describe en

Configurar una VPC para su trabajo de ETL (p. 14).• Permisos configurados de acuerdo con Revisar los permisos de IAM necesarios para trabajos de

ETL. (p. 10)• (Opcional) acceso a AWS Secrets Manager.

Paso 1: (opcional) cree un secreto de AWS para lainformación del clúster de OpenSearch

Para almacenar y utilizar de forma segura su credencial de conexión, guarde su credencial en AWSSecrets Manager. La conexión utilizará más tarde en el tutorial el secreto que haya creado. Los paresclave-valor de credenciales se introducirán en el Elasticsearch Spark Connector como opciones deconexión normales.

Para obtener más información acerca de los permisos mínimos, consulte Creación y administración desecretos con AWS Secrets Manager en la Guía del usuario de AWS Secrets Manager.

96

Page 103: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso siguiente

Para crear un secreto de AWS

1. Inicie sesión en la consola de AWS Secrets Manager.2. En la página de introducción del servicio o en la página con la lista Secretos, elija Store a new secret

(Almacenar un nuevo secreto).3. En la página Store a new secret (Almacenar un nuevo secreto), elija Other type of secret (Otro tipo de

secreto). Esta opción indica que debe proporcionar la estructura y los detalles de su secreto.4. Agregue una Clave y un Valor para el nombre de usuario del clúster de OpenSearch. Por ejemplo:

es.net.http.auth.user: nombre de usuario5. Seleccione + Add row (+ Agregar fila) e ingrese otro par clave-valor para la contraseña. Por ejemplo:

es.net.http.auth.pass: password6. Elija Next (Siguiente).7. Escriba un nombre secreto. Por ejemplo: my-es-secret. Si lo desea, también puede escribir una

descripción.

Registre el nombre secreto, que se utilizará más adelante en este tutorial y, a continuación, elija Next(Siguiente).

8. Elija Next (Siguiente) una vez más, y luego elija Store (Almacenar) para crear el secreto.

Paso siguientePaso 2: suscríbase al conector (p. 97)

Paso 2: suscríbase al conectorEl Elasticsearch Spark Connector está disponible de forma gratuita en AWS Marketplace.

Para suscribirse al Elasticsearch Spark Connector en AWS Marketplace

1. Si aún no ha configurado su cuenta de AWS para utilizar License Manager, realice lo siguiente:

a. Abra la consola de AWS License Manager en https://console.aws.amazon.com/license-manager.b. Elija Create customer managed license (Crear licencia administrada por el cliente).c. En la ventana IAM permissions (one-time setup) [Permisos de IAM (configuración única)], elija I

grant AWS License Manager the required permissions (Concedo a Amazon License Manager lospermisos necesarios), y, a continuación, elija Grant premissions (Conceder permisos).

Si no ve esta ventana, ya ha configurado los permisos necesarios.2. Abra la consola de AWS Glue Studio en https://console.aws.amazon.com/gluestudio/.3. En la consola de AWS Glue Studio, expanda el ícono del menú ( ) y luego elija Connectors

(Conectores) en el panel de navegación.4. En la página Connectors (Conectores), elija Go to AWS Marketplace (Ir a MKT).5. En AWS Marketplace, en la sección Search AWS Glue Studio products (Buscar productos de AWS

Glue Studio), ingrese elasticsearch connector en el campo de búsqueda, y presione Enter(Intro).

6. Elija el nombre del conector, ElasticSearch Spark connector for AWS Glue (Conector ElasticSearchSpark para Glue).

97

Page 104: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso siguiente

7. En la página de producto del conector, utilice las pestañas para ver información sobre el conector.Cuando esté listo para continuar, elija Continue to Subscribe (Continuar con la suscripción).

8. Revise y acepte las condiciones de uso del software.9. Cuando finalice el proceso de suscripción, elija Continue to Configuration (Continuar con la

configuración).10. Conserve las opciones predeterminadas en la página Configure this software (Configurar este

software) y elija Continue to Launch (Continuar con el lanzamiento).

Paso siguientePaso 3: activar el conector en AWS Glue Studio y crear una conexión (p. 98)

Paso 3: activar el conector en AWS Glue Studio ycrear una conexión

Después de elegir, Continue to Launch (Continuar con el lanzamiento), verá la página Launch this software(Lanzar este software) en AWS Marketplace. Se crea una conexión al utilizar el vínculo para habilitar elconector en AWS Glue Studio.

Para implementar el conector y crear una conexión en AWS Glue Studio

1. En la página Launch this software (Lanzar este software) en la consola de AWS Marketplace, elijaUsage Instructions (Instrucciones de uso), y luego elija el enlace en la ventana que aparece.

Su navegador se redirige a la página Create marketplace connection (Crear conexión de marketplace)en la consola de AWS Glue Studio.

2. Escriba un nombre para la conexión. Por ejemplo: my-es-connection.3. En la sección Connection access (Acceso a la conexión), para Connection credential type (Tipo de

credenciales de conexión), elija User name and password (Nombre de usuario y contraseña).4. En AWS secret (Secreto de AWS), especifique el nombre de su secreto. Por ejemplo: my-es-

secret.5. En la sección Network options (Opciones de red), ingrese la información de la VPC para conectarse al

clúster de Elastic Search.6. Seleccione Create connection and activate connector (Crear conexión y habilitar conector).

Paso siguientePaso 4: configurar un rol de IAM para el trabajo de ETL (p. 98)

Paso 4: configurar un rol de IAM para el trabajo deETL

Al crear el trabajo de ETL de AWS Glue, se especifica un rol de AWS Identity and Access Management(IAM) que el trabajo utilizará. El rol debe conceder acceso a todos los recursos utilizados por el trabajo,incluido Amazon S3 (para cualquier origen, destino, script, archivos de controladores y directoriostemporales) y también objetos de AWS Glue Data Catalog.

98

Page 105: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso siguiente

El rol de IAM asumido para el trabajo de ETL de AWS Glue también debe tener acceso al secretoque se creó en la sección anterior. De forma predeterminada, el rol administrado de AWS,AWSGlueServiceRole, no tiene acceso al secreto. Para configurar el control de acceso para sussecretos, consulte Autenticación y control de acceso de AWS Secrets Manager y Limitación de acceso asecretos específicos.

Para configurar un rol de IAM para su trabajo de ETL

1. Configure los permisos descritos en the section called “Revisar los permisos de IAM necesarios paratrabajos de ETL.” (p. 10).

2. Configure los permisos adicionales necesarios al utilizar conectores con AWS Glue Studio, como sedescribe en the section called “Permisos necesarios para utilizar conectores” (p. 11).

Paso siguientePaso 5: crear un trabajo que utilice la conexión OpenSearch (p. 99)

Paso 5: crear un trabajo que utilice la conexiónOpenSearch

Después de crear un rol para su trabajo de ETL, puede crear un trabajo en AWS Glue Studio que utilice laconexión y el conector para Open Spark ElasticSearch.

Si su trabajo se ejecuta dentro de una Amazon Virtual Private Cloud (Amazon VPC), asegúrese de quela VPC esté configurada correctamente. Para obtener más información, consulte . the section called“Configurar una VPC para su trabajo de ETL” (p. 14).

Para crear un trabajo que utilice Elasticsearch Spark Connector

1. En AWS Glue Studio, elija Connectors (Conectores).2. En la lista Your connections (Sus conexiones) seleccione la conexión que acaba de crear y elija

Create job (Crear el trabajo).3. En el editor visual de trabajos, elija el nodo Data source (Origen de datos). A la derecha, en la pestaña

Data source properties - Connector (Propiedades del origen de datos: conector), configure informaciónadicional para el conector.

a. Seleccione Add schema (Agregar esquema) e ingrese el esquema del conjunto de datos en elorigen de datos. Las conexiones no utilizan tablas almacenadas en Data Catalog, lo que significaque AWS Glue Studio no conoce el esquema de los datos. Debe proporcionar esta informacióndel esquema en forma manual. Para obtener instrucciones sobre cómo utilizar el editor deesquemas, consulte the section called “Edición de esquema para un nodo de transformaciónpersonalizado” (p. 51).

b. Expanda Connection options (Opciones de conexión).c. Seleccione Add new option (Agregar nueva opción) e ingrese la información necesaria para el

conector que no se ingresó en el secreto de AWS:

• es.nodes : https://<ElasticSearch endpoint>• es.port : 443• path : test• es.nodes.wan.only. : true

99

Page 106: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso 5: crear un trabajo que utilice la conexión OpenSearch

Para obtener una explicación de estas opciones de conexión, consulte: https://www.elastic.co/guide/en/elasticsearch/hadoop/current/configuration.html.

4. Agregue un nodo de destino al gráfico como se describe en the section called “Agregado de nodos aldiagrama de trabajo” (p. 61) y the section called “Edición del nodo de destino de datos” (p. 55).

Su destino de datos puede ser Amazon S3 o puede usar información de AWS Glue Data Catalog oun conector para escribir datos en una ubicación diferente. Por ejemplo, puede utilizar una tabla delData Catalog para escribir en una base de datos en Amazon RDS, o puede utilizar un conector comodestino de datos para escribir en almacenes de datos que no son soportados de forma nativa en AWSGlue.

Si elige un conector para el destino de datos, debe elegir una conexión creada para ese conector.Además, si el proveedor del conector lo requiere, debe agregar opciones para proporcionarinformación adicional al conector. Si utiliza una conexión que contiene información para un secreto deAWS, entonces no necesita proporcionar el nombre de usuario y la autenticación de contraseña en lasopciones de conexión.

100

Page 107: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso siguiente

5. Si lo desea, agregue orígenes de datos adicionales y uno o más nodos de transformación como sedescribe en the section called “Edición del nodo de transformación de datos” (p. 34).

6. Configure las propiedades del trabajo como se describe en the section called “Modificar laspropiedades del trabajo” (p. 111), comenzando con el paso 3, y guarde el trabajo.

Paso siguientePaso 6: ejecutar el trabajo (p. 101)

Paso 6: ejecutar el trabajoDespués de guardar el trabajo, puede ejecutar el trabajo para realizar las operaciones de ETL.

Para ejecutar el trabajo creado para Elasticsearch Spark Connector

1. Con la consola de AWS Glue Studio, en la página del editor visual, elija Run (Ejecutar).2. En el banner de éxito, elija Run details (Detalles de la ejecución), o puede elegir la pestaña Runs

(Ejecuciones) del editor visual para ver información sobre la ejecución del trabajo.

101

Page 108: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAcceso al panel de monitoreo de trabajos

Monitoreo de trabajos ETL en AWSGlue Studio

El monitoreo es una parte importante a la hora de mantener la fiabilidad, la disponibilidad y el rendimientode los trabajos de ETL que se utilizan en AWS Glue y AWS Glue Studio. Debe recopilar datos demonitorización de todas las partes de su solución de AWS para que le resulte más sencillo depurar un errorque se produce en distintas partes del código, en caso de que ocurra.

Temas• Acceso al panel de monitoreo de trabajos (p. 102)• Información general del panel de monitoreo de trabajos (p. 102)• Vista de las ejecuciones de trabajo (p. 102)• Ver los registros de ejecución de trabajo (p. 104)• Visualización de los detalles de una ejecución de trabajo (p. 104)• Visualización de métricas de Amazon CloudWatch para una ejecución de trabajo (p. 106)

Acceso al panel de monitoreo de trabajosPuede acceder al panel de monitoreo de trabajos al seleccionar el enlace Monitoring (Monitoreo) en elpanel de navegación de AWS Glue Studio.

Información general del panel de monitoreo detrabajos

El panel de monitoreo de trabajos proporciona un resumen general de las ejecuciones de trabajos, contotales para los trabajos con un estado de Running (En ejecución), Canceled (Cancelado), Success (Éxito)o Failed (Error). Los mosaicos adicionales proporcionan la tasa general de éxito de ejecución del trabajo,el uso estimado de DPU para los trabajos, un desglose de los recuentos de estado del trabajo por tipo detrabajo, tipo de empleado y día.

Los gráficos de los mosaicos son interactivos. Puede elegir cualquier bloque de un gráfico para ejecutar unfiltro que muestre sólo esos trabajos en la tabla Job runs (Ejecuciones de trabajo) de la parte inferior de lapágina.

Puede cambiar el intervalo de fechas de la información mostrada en esta página mediante el selector Daterange (Intervalo de fechas). Al cambiar el intervalo de fechas, los mosaicos de información se ajustan paramostrar los valores según la cantidad especificada de días antes de la fecha actual. También puede utilizarun intervalo de fechas específico si elige Custom (Personalizado) desde el selector de intervalo de fechas.

Vista de las ejecuciones de trabajoLa lista de recursos Job runs (Ejecuciones de trabajo) muestra los trabajos para el intervalo de fechasespecificado y los filtros.

Puede filtrar los trabajos según criterios adicionales, como el estado, el tipo de empleado, el tipo de trabajoy el nombre del trabajo. En el cuadro de filtro situado en la parte superior de la tabla, puede introducir el

102

Page 109: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioVista de las ejecuciones de trabajo

texto que desea utilizar como filtro. Los resultados de la tabla se actualizan con filas que contienen textocoincidente a medida que se escribe el texto.

Puede ver un subconjunto de los trabajos cuando selecciona elementos de los gráficos del panel demonitoreo de trabajos. Por ejemplo, si elige el número de trabajos en ejecución en el mosaico Job runssummary (Resumen de ejecuciones de trabajo), la lista Job runs (Ejecuciones de trabajo) muestra sólo lostrabajos que actualmente tienen un estado de Running. Si elige una de las barras del gráfico de barrasWorker type breakdown (Desglose por tipo de empleado), solo se muestran las ejecuciones de trabajoscon el tipo y el estado de empleado coincidentes en la lista Job runs (Ejecuciones de trabajo).

La lista de recursos Job runs (Ejecuciones de trabajo) muestra los detalles del trabajo. Puede ordenar lasfilas de la tabla si elige un encabezado de columna. Esta tabla contiene la siguiente información:

Propiedad Descripción

Job name (Nombre de trabajo) Nombre del trabajo

Tipo El tipo del entorno de trabajo:

• Glue ETL: se ejecuta en un entorno ApacheSpark administrado por AWS Glue.

• Glue Streaming: se ejecuta en un entornoApache Spark y realiza ETL en flujos de datos.

• Python shell: ejecuta scripts de Python comoshell

Hora de inicio La fecha y la hora en que se inició la ejecución deeste flujo de trabajo.

Hora de finalización La fecha y la hora en que se completó la ejecuciónde este trabajo.

Estado de ejecución El estado actual de la ejecución de flujo de trabajo.Los valores pueden ser:

• STARTING

• RUNNING

• STOPPING

• STOPPED

• SUCCEEDED

• FAILED

• TIMEOUT

Tiempo de ejecución El periodo de tiempo que la ejecución de flujo detrabajo consumió recursos.

Capacidad El número de unidades de procesamiento de datos(DPU) de AWS Glue asignadas a esta ejecución detrabajo. Para obtener más información acerca dela planificación de capacidad, consulte Monitoreopara planificar la capacidad de DPU en la Guíapara desarrolladores de AWS Glue.

Tipo de empleado El tipo de empleado predefinido que se asignacuando se ejecuta un trabajo. Los valores puedenser Standard, G.1X o G.2X.

103

Page 110: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioVer los registros de ejecución de trabajo

Propiedad Descripción

Horas de DPU El número estimado de DPU utilizadas para laejecución de trabajo. Una DPU es una medidarelativa de la potencia de procesamiento. Las DPUse utilizan para determinar el costo de ejecutar sutrabajo. Para obtener más información, consulte laPágina de precios de AWS Glue.

Puede elegir cualquier ejecución de trabajo de la lista y ver información adicional. Elija una ejecución detrabajo y luego realice una de las operaciones siguientes:

• Elija el menú Actions (Acciones) y la opción View job (Ver trabajo) para ver el trabajo en el editor visual.• Elija el menú Actions (Acciones) y la opción Stop run (Detener ejecución) para detener la ejecución

actual del trabajo.• Elija el botón View CloudWatch logs (Ver registros de CloudWatch) para ver los registros de ejecución de

trabajo para ese trabajo.• Elija View run details (Ver detalles de ejecución) para ver la página de detalles de ejecución de trabajo.

Ver los registros de ejecución de trabajoPuede ver los registros de trabajo de diversas formas:

• En la página Monitoring (Monitoreo), en la tabla Job runs (Ejecuciones de trabajo), elija una ejecución detrabajo y, a continuación, elija View CloudWatch logs (Ver registros de CloudWatch).

• En el editor visual de trabajos, en la pestaña Runs (Ejecuciones) para un trabajo, elija los hipervínculospara ver los registros:• Logs (Registros): enlaces a los registros de trabajo de Apache Spark escritos cuando se habilita

el registro continuo para una ejecución de trabajo. Este enlace lo dirige a los registros de AmazonCloudWatch en el grupo de registros /aws-glue/jobs/logs-v2. De forma predeterminada, losregistros excluyen los mensajes de registro de latido de Apache Hadoop YARN no útiles y de ejecutoro controlador de Apache Spark. Para obtener más información acerca del registro continuo, consulteContinuous Logging for AWS Glue Jobs (Registro continuo para trabajos de GLU) en la Guía paradesarrolladores de AWS Glue.

• Error logs (Registros de errores): enlaza con los registros escritos en stderr para esta ejecución detrabajo. Este enlace lo dirige a los registros de Amazon CloudWatch en el grupo de registros /aws-glue/jobs/error. Puede utilizar estos registros para ver detalles acerca de los errores que seencontraron durante la ejecución del trabajo.

• Output Logs (Registros de salida): enlaza con los registros escritos en stdout para esta ejecución detrabajo. Este enlace lo dirige a los registros de Amazon CloudWatch en el grupo de registros /aws-glue/jobs/output. Puede utilizar esto registros para ver todos los detalles acerca de las tablas quese crearon en el AWS Glue Data Catalog y los errores que se encontraron.

Visualización de los detalles de una ejecución detrabajo

Puede elegir un trabajo de la lista Job runs (Ejecuciones de trabajo) en la página Monitoring (Monitoreo) y,a continuación, elegir View run details (Ver detalles de la ejecución) para ver información detallada sobreesa ejecución del trabajo.

104

Page 111: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioVisualización de los detalles de una ejecución de trabajo

La información que se muestra en la página detalles de ejecución de trabajo incluye lo siguiente:

Propiedad Descripción

Job name (Nombre de trabajo) Nombre del trabajo

Estado de ejecución El estado actual de la ejecución de flujo de trabajo.Los valores pueden ser:

• STARTING

• RUNNING

• STOPPING

• STOPPED

• SUCCEEDED

• FAILED

• TIMEOUT

Versión de Glue La versión de AWS Glue utilizada por la ejecucióndel trabajo

Intento reciente El número de intentos de reintento automático paraesta ejecución de trabajo

Hora de inicio La fecha y la hora en que se inició la ejecución deeste trabajo

Hora de finalización La fecha y la hora en que se completó la ejecuciónde este trabajo

Hora de inicio El tiempo empleado en la preparación paraejecutar el trabajo

Hora de ejecución El tiempo empleado en la ejecución del script detrabajo

Trigger name (Nombre del disparador) El nombre del desencadenador asociado con eltrabajo

Hora de la última modificación La fecha en la que se modificó el trabajo por últimavez

Configuración de seguridad La configuración de seguridad del trabajo, queincluye configuraciones de cifrado de Amazon S3,cifrado de CloudWatch y cifrado de marcadores detrabajo

Tiempo de espera El valor del umbral de tiempo de espera deejecución del trabajo

Capacidad asignada El número de unidades de procesamiento de datos(DPU) de AWS Glue asignadas a esta ejecución detrabajo. Para obtener más información acerca dela planificación de capacidad, consulte Monitoreopara planificar la capacidad de DPU en la Guíapara desarrolladores de AWS Glue.

Capacidad máxima La capacidad máxima disponible para la ejecucióndel trabajo.

105

Page 112: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioVisualización de métricas de Amazon

CloudWatch para una ejecución de trabajo

Propiedad Descripción

Number of workers (Número de procesos detrabajo)

El número de empleados utilizados para laejecución del trabajo

Tipo de empleado Tipo de empleados predefinidos asignados parala ejecución del trabajo. Los valores pueden serStandard, G.1X o G.2X.

Registros Un enlace a los registros de trabajo para el registrocontinuo (/aws-glue/jobs/logs-v2)

Registros de salida Un enlace a los archivos de registro de salida deltrabajo (/aws-glue/jobs/output)

Logs de errores Un enlace a los archivos de registro de error deltrabajo (/aws-glue/jobs/error)

Visualización de métricas de Amazon CloudWatchpara una ejecución de trabajo

En la página de detalles de una ejecución de trabajo, debajo de la sección Run details (Detalles deejecución), puede consultar las métricas de trabajo. AWS Glue Studio las envía a Amazon CloudWatchpara cada ejecución de trabajo.

AWS Glue notifica las métricas a Amazon CloudWatch cada 30 segundos. Las métricas de AWS Gluerepresentan valores delta que se obtienen de los valores notificados con anterioridad. Si procede, lospaneles de métricas acumulan (suman) los valores de 30 segundos para obtener un valor para el últimominuto en su totalidad. Sin embargo, las métricas de Apache Spark que AWS Glue transfiere a AmazonCloudWatch, suelen ser valores absolutos que representan el estado actual en el momento en que senotifican.

Note

Debe configurar su cuenta para acceder a Amazon CloudWatch, tal y como se describe enPermisos de Amazon CloudWatch (p. 10).

Las métricas proporcionan información sobre la ejecución de trabajo, como:

• ETL Data Movement (Movimiento de datos de ETL): número de bytes leídos o escritos en Amazon S3.• Memory Profile: Heap used (Perfil de la memoria: montón utilizado): el número de bytes de memoria

utilizados por el montón de máquina virtual Java (JVM).• Memory Profile: Heap usage (Perfil de la memoria: uso del montón): la fracción de memoria (escala:

0-1), mostrada como porcentaje, utilizada por el montón de JVM.• CPU Load (Carga de CPU): la fracción de carga del sistema de CPU usada (escala: 0-1), mostrada

como porcentaje.

106

Page 113: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioIniciar una ejecución de trabajo

Administración de trabajos de ETLcon AWS Glue Studio

Puede usar la interfaz gráfica simple en AWS Glue Studio para administrar los trabajos de ETL. En el menúde navegación, seleccione Jobs (Trabajos) para ver la página Jobs (Trabajos). En esta página, puedever todos los trabajos que ha creado con AWS Glue Studio o con la consola de AWS Glue. Puede ver,administrar y ejecutar sus trabajos en esta página.

También puede realizar las siguientes acciones:• Iniciar una ejecución de trabajo (p. 107)• Programar ejecuciones de trabajo (p. 107)• Administrar programaciones de trabajo (p. 108)• Detener ejecuciones de trabajo (p. 109)• Ver los trabajos (p. 109)• Ver información sobre las ejecuciones de trabajos recientes (p. 110)• Ver el script de trabajo (p. 110)• Modificar las propiedades del trabajo (p. 111)• Guardar el trabajo (p. 113)• Clonación de un trabajo (p. 115)• Eliminación de trabajos (p. 115)

Iniciar una ejecución de trabajoEn AWS Glue Studio, puede ejecutar los trabajos bajo demanda. Un trabajo puede ejecutarse varias vecesy cada vez que ejecute el trabajo, AWS Glue recopila información sobre las actividades y el rendimientodel trabajo. Esta información se conoce como una ejecución de trabajo y se identifica mediante un ID deejecución de trabajo.

Puede iniciar una ejecución de trabajo de las siguientes maneras en AWS Glue Studio:

• En la página Jobs (Trabajos), elija el trabajo que desea iniciar y, luego, elija el botón Run job (Ejecutartrabajo).

• Si está viendo un trabajo en el editor visual y el trabajo se ha guardado, puede elegir el botón Run(Ejecución) para iniciar una ejecución de trabajo.

Para obtener más información acerca de las ejecuciones de trabajos, consulte Uso de trabajos en laconsola de AWS Glue en la Guía para desarrolladores de AWS Glue.

Programar ejecuciones de trabajoEn AWS Glue Studio, puede crear una programación para que los trabajos se ejecuten en momentosespecíficos. Puede especificar restricciones, como la cantidad de veces que desea que se ejecute untrabajo, qué días de la semana se ejecutarán y a qué hora. Estas restricciones se basan en cron y tienenlas mismas limitaciones que cron. Por ejemplo, si decide ejecutar su trabajo el día 31 de cada mes, tengaen cuenta que algunos meses no tienen 31 días. Para obtener más información acerca de cron, consulteExpresiones Cron en la Guía para desarrolladores de AWS Glue.

107

Page 114: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAdministrar programaciones de trabajo

Para ejecutar trabajos de acuerdo con una programación

1. Utilice uno de los métodos siguientes para crear una programación de trabajo:

• En la página Jobs (Trabajos) elija el trabajo para el que desea crear una programación, elija Actions(Acciones) y, a continuación, elija Schedule job (Programar trabajo).

• Si está viendo un trabajo en el editor visual y el trabajo se ha guardado, elija la pestaña Schedules(Programaciones). A continuación, elija Create schedule (Crear programación).

2. En la página Schedule job run (Programar ejecución de trabajo), escriba la siguiente información:

• Name (Nombre): ingrese un nombre para su programación de trabajo.• Frequency (Frecuencia): ingrese la frecuencia para la programación de trabajo. Puede elegir entre

las siguientes opciones:• Hourly (Por hora): el trabajo se ejecutará cada hora, comenzando en un minuto específico.

Puede especificar el Minute (Minuto) de la hora que debe ejecutarse el trabajo. De formapredeterminada, cuando elige por hora, el trabajo se ejecuta al comenzar la hora (minuto 0).

• Daily (Por día): el trabajo se ejecutará todos los días, comenzando a la hora indicada. Puedeespecificar el Minute (Minuto) de la que hora en la que debe ejecutarse el trabajo y la Start hour(Hora de inicio) para el trabajo. Las horas se especifican con un reloj de 23 horas, en el que seutilizan los números de 13 a 23 para las horas de la tarde. Los valores predeterminados paraminuto y hora son 0, lo que significa que si selecciona Daily (Por día), el trabajo se ejecutará amedianoche de manera predeterminada.

• Weekly (Por semana): el trabajo se ejecutará cada semana en uno o más días. Además de lamisma configuración descrita anteriormente para Por día, puede elegir los días de la semana enlos que se ejecutará el trabajo. Puede elegir uno o más días.

• Monthly (Por mes): el trabajo se ejecutará todos los meses en un día específico. Además de lamisma configuración descrita anteriormente para Por día, puede elegir el día del mes en el quese ejecutará el trabajo. Especifique el día como un valor numérico del 1 al 31. Si selecciona undía que no existe en un mes, por ejemplo, el 30 de febrero, entonces el trabajo no se ejecuta esemes.

• Custom (Personalizado): ingrese una expresión para la programación del trabajo mediante lasintaxis de cron. Las expresiones Cron le permiten crear programaciones más complejas, comoel último día del mes (en lugar de un día específico del mes) o cada tres meses los días 7 y 21 delmes.

Consulte Expresiones Cron en la Guía para desarrolladores de AWS Glue• Description (Descripción): de forma opcional, puede especificar una descripción para la

programación de trabajos. Si planea utilizar la misma programación para múltiples trabajos, incluiruna descripción facilita determinar las tareas de una programación del trabajo.

3. Elija Create schedule (Crear programación) para guardar la programación de trabajos.4. Después de crear la programación, aparece un mensaje de éxito en la parte superior de la página

de la consola. Puede elegir Job details (Detalles del trabajo) en este banner para ver los detalles deltrabajo. Esto abre la página del editor visual de trabajos, con la pestaña Schedules (Programaciones)seleccionada.

Administrar programaciones de trabajoDespués de crear programaciones para un trabajo, puede abrir el trabajo en el editor visual y elegir lapestaña Schedules (Programaciones) para administrar las programaciones.

En la pestaña Schedules (Programaciones) en el editor visual, puede llevar a cabo las siguientes tareas:

• Crear una nueva programación.

108

Page 115: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioDetener ejecuciones de trabajo

Elija Create schedule (Crear programación) y, a continuación, ingrese la información de su programacióntal y como se describe en the section called “Programar ejecuciones de trabajo” (p. 107).

• Edición de una programación existente.

Elija la programación que desea editar y, a continuación, elija Action (Acción) y luego Edit schedule(Editar programación). Cuando elija editar una programación existente, Frequency (Frecuencia) aparececomo Custom (Personalizado), y la programación se muestra como una expresión cron. Puedemodificar la expresión cron, o especificar una nueva programación mediante el botón Frequency(Frecuencia). Cuando termine de realizar los cambios, elija Update schedule (Actualizar programación).

• Pausar una programación activa.

Elija una programación activa y, a continuación, elija Action (Acción), y luego Pause schedule (Pausarprogramación). La programación se desactiva en forma instantánea. Elija el botón actualizar (recargar)para ver el estado actualizado de la programación de trabajos.

• Reanudar una programación en pausa.

Elija una programación desactivada y, a continuación, elija Action (Acción), y luego Resume schedule(Reanudar programación). La programación se activa en forma instantánea. Elija el botón actualizar(recargar) para ver el estado actualizado de la programación de trabajos.

• Eliminar una programación.

Elija la programación que desea eliminar y, a continuación, elija Action (Acción) y luego Delete schedule(Eliminar programación). La programación se elimina en forma instantánea. Elija el botón actualizar(recargar) para ver la programación de trabajo actualizada. La programación mostrará un estado deDeleting (Eliminación) hasta que se haya eliminado por completo.

Detener ejecuciones de trabajoPuede detener un trabajo antes de que haya completado su ejecución. Puede elegir esta opción si sabeque el trabajo no está configurado correctamente o si el trabajo tarda demasiado en completarse.

En la página Monitoring (Monitoreo), en la lista Job runs (Ejecuciones de trabajo), elija el trabajo que deseadetener, elija Actions (Acciones) y, a continuación, elija Stop run (Detener ejecución).

Ver los trabajosPuede ver todos sus trabajos en la página Jobs (Trabajos). Puede acceder a esta página al seleccionarJobs (Trabajos) en el panel de navegación.

En la página Jobs (Trabajos), puede ver todos los trabajos que se crearon en su cuenta. La lista Your jobs(Sus trabajos) muestra el nombre del trabajo, su tipo, el estado de la última ejecución de ese trabajo y lasfechas en las que se creó y modificó por última vez el trabajo. Puede elegir el nombre de un trabajo paraver información detallada de ese trabajo.

También puede utilizar el panel Monitoring (Monitoreo) para ver todos los trabajos. Puede acceder al panelal elegir Monitoring (Monitoreo) en el panel de navegación. Para obtener más información acerca de cómousar el panel, consulte Monitoreo de trabajos ETL en AWS Glue Studio (p. 102).

Personalizar la visualización del trabajoPuede personalizar la forma en que se muestran los trabajos en la sección Your jobs (Sus trabajos) en lapágina Jobs (Trabajos). Además, puede escribir texto en el campo de texto de búsqueda para mostrar sólolos trabajos con un nombre que contenga ese texto.

109

Page 116: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioVer información sobre las ejecuciones de trabajos recientes

Si elige el ícono de configuración en la sección Your jobs (Sus trabajos), puede personalizar cómoAWS Glue Studio muestra la información en la tabla. Puede elegir ajustar las líneas de texto en la pantalla,cambiar el número de trabajos mostrados en la página y especificar qué columnas mostrar.

Ver información sobre las ejecuciones de trabajosrecientes

Un trabajo puede ejecutarse varias veces a medida que se agregan nuevos datos en la ubicación deorigen. Cada vez que se ejecuta un trabajo, se le asigna un ID único y se recopila información sobre esaejecución. Puede utilizar los siguientes métodos para ver esta información:

• Elija la pestaña Runs (Ejecuciones) del editor visual para ver la información de ejecución del trabajo quese muestra actualmente.

En la pestaña Runs (Ejecuciones) [página Recent job runs (Ejecuciones de trabajo recientes)], seincluye una tarjeta para cada trabajo ejecutado. La información que se muestra en la pestaña Runs(Ejecuciones) incluye lo siguiente:• ID de ejecución del trabajo• La cantidad de intentos de ejecución de este trabajo• Estado de la ejecución del trabajo• Hora de inicio y finalización de la ejecución del trabajo• El tiempo de ejecución para la ejecución del trabajo• Un enlace a los archivos de registro del trabajo• Un enlace a los archivos de registro de error del trabajo• Error devuelto por trabajos fallidos

• En el panel de navegación, seleccione Monitoring (Monitoreo). Desplácese hacia abajo en la lista Jobruns (Ejecuciones de trabajo). Elija el trabajo y, a continuación, elija View run details (Ver detalles deejecución).

La información que se muestra en la página de detalles de ejecución de trabajo a la que se accededesde la página Monitoring (Monitoreo) es más completa. Los contenidos se describen en Visualizaciónde los detalles de una ejecución de trabajo (p. 104).

Para obtener más información acerca de los registros de trabajo, consulte Ver los registros de ejecución detrabajo (p. 104).

Ver el script de trabajoDespués de proporcionar información para todos los nodos del trabajo, AWS Glue Studio genera un scriptque el trabajo utiliza para leer los datos de la fuente, transformarlos y escribirlos en la ubicación de destino.Si guarda el trabajo, puede ver este script en cualquier momento.

Para ver el script generado para su trabajo

1. En el panel de navegación, elija Jobs (Trabajos).2. En la página Jobs (Trabajos), en la lista Your jobs (Sus trabajos) elija el nombre del trabajo que desea

revisar. Como alternativa, puede seleccionar un trabajo en la lista, elegir la opción Actions (Acciones)y, a continuación, elegir Edit job (Editar trabajo).

110

Page 117: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioModificar las propiedades del trabajo

3. En la página del editor visual, elija la pestaña Script en la parte superior para ver el script de trabajo.

Si desea editar el script de trabajo, consulte Edición o carga de un script de trabajo (p. 57).

Modificar las propiedades del trabajoLos nodos del diagrama de trabajo definen las acciones que realiza el trabajo, pero también se puedenconfigurar varias propiedades para el trabajo. Estas propiedades determinan el entorno en el que seejecuta el trabajo, los recursos que utiliza, la configuración de umbral, la configuración de seguridad, etc.

Para personalizar el entorno de ejecución del trabajo

1. En el panel de navegación, elija Jobs (Trabajos).2. En la página Jobs (Trabajos), en la lista Your jobs (Sus trabajos) elija el nombre del trabajo que desea

revisar.3. En la página del editor visual, elija la pestaña Job details (Detalles del trabajo) en la parte superior del

panel de edición del trabajo.4. Modifique las propiedades del trabajo, según sea necesario.

Para obtener más información acerca de las propiedades de trabajo, consulte Defining Job Properties(Definición de las propiedades del trabajo) en la Guía para desarrolladores de AWS Glue.

5. Expanda la sección Advanced properties (Propiedades avanzadas) si necesita especificar estaspropiedades adicionales del trabajo:

• Script filename (Nombre del archivo de script): el nombre del archivo que almacena el script detrabajo en Amazon S3.

• Script path (Ruta del script): ubicación de Amazon S3 donde se almacena el script de trabajo.• Job metrics (Métricas de trabajo): (no disponible para trabajos de shell de Python) activa la creación

de métricas de Amazon CloudWatch cuando se ejecuta este trabajo.• Continuous logging (Registro continuo): (no disponible para trabajos de shell de Python) activa el

registro continuo en CloudWatch, para que los registros estén disponibles para su visualizaciónantes de que finalice el trabajo.

• Spark UI (Interfaz de usuario de Spark) y Spark UI logs path (Ruta de registros de la interfaz deusuario de Spark): (no disponible para trabajos de shell de Python) activa el uso de la interfaz deusuario de Spark para supervisar este trabajo y especifica la ubicación de los registros de la interfazde usuario de Spark.

• Maximum concurrency (Concurrencia máxima): establece el número máximo de ejecucionesconcurrentes que están permitidas para este trabajo.

• Temporary path (Ruta temporal): la ubicación de un directorio de trabajo en Amazon S3 donde losresultados intermedios temporales se escriben cuando AWS Glue ejecuta el script de trabajo.

• Delay notification threshold (minutes) [Umbral de notificación de retraso (minutos)]: especificaun umbral de retraso para el trabajo. Si el trabajo se ejecuta durante un tiempo más largo que elespecificado por el umbral, entonces, AWS Glue envía una notificación de retraso para el trabajo aCloudWatch.

• Security configuration (Configuración de seguridad) y Server-side encryption (Cifrado en el lado delservidor): utilice estos campos para elegir las opciones de cifrado para el trabajo.

• Use Glue Data Catalog as the Hive metastore (Utilizar Glue Data Catalog como metaalmacén deHive): elija esta opción si desea utilizar AWS Glue Data Catalog como una alternativa a Apache HiveMetastore.

• Additional network connection (Conexión de red adicional): para un origen de datos en una VPC,puede especificar una conexión de tipo Network, a fin de garantizar que su trabajo acceda a susdatos a través de la VPC.

111

Page 118: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioAlmacenar archivos de mezclas

aleatorias de Spark en Amazon S3

• Python library path (Ruta de la biblioteca Python), Dependent jars path (Ruta de archivos JARdependientes) (no disponible para trabajos de shell de Python), o Referenced files path (Rutade archivos referenciados): utilice estos campos para especificar la ubicación de los archivosadicionales que el trabajo utiliza cuando ejecuta el script.

• Job Parameters (Parámetros del trabajo): puede agregar un conjunto de pares de clave-valor quese transfieren como parámetros con denominación al script de trabajo. En las llamadas de Pythona AWS Glue API, es mejor transferir los parámetros explícitamente por nombre. Para obtener másinformación sobre el uso de parámetros en un script de trabajo, consulte Transferencia y acceso alos parámetros de Python en AWS Glue en la Guía para desarrolladores de AWS Glue.

• Tags (Etiquetas): puede agregar etiquetas al trabajo para que le resulte más fácil organizarlos eidentificarlos.

6. Después de modificar las propiedades del trabajo, guarde el trabajo.

Almacenar archivos de mezclas aleatorias de Sparken Amazon S3Algunos trabajos de ETL requieren leer y combinar información de diversas particiones, por ejemplo,cuando se utiliza una transformación de combinación. Esta operación se conoce como mezclado aleatorio.Durante una mezcla aleatoria, los datos se escriben en el disco y se transfieren a través de la red. ConAWS Glue, versión 3.0, puede configurar Amazon S3 como ubicación de almacenamiento para estosarchivos. AWS Glue proporciona un administrador de mezclas aleatorias que escribe y lee archivos demezcla aleatoria desde y hacia Amazon S3. La escritura y la lectura de archivos de mezcla aleatoria deAmazon S3 es más lenta (entre un 5 % y un 20 %) en comparación con el disco local (o Amazon EBS, queestá muy optimizado para Amazon EC2). No obstante, Amazon S3 ofrece capacidad de almacenamientoilimitada, por lo que no tiene que preocuparse por errores de “No space left on device” al ejecutarsu trabajo.

Para configurar su trabajo de modo que utilice Amazon S3 para archivos de mezcla aleatoria

1. En la página Jobs (Trabajos), en la lista Your jobs (Sus trabajos) elija el nombre del trabajo que deseamodificar.

2. En la página del editor visual, elija la pestaña Job details (Detalles del trabajo) en la parte superior delpanel de edición del trabajo.

Desplácese hasta la sección Job parameters (Parámetros del trabajo).3. Especifique los siguientes pares clave-valor.

• --write-shuffle-files-to-s3 — true

Este es el parámetro principal que configura el administrador de mezclas aleatorias en AWS Gluepara utilizar los buckets de Amazon S3 para escribir y leer datos aleatorios. Este parámetro tiene unvalor predeterminado de false.

• (Optional) --write-shuffle-spills-to-s3: true

Este parámetro le permite descargar archivos de desbordamiento en buckets de Amazon S3, lo queproporciona resistencia adicional a su trabajo de Spark en AWS Glue. Esto solo es necesario paracargas de trabajo grandes que provocan grandes desbordamientos al disco. Este parámetro tieneun valor predeterminado de false.

• (Optional) --conf spark.shuffle.glue.s3ShuffleBucket: S3://<shuffle-bucket>

Este parámetro especifica el bucket de Amazon S3 que se utilizará al escribir los archivos de mezclaaleatoria. Si no establece este parámetro, la ubicación es la carpeta shuffle-data en la ubicaciónespecificada para Temporary path (Ruta temporal) (--TempDir).

112

Page 119: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioGuardar el trabajo

Note

Asegúrese de que la ubicación del bucket de mezcla aleatoria esté en la misma Región deAWS en la que se ejecuta el trabajo.Además, el servicio de mezcla aleatoria no limpia los archivos después de que eltrabajo termine de ejecutarse, por lo que debe configurar las políticas de ciclo de vidade almacenamiento de Amazon S3 en la ubicación del bucket de mezcla aleatoria. Paraobtener más información, consulte Administración del ciclo de vida de almacenamiento enla Guía del usuario de Amazon S3.

Guardar el trabajoSe muestra un globo de color rojo: Job has not been saved (El trabajo no se ha guardado), a la izquierdadel botón Save (Guardar) hasta que guarde el trabajo.

Para guardar el trabajo

1. Proporcione toda la información necesaria en las pestañas Visual y Job details (Detalles del trabajo).2. Seleccione el botón Save (Guardar).

Después de guardar el trabajo, el globo “not saved (no guardado)” cambia para mostrar la hora y lafecha en que se guardó el trabajo por última vez.

Si sale de AWS Glue Studio antes de guardar el trabajo, la próxima vez que inicie sesión en AWS GlueStudio, aparecerá una notificación. La notificación indica que hay un trabajo sin guardar y pregunta sidesea restaurarlo. Si decide restaurar el trabajo, podrá continuar editándolo.

Solución de errores al guardar un trabajoSi elige el botón Save (Guardar), pero a su trabajo le falta información necesaria, aparecerá un globorojo en la pestaña donde falta la información. El número en el globo indica cuántos campos faltantes sedetectaron.

• Si un nodo del editor visual no está configurado correctamente, la pestaña Visual muestra un globo rojo yel nodo con el error muestra un símbolo de advertencia .1. Elija el nodo. En el panel de detalles del nodo, aparece un globo rojo en la pestaña donde se

encuentra la información faltante o incorrecta.2. Elija la pestaña del panel de detalles del nodo que muestra un globo rojo y, a continuación, busque los

campos problemáticos, que están resaltados. Un mensaje de error debajo de los campos proporcionainformación adicional sobre el problema.

113

Page 120: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioSolución de errores al guardar un trabajo

• Si hay un problema con las propiedades del trabajo, la pestaña Job details (Detalles del trabajo)muestra un globo rojo. Elija esa pestaña y busque los campos problemáticos, que están resaltados. Losmensajes de error debajo de los campos proporcionan información adicional acerca del problema.

114

Page 121: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioClonación de un trabajo

Clonación de un trabajoPuede utilizar la acción Clone job (Clonar trabajo) para copiar un trabajo existente en un nuevo trabajo.

Para crear un nuevo trabajo al copiar un trabajo existente

1. En la página Jobs (Trabajos), en la lista Your jobs (Sus trabajos) elija el trabajo que desea duplicar.2. En el menú Actions (Acciones), seleccione Clone job (Clonar trabajo).3. Ingrese un nombre para el nuevo trabajo. A continuación, puede guardar o editar el trabajo.

Eliminación de trabajosPuede eliminar trabajos que ya no son necesarios. Puede eliminar uno o más trabajos en una solaoperación.

Para eliminar trabajos de AWS Glue Studio

1. En la página Jobs (Trabajos), en la lista Your jobs (Sus trabajos) elija el trabajo que desea eliminar.2. En el menú Actions (Acciones), elija Delete job (Eliminar trabajo).3. Verifique que desea eliminar el trabajo, ingrese delete.

También puede eliminar un trabajo guardado cuando esté viendo la pestaña Job details (Detalles deltrabajo) de ese trabajo en el editor visual.

115

Page 122: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPrerequisites

Tutorial: agregar un rastreador deAWS Glue

Para este escenario de AWS Glue, se le pedirá que analice los datos de llegada de las principalescompañías aéreas para calcular la popularidad de los aeropuertos de salida mes a mes. Tiene datos devuelos para el año 2016 en formato CSV almacenado en Amazon S3. Antes de transformar y analizar losdatos, catalogue sus metadatos en AWS Glue Data Catalog.

En este tutorial, agregaremos un rastreador que deduce metadatos de estos registros de vuelo en AmazonS3 y crea una tabla en el Data Catalog.

Temas• Prerequisites (p. 116)• Paso 1: agregar un rastreador (p. 116)• Paso 2: ejecutar el rastreador (p. 117)• Paso 3: ver objetos del AWS Glue Data Catalog (p. 117)

PrerequisitesEn este tutorial se supone que usted tiene una cuenta de AWS y acceso a AWS Glue.

Paso 1: agregar un rastreadorSiga estos pasos para configurar y ejecutar un rastreador que extraiga los metadatos de un archivo CSValmacenado en Amazon S3.

Para crear un rastreador que lea archivos almacenados en Amazon S3

1. En la consola del servicio AWS Glue, en el menú de la izquierda, elija Crawlers (Rastreadores).2. En la página Crawlers (Rastreadores), elija Add crawler (Agregar rastreador). Esto inicia una serie de

páginas que le solicitan los detalles del rastreador.3. En el campo Crawler name (Nombre del rastreador), ingrese Flights Data Crawler y, a

continuación, elija Next (Siguiente).

Los rastreadores invocan clasificadores para inferir el esquema de sus datos. En este tutorial se utilizael clasificador integrado para CSV de forma predeterminada.

4. Para el tipo de origen de rastreador, elija Data stores (Almacenes de datos) y luego elija Next(Siguiente).

5. Ahora apuntaremos el rastreador a sus datos. En la página Add a data store (Agregar un almacén dedatos), elija el almacén de datos de Amazon S3. Este tutorial no utiliza una conexión, así que deje elcampo Connection (Conexión) en blanco si está visible.

Para la opción Crawl data in (Rastrear los datos en), elija Specified path in another account (Rutaespecificada en otra cuenta). Luego, para Include path (Incluir ruta), ingrese la ruta donde el rastreadorpuede encontrar los datos de vuelos, que es s3://crawler-public-us-east-1/flight/2016/csv. Después de introducir la ruta, el título de este campo cambia a Include path (Incluir ruta). ElijaNext (Siguiente).

116

Page 123: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso 2: ejecutar el rastreador

6. Puede rastrear varios almacenes de datos con un único rastreador. Sin embargo, en este tutorial,estamos usando solo un único almacén de datos, así que elija No, y luego Next (Siguiente).

7. El rastreador necesita permisos para acceder al almacén de datos y crear objetos en el AWS GlueData Catalog. Para configurar estos permisos, elija Create an IAM role (Crear un rol de IAM). Elnombre del rol de IAM comienza con AWSGlueServiceRole- y, en el campo, ingrese la última partedel nombre del rol. Ingrese CrawlerTutorial y, a continuación, elija Next (Siguiente).

Note

Para crear un rol de IAM, el usuario de AWS debe tener permisos CreateRole,CreatePolicy y AttachRolePolicy.

El asistente crea un rol de IAM denominado AWSGlueServiceRole-CrawlerTutorial, asocia lapolítica administrada de AWS, AWSGlueServiceRole, a este rol y agrega una política en línea quepermite el acceso de lectura a la ubicación s3://crawler-public-us-east-1/flight/2016/csv de Amazon S3.

8. Cree una programación para el rastreador. Para Frequency (Frecuencia), elija Run on demand(Ejecutar bajo demanda), y luego elija Next (Siguiente).

9. Los rastreadores crean tablas en su Data Catalog. Una base de datos de en una base de datos delData Catalog. Primero, elija Add database (Agregar base de datos) para crear una base de datos.En la ventana emergente, ingrese test-flights-db para el nombre de la base de datos y, acontinuación, elija Create (Crear).

Luego, ingrese flights para Prefix added to tables (Prefijo agregado a las tablas). Utilice los valorespredeterminados para el resto de las opciones y elija Next (Siguiente).

10. Compruebe las opciones elegidas en el asistente Add crawler (Agregar rastreador). Si detecta algúnerror, puede elegir Back (Atrás) para volver a las páginas anteriores y realizar cambios.

Después de haber revisado la información, elija Finish (Finalizar) para crear el rastreador.

Paso 2: ejecutar el rastreadorDespués de crear un rastreador, el asistente lo envía a la página Crawlers view (Visualización derastreadores). Dado que creó un rastreador con una programación bajo demanda, se le ofrece la opción deejecutar el rastreador.

Para ejecutar un rastreador

1. El banner situado cerca de la parte superior de esta página le permite saber que se creó el rastreadory le pregunta si desea ejecutarlo ahora. Elija Run it now (Ejecutarlo ahora) para ejecutar el rastreador.

El banner cambia para mostrar los mensajes “Attempting to run (Intento de ejecución)” and “Running(Ejecución)” para el rastreador. Una vez que el rastreador comienza a ejecutarse, el bannerdesaparece y la visualización del rastreador se actualiza para mostrar un estado Starting (Inicio) parael rastreador. Después de un minuto, puede hacer clic en el ícono Refresh (Actualizar) para actualizarel estado del rastreador que se muestra en la tabla.

2. Cuando se completa el rastreador, aparece un nuevo banner que describe los cambios realizadospor el rastreador. Puede elegir el enlace test-flights-db (probar base de datos de vuelos) para ver losobjetos del Data Catalog.

Paso 3: ver objetos del AWS Glue Data CatalogEl rastreador lee los datos en la ubicación de origen y crea tablas en el Data Catalog. Una tabla es unadefinición de metadatos que representa sus datos e incluye el esquema de datos. Las tablas del Data

117

Page 124: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuarioPaso 3: ver objetos del AWS Glue Data Catalog

Catalog no contienen datos. En su lugar, se utilizan estas tablas como origen o destino en una definiciónde trabajo.

Para ver los objetos del Data Catalog creados por el rastreador

1. En el panel de navegación de la izquierda, en Data Catalog, elija Databases (Bases de datos). Aquípuede ver la base de datos de flights-db que crea el rastreador.

2. En el panel de navegación de la izquierda, Data catalog y luego en Databases (Bases de datos), elijaTables (Tablas). Aquí puede ver la tabla de flightscsv que crea el rastreador. Si elige el nombre dela tabla, puede ver la configuración, los parámetros y las propiedades de la tabla. Si se desplaza haciaabajo en esta vista, puede ver el esquema, que es información sobre las columnas y los tipos de datosde la tabla.

3. Si elige View partitions (Ver particiones) en la página de vista de tabla, puede ver las particionescreadas para los datos. La primera columna es la clave de partición.

118

Page 125: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Historial de revisión de la guía delusuario de AWS Glue Studio

Última actualización de la documentación: 11 de octubre de 2021

En la tabla siguiente, se describen los cambios importantes realizados en cada revisión de la Guíadel usuario de AWS Glue Studio. Para obtener notificaciones sobre las actualizaciones de estadocumentación, puede suscribirse a una fuente RSS.

update-history-change update-history-description update-history-date

Glue Studio está disponible enChina (p. 119)

Ahora, AWS Glue Studio estádisponible en las regiones deChina (Pekín) y Ningxia.

11 de octubre de 2021

Ahora, se encuentra disponibleel acceso directo a fuentes destreaming (p. 119)

Al agregar orígenes de datos altrabajo ETL en el editor visual,puede proporcionar informaciónpara acceder a la secuenciade datos en lugar de tener queutilizar una base de datos y unatabla del Data Catalog.

30 de septiembre de 2021

Los conectores personalizadosahora se pueden utilizar convistas previas de datos (p. 119)

Al editar el nodo de origen dedatos mediante un conectorpersonalizado, puede obteneruna vista previa del conjuntode datos al elegir la pestañaDat preview (Vista previade Dat). Para obtener másinformación, consulte Conectores personalizados

24 de septiembre de 2021

AWS Glue Studio es compatiblecon AWS Glue versión3.0 (p. 119)

Al crear trabajos en AWS GlueStudio, puede elegir Glue3.0 como la versión para eltrabajo en la pestaña Job details(Detalles del trabajo). Si no eligeuna versión para su trabajo deETL, se utiliza Glue 2.0 de formapredeterminada.

18 de agosto de 2021

AWS GovCloud (US)Region (p. 119)

AWS Glue Studio ahora estádisponible en AWS GovCloud(US) Region

18 de agosto de 2021

Creación de shell de Pythondisponible en AWS GlueStudio (p. 119)

Al crear un nuevo trabajo, ahorapuede elegir crear un trabajo deshell de Python. Para obtenermás información, consulte Iniciarel proceso de creación de trabajoy Edición de trabajos de shell dePython en AWS Glue Studio.

13 de agosto de 2021

119

Page 126: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Cargar scripts a AWS GlueStudio (p. 119)

Junto con el recurso del editorde scripts, puede cargar scriptsde trabajo en AWS Glue Studio.Para obtener más información,consulte Comenzar el proceso decreación de trabajo y Edición ocarga de un script de trabajo.

14 de junio de 2021

Visualice el conjunto de datos desu trabajo mientras crea y editatrabajos (p. 119)

Puede utilizar la nueva pestañaData preview (Previsualizaciónde datos) para un nodo en sudiagrama de trabajo para ver unamuestra de los datos procesadospor ese nodo. Para obtener másinformación, consulte Utilizarprevisualizaciones de datos en eleditor visual de trabajos.

7 de junio de 2021

Especifique la configuracióndel trabajo de ETL destreaming en el editor visual detrabajos (p. 119)

Puede configurar ajustes deconexión adicionales para losorígenes de datos de streamingen el editor visual de trabajospara optimizar los trabajos deETL de streaming. Para obtenermás información, consulteUso de un origen de datos destreaming.

4 de junio de 2021

Se agregó el soporte de conexiónde red (p. 119)

Si desea acceder a un origen dedatos ubicado en la VPC, puedeespecificar una conexión de redpara el trabajo. Para obtenermás información, consulteModificación de las propiedadesde trabajo.

24 de mayo de 2021

Edite scripts de trabajo (p. 119) Ahora puede editar scripts en eleditor de trabajos. Para obtenermás información, consulteEdición de un script de trabajo.

24 de mayo de 2021

Eliminar trabajos mediantela consola de AWS GlueStudio (p. 119)

Ahora, puede eliminar trabajos enAWS Glue Studio. Para obtenermás información, consulteEliminación de trabajos.

24 de mayo de 2021

Lectura de datos desde archivosen carpetas secundarias enAmazon S3 (p. 119)

Puede especificar una solacarpeta en Amazon S3 comosu origen de datos y utilizarla opción Recursive (Acciónrecursiva) para incluir todas lascarpetas secundarias como partedel origen de datos. Para obtenermás información, consulte Usode archivos en Amazon S3 parael origen de datos.

30 de abril de 2021

120

Page 127: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Se agregó la funcionalidad deeliminación de conectores yconexiones (p. 119)

Ahora puede eliminar conectoresy conexiones en AWS GlueStudio. Para obtener másinformación, consulte Eliminaciónde conectores y conexiones.

30 de abril de 2021

Se agregó la transformaciónde rellenar valoresfaltantes (p. 119)

Puede utilizar la transformaciónFillMissingValues en AWS GlueStudio para localizar registrosen el conjunto de datos quetienen valores faltantes y agregarun nuevo campo con un valorestimado. Para obtener másinformación, consulte Edición delnodo de transformación de datos.

29 de marzo de 2021

Transformación SQLdisponible (p. 119)

Puede usar un nodo detransformación SQL para escribirsu propia transformación enforma de consulta SQL. Paraobtener más información,consulte Uso de una consultaSQL para transformar datos.

23 de marzo de 2021

Los nodos de origen JDBC ahorasoportan claves de marcador detrabajo (p. 119)

Los marcadores de trabajoayudan a AWS Glue a mantenerla información de estado y evitarel reprocesamiento de los datosantiguos. Para obtener másinformación, consulte Creaciónde trabajos con conectorespersonalizados.

15 de marzo de 2021

Se pueden utilizar conectorespara destinos de datos (p. 119)

Ahora, se soporta el uso de unconector personalizado o AWSMarketplace para su destinode datos. Para obtener másinformación, consulte Creaciónde trabajos con conectorespersonalizados.

15 de marzo de 2021

Nueva barra de herramientasdisponible para el editor visual detrabajos (p. 119)

Se encuentra disponible unabarra de herramientas másoptimizada y funcional para eleditor visual de trabajos de AWSGlue Studio. Esta característicafacilita el agregado de nodos algráfico.

8 de marzo de 2021

Lectura de datos desde AmazonS3 sin crear tablas de DataCatalog (p. 119)

Ahora, AWS Glue Studio permiteleer datos de manera directadesde Amazon S3 sin crearprimero una tabla en AWS GlueData Catalog. Para obtener másinformación, consulte Edición delnodo de origen de datos.

5 de febrero de 2021

121

Page 128: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Los trabajos de AWS Glue Studioahora pueden actualizar tablasdel Data Catalog (p. 119)

Ahora, AWS Glue Studioadmite la actualización de AWSGlue Data Catalog durantelas ejecuciones de trabajo.Esta característica facilita laactualización de las tablas amedida que sus trabajos escribennuevos datos en Amazon S3.Esto hace que los datos esténinmediatamente disponibles paraconsulta desde cualquier serviciode análisis que sea compatiblecon AWS Glue Data Catalog.Para obtener más información,consulte Configuración de nodosde destino de datos.

5 de febrero de 2021

La programación de trabajos yase encuentra disponible en AWSGlue Studio (p. 119)

Puede definir programacionesbasadas en tiempo para lasejecuciones de trabajo en AWSGlue Studio. Puede utilizarla consola para crear unaprogramación básica o definiruna programación más complejacon la sintaxis cron de tipo Unix.Para obtener más información,consulte Programación deejecuciones de trabajo.

21 de diciembre de 2020

AWS Glue Lanzamiento deconectores personalizadosde (p. 119)

AWS Glue Los conectorespersonalizados de le permitendescubrir y suscribirse aconectores en AWS Marketplace.También introdujimos interfacesde tiempo de ejecución deAWS Glue Spark para conectarconectores creados para ApacheSpark Datasource, consultafederada de Athena y APIde JDBC. Para obtener másinformación, consulte Uso deconectores y conexiones conAWS Glue Studio.

21 de diciembre de 2020

Soporte para la ejecución detrabajos de ETL de streaming enAWS Glue, versión 2.0 (p. 119)

Ahora, AWS Glue Studio admitela ejecución de trabajos ETLde streaming con AWS Glueversión 2.0. Para obtener másinformación, consulte Agregadode trabajos de ETL de streamingen AWS Glue en la Guía paradesarrolladores de AWS Glue.

11 de noviembre de 2020

122

Page 129: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Se anuncia la disponibilidad deAWS Glue Studio (p. 119)

AWS Glue Studio proporcionauna interfaz visual que simplificala creación de trabajos quepreparan los datos para elanálisis. La versión inicial de estaguía se publicó el mismo día enque se lanzó AWS Glue Studio.

23 de septiembre de 2020

123

Page 130: AWSGlue Studio - Guía del usuario

AWS Glue Studio Guía del usuario

Glosario de AWSPara ver la terminología más reciente de AWS, consulte el Glosario de AWS en la Referencia general deAWS.

124