delta-io / delta

An open-source storage framework that enables building a Lakehouse architecture with compute engines including Spark, PrestoDB, Flink, Trino, and Hive and APIs
https://delta.io
Apache License 2.0
7.62k stars 1.71k forks source link

[KERNEL] Change data skipping prediacte #3739

Open ilicmarkodb opened 1 month ago

ilicmarkodb commented 1 month ago

Which Delta project/connector is this regarding?

Description

Changed DataSkippingPredicate to be interface, and added two new classes which implement this interface, DefaultDataSkippingPredicate (basically old DataSkippingPredicate) and CollatedDataSkippingPredicate. Changed constructDataSkippingFilter to be collation aware.

How was this patch tested?

Tests added to DataSkippingUtilsSuite and StatsSchemaHelperSuite.

Does this PR introduce any user-facing changes?

No.