Classe DynamicRecord em Scala do AWS Glue
Tópicos
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.underRename
dropField
– 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 SQLRow
.schema
– OSchema
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
}