Package org.apache.calcite.rel.metadata
Interface BuiltInMetadata.Size
-
- All Superinterfaces:
Metadata
- All Known Subinterfaces:
BuiltInMetadata.All
- Enclosing class:
- BuiltInMetadata
public static interface BuiltInMetadata.Size extends Metadata
Metadata about the size of rows and columns.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
BuiltInMetadata.Size.Handler
Handler API.
-
Field Summary
Fields Modifier and Type Field Description static MetadataDef<BuiltInMetadata.Size>
DEF
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.List<java.lang.Double>
averageColumnSizes()
Determines the average size (in bytes) of a value of a column in this relational expression.java.lang.Double
averageRowSize()
Determines the average size (in bytes) of a row from this relational expression.
-
-
-
Field Detail
-
DEF
static final MetadataDef<BuiltInMetadata.Size> DEF
-
-
Method Detail
-
averageRowSize
java.lang.Double averageRowSize()
Determines the average size (in bytes) of a row from this relational expression.- Returns:
- average size of a row, in bytes, or null if not known
-
averageColumnSizes
java.util.List<java.lang.Double> averageColumnSizes()
Determines the average size (in bytes) of a value of a column in this relational expression.Null values are included (presumably they occupy close to 0 bytes).
It is left to the caller to decide whether the size is the compressed size, the uncompressed size, or memory allocation when the value is wrapped in an object in the Java heap. The uncompressed size is probably a good compromise.
- Returns:
- an immutable list containing, for each column, the average size of a column value, in bytes. Each value or the entire list may be null if the metadata is not available
-
-