Class Projections


  • public class Projections
    extends java.lang.Object
    Utils to project expressions on rows to expressions on partitions.
    • Method Detail

      • inclusive

        public static Projections.ProjectionEvaluator inclusive​(PartitionSpec spec)
        Creates an inclusive ProjectionEvaluator for the spec, defaulting to case sensitive mode.

        An evaluator is used to project expressions for a table's data rows into expressions on the table's partition values. The evaluator returned by this function is inclusive and will build expressions with the following guarantee: if the original expression matches a row, then the projected expression will match that row's partition.

        Each predicate in the expression is projected using Transform.project(String, BoundPredicate).

        Parameters:
        spec - a partition spec
        Returns:
        an inclusive projection evaluator for the partition spec
        See Also:
        Inclusive transform used for each predicate
      • inclusive

        public static Projections.ProjectionEvaluator inclusive​(PartitionSpec spec,
                                                                boolean caseSensitive)
        Creates an inclusive ProjectionEvaluator for the spec.

        An evaluator is used to project expressions for a table's data rows into expressions on the table's partition values. The evaluator returned by this function is inclusive and will build expressions with the following guarantee: if the original expression matches a row, then the projected expression will match that row's partition.

        Each predicate in the expression is projected using Transform.project(String, BoundPredicate).

        Parameters:
        spec - a partition spec
        caseSensitive - whether the Projection should consider case sensitivity on column names or not.
        Returns:
        an inclusive projection evaluator for the partition spec
        See Also:
        Inclusive transform used for each predicate
      • strict

        public static Projections.ProjectionEvaluator strict​(PartitionSpec spec)
        Creates a strict ProjectionEvaluator for the spec, defaulting to case sensitive mode.

        An evaluator is used to project expressions for a table's data rows into expressions on the table's partition values. The evaluator returned by this function is strict and will build expressions with the following guarantee: if the projected expression matches a partition, then the original expression will match all rows in that partition.

        Each predicate in the expression is projected using Transform.projectStrict(String, BoundPredicate).

        Parameters:
        spec - a partition spec
        Returns:
        a strict projection evaluator for the partition spec
        See Also:
        Strict transform used for each predicate
      • strict

        public static Projections.ProjectionEvaluator strict​(PartitionSpec spec,
                                                             boolean caseSensitive)
        Creates a strict ProjectionEvaluator for the spec.

        An evaluator is used to project expressions for a table's data rows into expressions on the table's partition values. The evaluator returned by this function is strict and will build expressions with the following guarantee: if the projected expression matches a partition, then the original expression will match all rows in that partition.

        Each predicate in the expression is projected using Transform.projectStrict(String, BoundPredicate).

        Parameters:
        spec - a partition spec
        caseSensitive - whether the Projection should consider case sensitivity on column names or not.
        Returns:
        a strict projection evaluator for the partition spec
        See Also:
        Strict transform used for each predicate