Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Referência de transformações PySpark do AWS Glue

Modo de foco
Referência de transformações PySpark do AWS Glue - AWS Glue

O AWS Glue fornece as transformações integradas a seguir que você pode usar em operações de ETL do PySpark. Os seus dados passam de transformação para transformação em uma estrutura de dados chamada DynamicFrame, que é a extensão de uma DataFrame do Apache Spark SQL. O DynamicFrame contém os dados, e você referencia o esquema para processar os dados.

A maioria dessas transformações também existe como métodos da classe DynamicFrame. Para obter mais informações, consulte Transformações DynamicFrame.

Transformações da integração de dados

Para o AWS Glue 4.0 e versões posteriores, crie ou atualize argumentos de trabalho com key: --enable-glue-di-transforms, value: true.

Exemplo de script de trabalho:

from pyspark.context import SparkContext from awsgluedi.transforms import * sc = SparkContext() input_df = spark.createDataFrame( [(5,), (0,), (-1,), (2,), (None,)], ["source_column"], ) try: df_output = math_functions.IsEven.apply( data_frame=input_df, spark_context=sc, source_column="source_column", target_column="target_column", value=None, true_string="Even", false_string="Not even", ) df_output.show() except: print("Unexpected Error happened ") raise

Exemplo de sessões usando cadernos

%idle_timeout 2880 %glue_version 4.0 %worker_type G.1X %number_of_workers 5 %region eu-west-1
%%configure { "--enable-glue-di-transforms": "true" }
from pyspark.context import SparkContext from awsgluedi.transforms import * sc = SparkContext() input_df = spark.createDataFrame( [(5,), (0,), (-1,), (2,), (None,)], ["source_column"], ) try: df_output = math_functions.IsEven.apply( data_frame=input_df, spark_context=sc, source_column="source_column", target_column="target_column", value=None, true_string="Even", false_string="Not even", ) df_output.show() except: print("Unexpected Error happened ") raise

Exemplo de sessões usando AWS CLI

aws glue create-session --default-arguments "--enable-glue-di-transforms=true"

Transformações DI:

Maven: empacotar o plug-in com aplicações do Spark

Você pode empacotar a dependência de transformações com suas aplicações e distribuições do Spark (versão 3.3) adicionando a dependência de plug-in em seu pom.xml do Maven enquanto desenvolve aplicações do Spark localmente.

<repositories> ... <repository> <id>aws-glue-etl-artifacts</id> <url>https://aws-glue-etl-artifacts.s3.amazonaws.com/release/ </url> </repository> </repositories> ... <dependency> <groupId>com.amazonaws</groupId> <artifactId>AWSGlueTransforms</artifactId> <version>4.0.0</version> </dependency>

Ou pode baixar os binários diretamente dos artefatos do AWS Glue Maven e incluí-los na aplicação do Spark como indicado a seguir.

#!/bin/bash sudo wget -v https://aws-glue-etl-artifacts.s3.amazonaws.com/release/com/amazonaws/AWSGlueTransforms/4.0.0/AWSGlueTransforms-4.0.0.jar -P /usr/lib/spark/jars/
PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.