LeafNode — Base Logical Operator with No Child Operators and Optional Statistics

LeafNode is the base of logical operators that have no child operators.

LeafNode that wants to survive analysis has to define computeStats as it throws an UnsupportedOperationException by default.

Table 1. LeafNodes (Direct Implementations)
LeafNode Description

AnalysisBarrier

DataSourceV2Relation

ExternalRDD

HiveTableRelation

InMemoryRelation

LocalRelation

LogicalRDD

LogicalRelation

OneRowRelation

Range

UnresolvedCatalogRelation

UnresolvedInlineTable

UnresolvedRelation

UnresolvedTableValuedFunction

Computing Statistics — computeStats Method

computeStats(): Statistics

computeStats simply throws an UnsupportedOperationException.

Note
Logical operators, e.g. ExternalRDD, LogicalRDD and DataSourceV2Relation, or relations, e.g. HadoopFsRelation or BaseRelation, use spark.sql.defaultSizeInBytes internal property for the default estimated size if the statistics could not be computed.
Note
computeStats is used exclusively when SizeInBytesOnlyStatsPlanVisitor uses the default case to compute the size statistic (in bytes) for a logical operator.

results matching ""

    No results matching ""