我试图通过使用下推谓词读取数据集的子集。我的输入数据集包含存储在s3上的1,2TB和43436块文件。使用下推谓词,我应该读取1/4的数据。
看到星火UI。我看到作业实际上读取1/4的数据(300 of ),但是在作业的第一阶段仍然有43436个分区,但是只有1/4的分区有数据,其余的3/4是空的(检查附加屏幕截图中的中间输入数据)。我原以为Spark只为非空
如果我有一个用多级分区创建的表,即包含两列(state,city),如下所示: state=Texas,city=Houston state=CA,city=SanDiegoselect * from table_name where city=Houston
也就是说,在使用第二个分区列的地方,它会只扫描state=Texas中的city=Houston分区吗?我非常确定Hive是如何