PySpark tipos de extensión - 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.

PySpark tipos de extensión

Los tipos que utilizan lasAWS Glue PySpark extensiones.

DataType

La clase base para los otros tipos de AWS Glue.

__init__(properties={})
  • properties: propiedades del tipo de datos (opcional).

typeName(cls)

Devuelve el tipo de la clase de tipo de AWS Glue (es decir, el nombre de la clase con "Type" eliminado del final).

  • cls: una instancia de clase de AWS Glue derivada de DataType.

jsonValue( )

Devuelve un objeto JSON que contiene las propiedades y los tipos de datos de la clase:

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

AtomicType y derivados sencillos

Se hereda de la clase DataType y la amplía, además de servir como clase base para todos los tipos de datos atómicos de AWS Glue.

fromJsonValue(cls, json_value)

Inicializa una instancia de la clase con valores a partir de un objeto JSON.

  • cls: una instancia de la clase de tipo de AWS Glue que se va a inicializar.

  • json_value: objeto JSON desde el que se van a cargar pares clave-valor.

Los siguientes tipos son derivados sencillos de la clase AtomicType:

  • BinaryType – Datos binarios.

  • BooleanType: valores booleanos.

  • ByteType: un valor de byte.

  • DateType: un valor datetime.

  • DoubleType: un valor doble de punto flotante.

  • IntegerType – Un valor entero.

  • LongType: un valor entero largo.

  • NullType: un valor nulo.

  • ShortType: un valor entero corto.

  • StringType: una cadena de texto.

  • TimestampType: un valor de marca temporal (normalmente en segundos desde el 01/01/1970).

  • UnknownType: un valor de tipo no identificado.

DecimalType(AtomicType)

Se hereda de la clase AtomicType y la amplía para representar un número decimal (un número expresado en dígitos decimales, en contraposición a los números de base 2 binarios).

__init__(precision=10, scale=2, properties={})
  • precision: el número de dígitos en el número decimal (opcional; el valor predeterminado es 10).

  • scale: el número de dígitos situados a la derecha del punto decimal (opcional; el valor predeterminado es 2).

  • properties: las propiedades del número decimal (opcional).

EnumType(AtomicType)

Se hereda de la clase AtomicType y la amplía para representar una enumeración de opciones válidas.

__init__(options)
  • options: una lista de las opciones que se enumeran.

 tipos de colección

ArrayType(DataType)

__init__(elementType=UnknownType(), properties={})
  • elementType— El tipo de elementos de la matriz (opcional; el valor predeterminado es UnknownType).

  • properties: propiedades de la matriz (opcional).

ChoiceType(DataType)

__init__(choices=[], properties={})
  • choices: una lista de posibles opciones (opcional).

  • properties: propiedades de estas opciones (opcional).

add(new_choice)

Añade una nueva opción a la lista de posibles opciones.

  • new_choice: la opción que se va a añadir a la lista de posibles opciones.

merge(new_choices)

Combina una lista de nuevas opciones con la lista de opciones existente.

  • new_choices: una lista de nuevas opciones que se van a combinar con las opciones existentes.

MapType(DataType)

__init__(valueType=UnknownType, properties={})
  • valueType— El tipo de valores del mapa (opcional; el valor predeterminado es UnknownType).

  • properties: propiedades del mapa (opcional).

Field(Object)

Crea un objeto de campo fuera de un objeto que deriva de DataType.

__init__(name, dataType, properties={})
  • name: el nombre que se va a asignar al campo.

  • dataType: el objeto a partir del cual se va a crear un campo.

  • properties: propiedades del campo (opcional).

StructType(DataType)

Define una estructura de datos (struct).

__init__(fields=[], properties={})
  • fields: una lista de los campos (de tipo Field) que se va a incluir en la estructura (opcional).

  • properties: propiedades de la estructura (opcional).

add(field)
  • field: un objeto de tipo Field para añadir a la estructura.

hasField(field)

Devuelve True si esta estructura tiene un campo del mismo nombre, o False si no.

  • field: un nombre de campo o un objeto de tipo Field cuyo nombre se usa.

getField(field)
  • field: un nombre de campo o un objeto de tipo Field cuyo nombre se usa. Si la estructura tiene un campo del mismo nombre, se devuelve.

EntityType(DataType)

__init__(entity, base_type, properties)

Esta clase no se ha implementado aún.

 otros tipos

DataSource(objeto)

__init__(j_source, sql_ctx, name)
  • j_source: el origen de datos.

  • sql_ctx: el contexto SQL.

  • name: el nombre de origen de datos.

setFormat(format, **options)
  • format: el formato que se va a establecer para el origen de datos.

  • options: un conjunto de opciones que se va a establecer para el origen de datos.

getFrame()

Devuelve un DynamicFrame para el origen de datos.

DataSink(objeto)

__init__(j_sink, sql_ctx)
  • j_sink: el receptor que se va a crear.

  • sql_ctx: el contexto SQL para el receptor de datos.

setFormat(format, **options)
  • format: el formato que se va a establecer para el receptor de datos.

  • options: un conjunto de opciones que se va a establecer para el receptor de datos.

setAccumulableSize(size)
  • size: el tamaño acumulable que se va a establecer, en bytes.

writeFrame(dynamic_frame, info="")
  • dynamic_frame: el DynamicFrame que se va a escribir.

  • info: información acerca del DynamicFrame (opcional).

write(dynamic_frame_or_dfc, info="")

Escribe un DynamicFrame o DynamicFrameCollection.

  • dynamic_frame_or_dfc: un objeto DynamicFrame o DynamicFrameCollection que se van a escribir.

  • info: información acerca de los DynamicFrame o DynamicFrames que se van a escribir (opcional).