

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# AWS Glue PySpark transformiert Referenz
<a name="aws-glue-programming-python-transforms"></a>

AWS Glue bietet die folgenden integrierten Transformationen, die Sie in PySpark ETL-Vorgängen verwenden können. Ihre Daten werden von Transformation zu Transformation in einer Datenstruktur namens a *DynamicFrame*weitergeleitet. Dabei handelt es sich um eine Erweiterung von Apache Spark SQL`DataFrame`. Der `DynamicFrame` enthält Ihre Daten und Sie verweisen auf das Schema, um Ihre Daten zu verarbeiten. 

Die meisten dieser Transformationen existieren auch als Methoden der `DynamicFrame`-Klasse. Weitere Informationen finden Sie unter [DynamicFrame Transformationen](aws-glue-api-crawler-pyspark-extensions-dynamic-frame.md#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-_transforms).
+ [GlueTransform Basisklasse](aws-glue-api-crawler-pyspark-transforms-GlueTransform.md)
+ [ApplyMapping Klasse](aws-glue-api-crawler-pyspark-transforms-ApplyMapping.md)
+ [DropFields Klasse](aws-glue-api-crawler-pyspark-transforms-DropFields.md)
+ [DropNullFields Klasse](aws-glue-api-crawler-pyspark-transforms-DropNullFields.md)
+ [ErrorsAsDynamicFrame Klasse](aws-glue-api-crawler-pyspark-transforms-ErrorsAsDynamicFrame.md)
+ [EvaluateDataQuality Klasse](aws-glue-api-crawler-pyspark-transforms-EvaluateDataQuality.md)
+ [FillMissingValues Klasse](aws-glue-api-crawler-pyspark-transforms-fillmissingvalues.md)
+ [Filterklasse](aws-glue-api-crawler-pyspark-transforms-filter.md)
+ [FindIncrementalMatches Klasse](aws-glue-api-crawler-pyspark-transforms-findincrementalmatches.md)
+ [FindMatches Klasse](aws-glue-api-crawler-pyspark-transforms-findmatches.md)
+ [FlatMap Klasse](aws-glue-api-crawler-pyspark-transforms-flat-map.md)
+ [Join-Klasse](aws-glue-api-crawler-pyspark-transforms-join.md)
+ [Map-Klasse](aws-glue-api-crawler-pyspark-transforms-map.md)
+ [MapToCollection Klasse](aws-glue-api-crawler-pyspark-transforms-MapToCollection.md)
+ [mergeDynamicFrame](aws-glue-api-crawler-pyspark-extensions-dynamic-frame.md#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-merge)
+ [Relationalize-Klasse](aws-glue-api-crawler-pyspark-transforms-Relationalize.md)
+ [RenameField Klasse](aws-glue-api-crawler-pyspark-transforms-RenameField.md)
+ [ResolveChoice Klasse](aws-glue-api-crawler-pyspark-transforms-ResolveChoice.md)
+ [SelectFields Klasse](aws-glue-api-crawler-pyspark-transforms-SelectFields.md)
+ [SelectFromCollection Klasse](aws-glue-api-crawler-pyspark-transforms-SelectFromCollection.md)
+ [Simplify\$1ddb\$1json class](aws-glue-api-crawler-pyspark-transforms-simplify-ddb-json.md)
+ [Spigot-Klasse](aws-glue-api-crawler-pyspark-transforms-spigot.md)
+ [SplitFields Klasse](aws-glue-api-crawler-pyspark-transforms-SplitFields.md)
+ [SplitRows Klasse](aws-glue-api-crawler-pyspark-transforms-SplitRows.md)
+ [Unbox-Klasse](aws-glue-api-crawler-pyspark-transforms-Unbox.md)
+ [UnnestFrame Klasse](aws-glue-api-crawler-pyspark-transforms-UnnestFrame.md)

## Transformationen der Datenintegration
<a name="aws-glue-programming-python-di-transforms"></a>

 Für AWS Glue 4.0 und höher erstellen oder aktualisieren Sie Job-Argumente mit`key: --enable-glue-di-transforms, value: true`. 

 Beispiel für ein Auftragsskript: 

```
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
```

 Beispielsitzungen mit Notebooks 

```
%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
```

 Beispielsitzungen mit AWS CLI 

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

 DI-Transformationen: 
+  [FlagDuplicatesInColumn Klasse](aws-glue-api-pyspark-transforms-FlagDuplicatesInColumn.md) 
+  [FormatPhoneNumber Klasse](aws-glue-api-pyspark-transforms-FormatPhoneNumber.md) 
+  [FormatCase Klasse](aws-glue-api-pyspark-transforms-FormatCase.md) 
+  [FillWithMode Klasse](aws-glue-api-pyspark-transforms-FillWithMode.md) 
+  [FlagDuplicateRows Klasse](aws-glue-api-pyspark-transforms-FlagDuplicateRows.md) 
+  [RemoveDuplicates Klasse](aws-glue-api-pyspark-transforms-RemoveDuplicates.md) 
+  [MonthName Klasse](aws-glue-api-pyspark-transforms-MonthName.md) 
+  [IsEven Klasse](aws-glue-api-pyspark-transforms-IsEven.md) 
+  [CryptographicHash Klasse](aws-glue-api-pyspark-transforms-CryptographicHash.md) 
+  [Decrypt-Klasse](aws-glue-api-pyspark-transforms-Decrypt.md) 
+  [Encrypt-Klasse](aws-glue-api-pyspark-transforms-Encrypt.md) 
+  [IntToIp Klasse](aws-glue-api-pyspark-transforms-IntToIp.md) 
+  [IpToInt Klasse](aws-glue-api-pyspark-transforms-IpToInt.md) 

### Maven: Bündeln des Plugins mit Ihren Spark-Anwendungen
<a name="aws-glue-programming-python-di-transforms-maven"></a>

 Sie können die Transformationsabhängigkeit mit Ihren Spark-Anwendungen und Spark-Distributionen (Version 3.3) bündeln, indem Sie die Plugin-Abhängigkeit in Ihrer Maven-`pom.xml`-Datei hinzufügen, während Sie Ihre Spark-Anwendungen lokal entwickeln. 

```
<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>
```

 Sie können die Binärdateien alternativ direkt von AWS Glue Maven-Artefakten herunterladen und sie wie folgt in Ihre Spark-Anwendung aufnehmen. 

```
#!/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/
```