如果我要查询的是表的某列上的不重复数据,该列是该表的分区键,它将扫描这些分区内的整个数据,还是给出分区元数据的结果。
答案 0 :(得分:0)
否,它不会仅从分区元数据中获取数据。它将扫描数据,但是如果您的表元数据(例如列统计信息和分区统计信息)是最新的并且正在运行具有以下属性的查询,则应该花费较少的时间(或扫描较少的数据)来在分区列上获得不同的值
set hive.cbo.enable=true;
set hive.compute.query.using.stats=true;
set hive.stats.fetch.column.stats=true;
set hive.stats.fetch.partition.stats=true;