it.agilelab.bigdata.wasp.consumers.spark.utils
AvroDeserializerExpression
Companion object AvroDeserializerExpression
case class AvroDeserializerExpression(child: Expression, schemaAvroJson: String, darwinConfig: Option[Config], avoidReevaluation: Boolean = true, useSchemaManager: Boolean = false) extends UnaryExpression with ExpectsInputTypes with CompatibilityAvroDeserializerExpression with Product with Serializable
An Expression which deserializes a binary field encoded in Avro and returns the corresponding
representation in Spark.
- child
the
Expressioncontaining the binary Avro to be deserialized- schemaAvroJson
the JSON representation of the Avro schema
- darwinConfig
the configuration for the AvroSchemaManager
- avoidReevaluation
this filed forces the Expression to be non-deterministic. Setting this to true measn that this expression is executed only once even though the Optimizer creates several copies of it (eg. it happens usually with CollapseProject if the value returned by the expression is used several times, as with a selection of fields of the struct returned). If you set this flag to false, the expression may be evaluated once for each occurence of ti you see in the physical plan.
- Alphabetic
- By Inheritance
- AvroDeserializerExpression
- Serializable
- Serializable
- CompatibilityAvroDeserializerExpression
- ExpectsInputTypes
- UnaryExpression
- UnaryLike
- Expression
- TreeNode
- TreePatternBits
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
AvroDeserializerExpression(child: Expression, schemaAvroJson: String, darwinConfig: Option[Config], avoidReevaluation: Boolean = true, useSchemaManager: Boolean = false)
- child
the
Expressioncontaining the binary Avro to be deserialized- schemaAvroJson
the JSON representation of the Avro schema
- darwinConfig
the configuration for the AvroSchemaManager
- avoidReevaluation
this filed forces the Expression to be non-deterministic. Setting this to true measn that this expression is executed only once even though the Optimizer creates several copies of it (eg. it happens usually with CollapseProject if the value returned by the expression is used several times, as with a selection of fields of the struct returned). If you set this flag to false, the expression may be evaluated once for each occurence of ti you see in the physical plan.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
apply(number: Int): TreeNode[_]
- Definition Classes
- TreeNode
-
def
argString(maxFields: Int): String
- Definition Classes
- TreeNode
-
def
asCode: String
- Definition Classes
- TreeNode
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- val avoidReevaluation: Boolean
- def avroDatumReader(avroValue: SeekableByteArrayInput): GenericDatumReader[AnyRef]
-
lazy val
canonicalized: Expression
- Definition Classes
- Expression
-
def
checkInputDataTypes(): TypeCheckResult
- Definition Classes
- ExpectsInputTypes → Expression
-
val
child: Expression
- Definition Classes
- AvroDeserializerExpression → UnaryLike
-
final
lazy val
children: Seq[Expression]
- Definition Classes
- UnaryLike
- Annotations
- @transient()
-
def
childrenResolved: Boolean
- Definition Classes
- Expression
-
def
clone(): Expression
- Definition Classes
- TreeNode → AnyRef
-
def
collect[B](pf: PartialFunction[Expression, B]): Seq[B]
- Definition Classes
- TreeNode
-
def
collectFirst[B](pf: PartialFunction[Expression, B]): Option[B]
- Definition Classes
- TreeNode
-
def
collectLeaves(): Seq[Expression]
- Definition Classes
- TreeNode
-
final
def
containsAllPatterns(patterns: TreePattern*): Boolean
- Definition Classes
- TreePatternBits
-
final
def
containsAnyPattern(patterns: TreePattern*): Boolean
- Definition Classes
- TreePatternBits
-
lazy val
containsChild: Set[TreeNode[_]]
- Definition Classes
- TreeNode
-
final
def
containsPattern(t: TreePattern): Boolean
- Definition Classes
- TreePatternBits
- Annotations
- @inline()
- def convertRecordToInternalRow(record: AnyRef): AnyRef
- val convertString: (Any) ⇒ AnyRef
-
def
copyTagsFrom(other: Expression): Unit
- Definition Classes
- TreeNode
- val darwinConfig: Option[Config]
-
def
dataType: DataType
- Definition Classes
- AvroDeserializerExpression → Expression
-
def
defineCodeGen(ctx: CodegenContext, ev: ExprCode, f: (String) ⇒ String): ExprCode
- Attributes
- protected
- Definition Classes
- UnaryExpression
-
lazy val
deterministic: Boolean
- Definition Classes
- AvroDeserializerExpression → Expression
-
def
doGenCode(ctx: CodegenContext, ev: ExprCode): ExprCode
- Attributes
- protected
- Definition Classes
- AvroDeserializerExpression → Expression
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
eval(input: InternalRow): Any
- Definition Classes
- UnaryExpression → Expression
-
def
exists(f: (Expression) ⇒ Boolean): Boolean
- Definition Classes
- TreeNode
-
def
fastEquals(other: TreeNode[_]): Boolean
- Definition Classes
- TreeNode
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
find(f: (Expression) ⇒ Boolean): Option[Expression]
- Definition Classes
- TreeNode
-
def
flatArguments: Iterator[Any]
- Attributes
- protected
- Definition Classes
- Expression
-
def
flatMap[A](f: (Expression) ⇒ TraversableOnce[A]): Seq[A]
- Definition Classes
- TreeNode
-
def
foldable: Boolean
- Definition Classes
- UnaryExpression → Expression
-
def
foreach(f: (Expression) ⇒ Unit): Unit
- Definition Classes
- TreeNode
-
def
foreachUp(f: (Expression) ⇒ Unit): Unit
- Definition Classes
- TreeNode
-
def
freshCopyIfContainsStatefulExpression(): Expression
- Definition Classes
- Expression
-
def
genCode(ctx: CodegenContext): ExprCode
- Definition Classes
- Expression
-
def
generateTreeString(depth: Int, lastChildren: Seq[Boolean], append: (String) ⇒ Unit, verbose: Boolean, prefix: String, addSuffix: Boolean, maxFields: Int, printNodeId: Boolean, indent: Int): Unit
- Definition Classes
- TreeNode
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getDefaultTreePatternBits: BitSet
- Attributes
- protected
- Definition Classes
- TreeNode
-
def
getTagValue[T](tag: TreeNodeTag[T]): Option[T]
- Definition Classes
- TreeNode
-
def
hashCode(): Int
- Definition Classes
- TreeNode → AnyRef → Any
-
def
innerChildren: Seq[TreeNode[_]]
- Definition Classes
- TreeNode
-
def
inputTypes: Seq[DataType]
- Definition Classes
- AvroDeserializerExpression → ExpectsInputTypes
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isRuleIneffective(ruleId: RuleId): Boolean
- Attributes
- protected
- Definition Classes
- TreeNode
-
def
jsonFields: List[JField]
- Attributes
- protected
- Definition Classes
- TreeNode
-
final
def
legacyWithNewChildren(newChildren: Seq[Expression]): Expression
- Attributes
- protected
- Definition Classes
- TreeNode
-
def
makeCopy(newArgs: Array[AnyRef]): Expression
- Definition Classes
- TreeNode
-
def
map[A](f: (Expression) ⇒ A): Seq[A]
- Definition Classes
- TreeNode
-
final
def
mapChildren(f: (Expression) ⇒ Expression): Expression
- Definition Classes
- UnaryLike
- val mapDatumReader: HashMap[Long, GenericDatumReader[AnyRef]]
-
def
mapProductIterator[B](f: (Any) ⇒ B)(implicit arg0: ClassTag[B]): Array[B]
- Attributes
- protected
- Definition Classes
- TreeNode
-
def
markRuleAsIneffective(ruleId: RuleId): Unit
- Attributes
- protected
- Definition Classes
- TreeNode
-
def
multiTransformDown(rule: PartialFunction[Expression, Seq[Expression]]): Stream[Expression]
- Definition Classes
- TreeNode
-
def
multiTransformDownWithPruning(cond: (TreePatternBits) ⇒ Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Seq[Expression]]): Stream[Expression]
- Definition Classes
- TreeNode
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
nodeName: String
- Definition Classes
- TreeNode
-
val
nodePatterns: Seq[TreePattern]
- Attributes
- protected
- Definition Classes
- TreeNode
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
nullSafeCodeGen(ctx: CodegenContext, ev: ExprCode, f: (String) ⇒ String): ExprCode
- Attributes
- protected
- Definition Classes
- UnaryExpression
-
def
nullSafeEval(input: Any): Any
- Attributes
- protected
- Definition Classes
- AvroDeserializerExpression → UnaryExpression
-
def
nullable: Boolean
- Definition Classes
- AvroDeserializerExpression → UnaryExpression → Expression
-
def
numberedTreeString: String
- Definition Classes
- TreeNode
-
val
origin: Origin
- Definition Classes
- TreeNode
-
def
otherCopyArgs: Seq[AnyRef]
- Attributes
- protected
- Definition Classes
- TreeNode
-
def
p(number: Int): Expression
- Definition Classes
- TreeNode
-
def
prettyJson: String
- Definition Classes
- TreeNode
-
def
prettyName: String
- Definition Classes
- AvroDeserializerExpression → Expression
-
def
references: AttributeSet
- Definition Classes
- Expression
-
lazy val
resolved: Boolean
- Definition Classes
- Expression
- val schemaAvroJson: String
-
final
def
semanticEquals(other: Expression): Boolean
- Definition Classes
- Expression
-
def
semanticHash(): Int
- Definition Classes
- Expression
-
def
setTagValue[T](tag: TreeNodeTag[T], value: T): Unit
- Definition Classes
- TreeNode
-
def
simpleString(maxFields: Int): String
- Definition Classes
- Expression → TreeNode
-
def
simpleStringWithNodeId(): String
- Definition Classes
- Expression → TreeNode
-
def
sql: String
- Definition Classes
- Expression
-
def
stateful: Boolean
- Definition Classes
- Expression
-
def
stringArgs: Iterator[Any]
- Attributes
- protected
- Definition Classes
- TreeNode
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toJSON: String
- Definition Classes
- TreeNode
-
def
toString(): String
- Definition Classes
- Expression → TreeNode → AnyRef → Any
-
def
transform(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
-
def
transformDown(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
-
def
transformDownWithPruning(cond: (TreePatternBits) ⇒ Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
-
def
transformUp(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
-
def
transformUpWithBeforeAndAfterRuleOnChildren(cond: (Expression) ⇒ Boolean, ruleId: RuleId)(rule: PartialFunction[(Expression, Expression), Expression]): Expression
- Definition Classes
- TreeNode
-
def
transformUpWithPruning(cond: (TreePatternBits) ⇒ Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
-
def
transformWithPruning(cond: (TreePatternBits) ⇒ Boolean, ruleId: RuleId)(rule: PartialFunction[Expression, Expression]): Expression
- Definition Classes
- TreeNode
-
lazy val
treePatternBits: BitSet
- Definition Classes
- TreeNode → TreePatternBits
-
def
treeString(append: (String) ⇒ Unit, verbose: Boolean, addSuffix: Boolean, maxFields: Int, printOperatorId: Boolean): Unit
- Definition Classes
- TreeNode
-
final
def
treeString(verbose: Boolean, addSuffix: Boolean, maxFields: Int, printOperatorId: Boolean): String
- Definition Classes
- TreeNode
-
final
def
treeString: String
- Definition Classes
- TreeNode
-
def
typeSuffix: String
- Attributes
- protected
- Definition Classes
- Expression
-
def
unsetTagValue[T](tag: TreeNodeTag[T]): Unit
- Definition Classes
- TreeNode
- val useSchemaManager: Boolean
-
final
def
verboseString(maxFields: Int): String
- Definition Classes
- Expression → TreeNode
-
def
verboseStringWithSuffix(maxFields: Int): String
- Definition Classes
- TreeNode
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
withCanonicalizedChildren: Expression
- Attributes
- protected
- Definition Classes
- Expression
-
def
withNewChildInternal(newChild: Expression): Expression
- Attributes
- protected
- Definition Classes
- CompatibilityAvroDeserializerExpression
-
final
def
withNewChildren(newChildren: Seq[Expression]): Expression
- Definition Classes
- TreeNode
-
final
def
withNewChildrenInternal(newChildren: IndexedSeq[Expression]): Expression
- Definition Classes
- UnaryLike