Class BaseBeamTable
- java.lang.Object
-
- org.apache.beam.sdk.extensions.sql.meta.BaseBeamTable
-
- All Implemented Interfaces:
BeamSqlTable
- Direct Known Subclasses:
SchemaBaseBeamTable,SystemTables.CatalogsMetaTable,SystemTables.DatabasesMetaTable,SystemTables.TablesMetaTable
public abstract class BaseBeamTable extends java.lang.Object implements BeamSqlTable
Basic implementation ofBeamSqlTable.
-
-
Constructor Summary
Constructors Constructor Description BaseBeamTable()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.Row>buildIOReader(org.apache.beam.sdk.values.PBegin begin, BeamSqlTableFilter filters, java.util.List<java.lang.String> fieldNames)create aPCollection<Row>from source with predicate and/or project pushed-down.BeamSqlTableFilterconstructFilter(java.util.List<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rex.RexNode> filter)Generate an IO implementation ofBeamSqlTableFilterfor predicate push-down.BeamTableStatisticsgetTableStatistics(org.apache.beam.sdk.options.PipelineOptions options)Estimates the number of rows or the rate for unbounded Tables.ProjectSupportsupportsProjects()Whether project push-down is supported by the IO API.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.beam.sdk.extensions.sql.meta.BeamSqlTable
buildIOReader, buildIOWriter, getSchema, isBounded
-
-
-
-
Method Detail
-
getTableStatistics
public BeamTableStatistics getTableStatistics(org.apache.beam.sdk.options.PipelineOptions options)
Description copied from interface:BeamSqlTableEstimates the number of rows or the rate for unbounded Tables. If it is not possible to estimate the row count or rate it will return BeamTableStatistics.BOUNDED_UNKNOWN.- Specified by:
getTableStatisticsin interfaceBeamSqlTable
-
buildIOReader
public org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.Row> buildIOReader(org.apache.beam.sdk.values.PBegin begin, BeamSqlTableFilter filters, java.util.List<java.lang.String> fieldNames)Description copied from interface:BeamSqlTablecreate aPCollection<Row>from source with predicate and/or project pushed-down.- Specified by:
buildIOReaderin interfaceBeamSqlTable
-
constructFilter
public BeamSqlTableFilter constructFilter(java.util.List<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rex.RexNode> filter)
Description copied from interface:BeamSqlTableGenerate an IO implementation ofBeamSqlTableFilterfor predicate push-down.- Specified by:
constructFilterin interfaceBeamSqlTable
-
supportsProjects
public ProjectSupport supportsProjects()
Description copied from interface:BeamSqlTableWhether project push-down is supported by the IO API.- Specified by:
supportsProjectsin interfaceBeamSqlTable
-
-