Uso de una consulta SQL para transformar datos - AWS Glue

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de una consulta SQL para transformar datos

Puede 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 produce un único conjunto de datos como salida. Contiene un campo de texto, donde se introduce la consulta de Apache SparkSQL. Puede asignar alias a cada conjunto de datos utilizado como entrada, para ayudar simplemente a la consulta SQL. Para obtener más información acerca de la sintaxis SQL, consulte documentación de Spark SQL.

nota

Si utiliza una transformación de Spark SQL con un origen de datos ubicado en una VPC, agregue un punto de enlace de desarrollo de la VPC de AWS Glue a la VPC que contenga el origen de datos. Para obtener más información acerca de la configuración de puntos de enlace de desarrollo, consulte Agregar un punto de enlace de desarrollo, Configuración del entorno para puntos de enlace de desarrollo y Acceso al punto de enlace de desarrollo en la Guía para desarrolladores 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. Seleccione Spark SQL para el tipo de nodo.

  2. En la pestaña Node properties (Propiedades del nodo), ingrese un nombre para el nodo en el diagrama de trabajo. Si todavía no se ha seleccionado un nodo principal, o si desea varias entradas para 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 sea necesario.

  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 si los nombres no son adecuados para una consulta SQL, puede asociar un nombre a cada conjunto de datos. La consola proporciona alias predeterminados, como MyDataSource.

    La captura de pantalla muestra un diagrama de trabajo de 3 nodos. El primer nodo es un nodo fuente S3 llamado “This is a really long name (Este es un nombre realmente largo)”. El segundo nodo es un nodo de transformación de código SQL llamado “SQL query (Consulta SQL)”. El tercer nodo es un nodo de destino de datos S3 denominado “Revised flight data (Datos de vuelo revisados)”. Se selecciona el nodo de consulta SQL y se muestra la pestaña Transform (Transformación) en el panel de detalles del nodo. En el panel de la pestaña Transform (Transformación), el campo Input sources (Orígenes de entrada) muestra una entrada: “Revised flight data (Este es un nombre realmente largo)”. El campo de alias SQL de Spark asociado muestra “myDataSource (Mi origen de datos)”. El campo Code block (Bloque de código) muestra “select * from myDataSource (seleccionar * de mi origen de datos)”.

    Por ejemplo, si un nodo principal para el nodo de transformación SQL se denomina Rename Org PK field, puede asociar el nombre org_table con este conjunto de datos. Este alias se puede utilizar en 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 escriba la consulta SQL. El campo de texto muestra resaltado de sintaxis SQL y sugerencias de palabras clave.

  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 los campos de salida de la consulta SQL.

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

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

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

    • Para agregar una nueva columna de nivel superior al esquema, elija la opción Overflow (Desbordamiento) ( A rectangle with an ellipsis (...) in the center ) y, a continuación, elija Add root key (Agregar clave raíz). Se agregan nuevas columnas en la parte superior del esquema.

    • Para eliminar una columna del esquema, elija el ícono de eliminación ( An outline of a trash can ) en el extremo derecho del nombre de la clave.

  7. Cuando termine de especificar el esquema de salida, elija Apply (Aplicar) para guardar los cambios y salir del editor de esquemas. Si no desea guardar los cambios, elija Cancel (Cancelar) para editar el editor 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 Data preview (Previsualización de datos) en el panel de detalles 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. Hay un costo asociado con el uso de este recurso y la facturación comienza tan pronto como proporcione un rol de IAM.