AWS Glue Scala DynamicRecord クラス - AWS Glue

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Glue Scala DynamicRecord クラス

パッケージ: com.amazonaws.services.glue

class DynamicRecord extends Serializable with Writable with Cloneable

DynamicRecord は、処理対象のデータセット内のデータ行を表す自己記述型のデータ構造体です。自己記述型とは、DynamicRecord が表す行のスキーマを、レコード自体を検査することで取得できるという意味です。DynamicRecord は Apache Spark の Row に似ています。

def addField

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

指定したパスに DynamicNode を追加します。

  • path - 追加するフィールドのパス。

  • dynamicNode - 指定したパスに追加する DynamicNode

def dropField

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

指定したパスに配列がない場合は、指定したパスから DynamicNode を削除し、削除したノードを返します。

  • path - 削除するフィールドへのパス。

  • underRenamedropField – 名前変更の変換の一部として が呼び出された場合は true、それ以外の場合は false (デフォルトは false)。

scala.Option Option (DynamicNode) を返します。

def setError

def setError( error : Error )

error パラメータの指定に従って、このレコードをエラーレコードとして設定します。

戻り値は DynamicRecord

def isError

def isError

このレコードがエラーレコードであるかどうかを確認します。

def getError

def getError

レコードがエラーレコードである場合、Error を受け取ります。このレコードがエラーレコードである場合は scala.Some Some (エラー) を返し、それ以外の場合は scala.None を返します。

def clearError

def clearError

Errorscala.None.None に設定します。

def write

override def write( out : DataOutput ) : Unit

def readFields

override def readFields( in : DataInput ) : Unit

def clone

override def clone : DynamicRecord

このレコードを新しい DynamicRecord に複製し、返します。

def schema

def schema

レコードを検査して Schema を取得します。

def getRoot

def getRoot : ObjectNode

レコードのルート ObjectNode を取得します。

def toJson

def toJson : String

レコードの JSON 文字列を取得します。

def getFieldNode

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

DynamicNode のオプションとして指定した path でフィールドの値を取得します。

フィールドが存在する場合は scala.Some Some(DynamicNode) を返し、それ以外の場合は scala.None.None を返します。

def getField

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

DynamicNode のオプションとして指定した path でフィールドの値を取得します。

scala.Some Some (値) を返します。

def hashCode

override def hashCode : Int

def equals

override def equals( other : Any )

DynamicRecord オブジェクト

object DynamicRecord

def apply

def apply( row : Row, schema : SparkStructType )

メソッドを適用して Apache Spark SQL RowDynamicRecord に変換します。

  • row – Spark SQL Row

  • schema – 行の Schema

戻り値は DynamicRecord

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 }