Interface BeamSqlTableFilter

    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      static int expressionsInFilter​(java.util.List<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rex.RexNode> filterNodes)
      Count a number of RexNodes involved in all supported filters.
      java.util.List<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rex.RexNode> getNotSupported()
      Identify parts of a predicate that are not supported by the IO push-down capabilities to be preserved in a Calc following BeamIOSourceRel.
      int numSupported()
      This is primarily used by the cost based optimization to determine the benefit of performing predicate push-down for an IOSourceRel.
    • Method Detail

      • getNotSupported

        java.util.List<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rex.RexNode> getNotSupported()
        Identify parts of a predicate that are not supported by the IO push-down capabilities to be preserved in a Calc following BeamIOSourceRel.
        Returns:
        List<RexNode> unsupported by the IO API. Should be empty when an entire condition is supported, or an unchanged List<RexNode> when predicate push-down is not supported at all.
      • numSupported

        int numSupported()
        This is primarily used by the cost based optimization to determine the benefit of performing predicate push-down for an IOSourceRel.
        Returns:
        number of supported filters.
      • expressionsInFilter

        static int expressionsInFilter​(java.util.List<org.apache.beam.vendor.calcite.v1_40_0.org.apache.calcite.rex.RexNode> filterNodes)
        Count a number of RexNodes involved in all supported filters.
        Parameters:
        filterNodes - List<RexNode> supported filters.
        Returns:
        number of expressions involved in all supported filters.