Interface BeamSqlTable

    • Method Summary

      All Methods Instance Methods Abstract 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)
      create a PCollection<Row> from source.
      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 a PCollection<Row> from source with predicate and/or project pushed-down.
      org.apache.beam.sdk.values.POutput buildIOWriter​(org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.Row> input)
      create a IO.write() instance to write to target.
      BeamSqlTableFilter constructFilter​(java.util.List<org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rex.RexNode> filter)
      Generate an IO implementation of BeamSqlTableFilter for predicate push-down.
      org.apache.beam.sdk.schemas.Schema getSchema()
      Get the schema info of the table.
      BeamTableStatistics getTableStatistics​(org.apache.beam.sdk.options.PipelineOptions options)
      Estimates the number of rows or the rate for unbounded Tables.
      org.apache.beam.sdk.values.PCollection.IsBounded isBounded()
      Whether this table is bounded (known to be finite) or unbounded (may or may not be finite).
      ProjectSupport supportsProjects()
      Whether project push-down is supported by the IO API.
    • Method Detail

      • buildIOReader

        org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.Row> buildIOReader​(org.apache.beam.sdk.values.PBegin begin)
        create a PCollection<Row> from source.
      • buildIOReader

        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 a PCollection<Row> from source with predicate and/or project pushed-down.
      • buildIOWriter

        org.apache.beam.sdk.values.POutput buildIOWriter​(org.apache.beam.sdk.values.PCollection<org.apache.beam.sdk.values.Row> input)
        create a IO.write() instance to write to target.
      • constructFilter

        BeamSqlTableFilter constructFilter​(java.util.List<org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rex.RexNode> filter)
        Generate an IO implementation of BeamSqlTableFilter for predicate push-down.
      • supportsProjects

        ProjectSupport supportsProjects()
        Whether project push-down is supported by the IO API.
      • isBounded

        org.apache.beam.sdk.values.PCollection.IsBounded isBounded()
        Whether this table is bounded (known to be finite) or unbounded (may or may not be finite).
      • getSchema

        org.apache.beam.sdk.schemas.Schema getSchema()
        Get the schema info of the table.
      • getTableStatistics

        BeamTableStatistics getTableStatistics​(org.apache.beam.sdk.options.PipelineOptions options)
        Estimates 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.