先给结论:如果报告页数多于实际对象数量,通常不是工具“多抓了词”,而是同一个对象在不同页被重复计数。判断该不该去重,取决于你要的是“词表规模”还是“去重后的唯一对象数”。前者保留分页重复,后者必须先归一化再计数。如果报告页数少于实际对象数量,则说明分页或导出被截断,此时去重反而会掩盖漏数问题,结论失效。
报告页数大于实际对象数量,最常见的原因是分页边界把同一个对象切到两页,或者多个查询条件命中了同一对象。报告页数小于实际对象数量,则可能是导出上限、分页未取全或筛选条件过窄。这两种情况的处理方向相反,所以第一步不是去重,而是确认差异方向。
一个可操作的判断动作:先取报告前两页和最后两页,检查相邻页的首尾对象是否重复。如果首尾重复,基本属于分页重叠;如果各页对象完全不同但总数仍偏多,则更可能是同一对象被多种查询方式分别命中。
去重失败往往不是工具问题,而是对象粒度没统一。同一个业务对象可能以主词、变体、带修饰词的形式出现。如果你按字符串去重,变体会被当成不同对象;如果你按语义归并,又可能把真正独立的词合并掉。
可以用一个假设例子说明:假设报告有 300 行,实际业务对象只有 120 个,其中 80 个对象各出现两次,40 个对象各出现三次。按字符串去重后得到 120 行,说明重复来自同一写法;如果去重后仍有 200 行,说明同一对象存在多种写法,需要先做归一化再计数。
去重后的唯一对象数,决定你后续是继续扩量还是转入筛选。如果去重后数量明显低于预期,说明前一步的查询范围可能过窄,下一步应放宽条件重新取数,而不是直接进入分配任务。如果去重后数量接近预期,说明数据基本可用,下一步才是按业务优先级排序。
实际动作:把报告导出后,先新增一列“归一化键”,用统一的小写、去空格、统一单复数规则生成,再对该列做唯一值计数。这个动作的结果直接决定你是回到查询阶段补数,还是进入筛选阶段。若唯一值计数与业务对象清单差距很大,先核对清单本身是否遗漏,不要急着改工具参数。
反例:当你要评估的是“查询覆盖面”而不是“对象清单”时,重复计数本身有信息量。比如同一对象在多个查询条件下都被命中,说明它在该范围内稳定出现,这种重复不该被抹掉。此时正确的做法是保留重复,另建一列标记重复来源,而不是直接去重。
另外,如果报告页数少于实际对象数量,去重只会让缺口更难发现。这种情况下应先检查分页是否取全、导出是否被截断、筛选条件是否排除了部分对象,确认没有漏数后再考虑去重。
这套顺序的关键在于:先去重还是先补数,取决于差异方向;而差异方向只能通过抽查分页首尾和核对清单来确定,不能靠感觉。把这一步做对,后面的筛选和分配才有稳定基础。