PySpark-Erweiterungstypen - AWS Glue

PySpark-Erweiterungstypen

Die Typen, die von AWS Glue PySpark-Erweiterungen verwendet werden.

DataType

Die Basisklasse für die anderen AWS-Glue-Typen.

__init__(properties={})
  • properties – Eigenschaften des Datentyps (optional).

typeName(cls)

Gibt den Typ der AWS Glue-Typenklasse zurück (d. h. den Klassennamen, von dessen Ende "Type" entfernt wird).

  • cls – Eine AWS Glue-Klassen-Instance, abgeleitet vom DataType.

jsonValue( )

Gibt ein JSON-Objekt zurück, das den Datentyp und die Eigenschaften der Klasse enthält:

{ "dataType": typeName, "properties": properties }

AtomicType und einfache Derivate

Übernahme und Erweiterung der Klasse DataType und dient als Basisklasse für alle atomaren AWS Glue-Datentypen.

fromJsonValue(cls, json_value)

Initialisiert eine Klassen-Instance mit Werten aus einem JSON-Objekt.

  • cls – Eine zu initialisierende Klassen-Instance des AWS Glue-Typs.

  • json_value – Das JSON-Objekt, von dem Schlüssel-Wert-Paare geladen werden sollen.

Die folgenden Typen sind einfache Derivate der Klasse AtomicType:

  • BinaryType – Binäre Daten.

  • BooleanType – Boolesche Werte.

  • ByteType – Ein Byte-Wert.

  • DateType – Ein Datums-/Uhrzeitwert.

  • DoubleType – Ein Gleitkommawert mit doppelter Präzision.

  • IntegerType – Ein Ganzzahlwert.

  • LongType – Eine lange Ganzzahl.

  • NullType – Ein Null-Wert.

  • ShortType – Eine kurze Ganzzahl.

  • StringType – Eine Textzeichenfolge.

  • TimestampType – Ein Zeitstempelwert (in der Regel in Sekunden von 1.1.1970).

  • UnknownType – Ein Wert nicht identifizierten Typs.

DecimalType(AtomicType)

Übernahme und Erweiterung der Klasse AtomicType, um eine Dezimalzahl darzustellen (eine Zahl ausgedrückt in Dezimalstellen anstelle von binären Basis-2-Zahlen).

__init__(precision=10, scale=2, properties={})
  • precision – Die Anzahl der Ziffern in der Dezimalzahl (optional; Standardwert ist 10).

  • scale – Die Anzahl der Ziffern rechts vom Dezimaltrennzeichen (optional; Standardwert ist 2).

  • properties – Die Eigenschaften der Dezimalzahl (optional).

EnumType(AtomicType)

Übernahme und Erweiterung der Klasse AtomicType, um eine Aufzählung gültiger Optionen darzustellen.

__init__(options)
  • options – Eine Liste der aufzuzählenden Optionen.

 Sammlungstypen

ArrayType(DataType)

__init__(elementType=UnknownType(), properties={})
  • elementType – Der Typ von Elementen im Array (optional; Standardwert ist UnknownType).

  • properties – Eigenschaften des Arrays (optional).

ChoiceType(DataType)

__init__(choices=[], properties={})
  • choices – Eine Liste möglicher Optionen (optional).

  • properties – Eigenschaften dieser Optionen (optional).

add(new_choice)

Fügt eine neue Option zur Liste der möglichen Optionen hinzu.

  • new_choice – Die Option, die der Liste der möglichen Optionen hinzugefügt werden soll.

merge(new_choices)

Führt eine Liste neuer Optionen mit der vorhandenen Auswahlliste zusammen.

  • new_choices – Eine Liste neuer Optionen, die mit vorhandenen Optionen zusammengeführt werden sollen.

MapType(DataType)

__init__(valueType=UnknownType, properties={})
  • valueType – Der Typ von Werten in der Zuordnung (optional; Standardwert ist UnknownType).

  • properties – Eigenschaften der Zuordnung (optional).

Field(Object)

Erstellt ein Feldobjekt aus einem Objekt, das von DataType abgeleitet wird.

__init__(name, dataType, properties={})
  • name – Der Name, der dem Feld zugewiesen werden soll.

  • dataType – Das Objekt, von dem ein Feld erstellt werden soll.

  • properties – Eigenschaften des Felds (optional).

StructType(DataType)

Definiert eine Datenstruktur (struct).

__init__(fields=[], properties={})
  • fields – Eine Liste der Felder (des Typs Field), die in der Struktur enthalten sein sollen (optional).

  • properties – Eigenschaften der Struktur (optional).

add(field)
  • field – Ein Objekt vom Typ Field, das der Struktur hinzugefügt werden soll.

hasField(field)

Gibt True zurück, wenn diese Struktur über ein Feld mit demselben Namen verfügt, andernfalls False.

  • field – Ein Feldname oder ein Objekt vom Typ Field, dessen Name verwendet wird.

getField(field)
  • field – Ein Feldname oder ein Objekt vom Typ Field, dessen Name verwendet wird. Wenn die Struktur über ein Feld mit demselben Namen verfügt, wird er zurückgegeben.

EntityType(DataType)

__init__(entity, base_type, properties)

Diese Klasse ist noch nicht implementiert.

 andere Typen

DataSource(object)

__init__(j_source, sql_ctx, name)
  • j_source – Die Datenquelle.

  • sql_ctx – Der SQL-Kontext.

  • name – Der Datenquellenname.

setFormat(format, **options)

getFrame()

Gibt ein DynamicFrame für die Datenquelle zurück.

DataSink(object)

__init__(j_sink, sql_ctx)
  • j_sink – Zu erstellende Senke.

  • sql_ctx – Der SQL-Kontext für die Datensenke.

setFormat(format, **options)

setAccumulableSize(size)
  • size – Die festzulegende akkumulierte Größe, in Byte.

writeFrame(dynamic_frame, info="")
  • dynamic_frame – Der zu schreibende DynamicFrame.

  • info – Informationen zum DynamicFrame (optional).

write(dynamic_frame_or_dfc, info="")

Schreibt einen DynamicFrame oder eine DynamicFrameCollection.

  • dynamic_frame_or_dfc – Ein zu schreibendes DynamicFrame-Objekt oder DynamicFrameCollection-Objekt.

  • info – Informationen zum DynamicFrame oder zur DynamicFrames, der/die geschrieben werden soll (optional).