Classe DynamicRecord em Scala do AWS Glue - AWS Glue

Classe DynamicRecord em Scala do AWS Glue

Pacote:   com.amazonaws.services.glue

class DynamicRecord extends Serializable with Writable with Cloneable

Um DynamicRecord é uma estrutura de dados autodescritiva que representa uma linha de conjunto de dados que está sendo processado. É autodescritiva, no sentido de que você pode obter o esquema da linha representada pelo DynamicRecord, inspecionando o próprio registro. Um DynamicRecord é semelhante a uma Row no Apache Spark

Def addField

def addField( path : String, dynamicNode : DynamicNode ) : Unit

Adiciona um DynamicNode ao caminho especificado.

  • path – O caminho para o campo a ser adicionado.

  • dynamicNode — O DynamicNode a ser adicionado no caminho especificado.

Def dropField

def dropField(path: String, underRename: Boolean = false): Option[DynamicNode]

Remove um DynamicNode do caminho especificado e retorna o nó removido se não houver uma matriz no caminho especificado.

  • path — O caminho para o campo a ser removido.

  • underRenamedropField  –  Verdadeiro se for chamado como parte de uma transformação de renomeação ou falso, caso contrário (falso por padrão).

Retorna um scala.Option Option (DynamicNode).

Def setError

def setError( error : Error )

Define esse registro como um registro de erro, conforme especificado pelo parâmetro error.

Retorna um DynamicRecord.

Def isError

def isError

Verifica se esse registro é um registro de erro.

Def getError

def getError

Obtém o Error se o registro for um registro de erro. Retorna scala.Some Some (Erro) se esse registro for um registro de erro ou scala.None, caso contrário.

Def clearError

def clearError

Defina Error como scala.None.None .

Def write

override def write( out : DataOutput ) : Unit

Def readFields

override def readFields( in : DataInput ) : Unit

Def clone

override def clone : DynamicRecord

Clona esse registro para um novo DynamicRecord e o retorna.

Def schema

def schema

Obtém o Schema ao inspecionar o registro.

Def getRoot

def getRoot : ObjectNode

Obtém a raiz ObjectNode do registro.

Def toJson

def toJson : String

Obtém a string JSON para o registro.

Def getFieldNode

def getFieldNode( path : String ) : Option[DynamicNode]

Obtém o valor do campo no path especificado como uma opção de DynamicNode.

Retorna scala.Some Some (DynamicNode) se o campo existir ou scala.None.None, caso contrário.

Def getField

def getField( path : String ) : Option[Any]

Obtém o valor do campo no path especificado como uma opção de DynamicNode.

Retorna scala.Some Some (valor).

Def hashCode

override def hashCode : Int

Def equals

override def equals( other : Any )

Objeto DynamicRecord

object DynamicRecord

Def apply

def apply( row : Row, schema : SparkStructType )

Aplique o método para converter um Apache Spark SQL Row em um DynamicRecord.

  • row  –  Um Spark SQL Row.

  • schema  –  O Schema dessa linha.

Retorna um DynamicRecord.

Característica RecordTraverser

trait RecordTraverser { def nullValue(): Unit def byteValue(value: Byte): Unit def binaryValue(value: Array[Byte]): Unit def booleanValue(value: Boolean): Unit def shortValue(value: Short) : Unit def intValue(value: Int) : Unit def longValue(value: Long) : Unit def floatValue(value: Float): Unit def doubleValue(value: Double): Unit def decimalValue(value: BigDecimal): Unit def stringValue(value: String): Unit def dateValue(value: Date): Unit def timestampValue(value: Timestamp): Unit def objectStart(length: Int): Unit def objectKey(key: String): Unit def objectEnd(): Unit def mapStart(length: Int): Unit def mapKey(key: String): Unit def mapEnd(): Unit def arrayStart(length: Int): Unit def arrayEnd(): Unit }