关注 spark技术分享,
撸spark源码 玩spark最佳实践

NullPropagation

NullPropagation Logical Optimization — Nullability (NULL Value) Propagation

NullPropagation is a base logical optimization that FIXME.

NullPropagation is part of the Operator Optimization before Inferring Filters fixed-point batch in the standard batches of the Catalyst Optimizer.

NullPropagation is simply a Catalyst rule for transforming logical plans, i.e. Rule[LogicalPlan].

Example: Count Aggregate Operator with Nullable Expressions Only

NullPropagation optimization rewrites Count aggregate expressions that include expressions that are all nullable to Cast(Literal(0L)).

Example: Count Aggregate Operator with Non-Nullable Non-Distinct Expressions

NullPropagation optimization rewrites any non-nullable non-distinct Count aggregate expressions to Literal(1).

Note

Count aggregate expression represents count function internally.

Note

current_timestamp() function is non-nullable expression.

Example

Executing Rule — apply Method

Note
apply is part of the Rule Contract to execute (apply) a rule on a TreeNode (e.g. LogicalPlan).

apply…​FIXME

赞(0) 打赏
未经允许不得转载:spark技术分享 » NullPropagation
分享到: 更多 (0)

关注公众号:spark技术分享

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏