apache / iceberg

Apache Iceberg
https://iceberg.apache.org/
Apache License 2.0
6.5k stars 2.25k forks source link

Is iceberg support "Predicate Pushdown" when spark read data from it? #11617

Open Akeron-Zhu opened 3 days ago

Akeron-Zhu commented 3 days ago

I had run same SQL use spark-3.3, the only difference is data source,one is hive and another is iceberg。The web UI show that, however, iceberg read all table (e.g, 1.1TB), but hive read much less than iceberg (e.g, 40GB). I guess the reason is hive can prune data through the predicate pushdown and iceberg don't support it, is this right?

RussellSpitzer commented 3 days ago

Depends on the query, there are some finicky details there but sometimes (especially in early versions of Iceberg and Spark) predicates don't translate correctly.

Iceberg does support Predicate Pushdown, the rules are just slightly different but in general if the types match up correctly everything should be exactly the same.