case class ColumnStatsMap(originalMap: AttributeMap[ColumnStat]) extends Product with Serializable
This class contains the original column stats from child, and maintains the updated column stats. We will update the corresponding ColumnStats for a column after we apply a predicate condition. For example, column c has [min, max] value as [0, 100]. In a range condition such as (c > 40 AND c <= 50), we need to set the column's [min, max] value to [40, 100] after we evaluate the first condition c > 40. We also need to set the column's [min, max] value to [40, 50] after we evaluate the second condition c <= 50.
- originalMap
Original column stats from child.
- Alphabetic
- By Inheritance
- ColumnStatsMap
- Serializable
- Serializable
- Product
- Equals
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
ColumnStatsMap(originalMap: AttributeMap[ColumnStat])
- originalMap
Original column stats from child.
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(a: Attribute): ColumnStat
Gets column stat for the given attribute.
Gets column stat for the given attribute. Prefer the column stat in updatedMap than that in originalMap, because updatedMap has the latest (updated) column stats.
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def contains(a: Attribute): Boolean
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
get(a: Attribute): Option[ColumnStat]
Gets an Option of column stat for the given attribute.
Gets an Option of column stat for the given attribute. Prefer the column stat in updatedMap than that in originalMap, because updatedMap has the latest (updated) column stats.
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hasCountStats(a: Attribute): Boolean
- def hasDistinctCount(a: Attribute): Boolean
- def hasMinMaxStats(a: Attribute): Boolean
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- val originalMap: AttributeMap[ColumnStat]
-
def
outputColumnStats(rowsBeforeFilter: BigInt, rowsAfterFilter: BigInt): AttributeMap[ColumnStat]
Collects updated column stats, and scales down ndv for other column stats if the number of rows decreases after this Filter operator.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
update(a: Attribute, stats: ColumnStat): Unit
Updates column stats in updatedMap.
-
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()