先给结论:多数情况下不是操作本身失效,而是小样本阶段和批量阶段之间有一个被忽略的条件变了。最值得先查的不是“要不要继续做”,而是两批对象在页面类型、抓取入口和生效窗口上是否可比。把这三项对齐后再复现,才能判断是该扩大范围还是该停下来。
小样本有效,通常是因为样本恰好满足某个隐藏前提。批量无效,最常见的原因是批量池里混进了不满足该前提的页面。这个前提可能是页面有独立搜索需求、有稳定的内部链接指向、或者内容结构足够完整。样本池小的时候,人往往凭直觉挑的都是“好页面”;批量时按规则抓取,就把边缘页面一起卷了进来。
一个可区分的证据是:把批量对象按是否满足该前提分成两组,分别看变化方向。如果满足组仍有正向信号、不满足组持平或反向,说明问题出在筛选条件,而不是操作本身。如果两组都没有变化,才需要怀疑操作在批量环境下没有真正落地。
实施动作:先回捞小样本阶段那批页面,逐条记录它们当时满足的共同条件,再拿这个条件去筛批量池。筛完如果批量池只剩很小一部分,说明原操作本来就只适用于窄范围,扩大范围是错误预期,不是执行失败。
条件一:小样本是人工逐页处理的,批量是模板或脚本统一处理的。这时差异往往出在“逐页判断”被模板抹掉了。逐页处理时,每页的标题、内链锚文本、内容段落位置都按页面实际情况调整;批量时统一套用,可能让原本需要差异化处理的页面被同质化。选择是:把批量操作拆成“统一部分 + 逐页部分”,统一部分只做所有页面都成立的事,逐页部分保留人工或半自动判断。
条件二:小样本观察窗口足够长,批量后观察窗口太短。页面从改动到出现可观测变化,本身需要时间,且不同页面类型快慢不同。小样本可能是隔了几周才回看,批量时刚上线几天就下结论。选择是:给批量对象设一个不早于小样本观察时长的回看点,中途只看抓取和索引信号,不把排名波动当结论。
判断依据:如果批量对象在抓取或索引层面已有变化,只是排名没动,多半是时间不够;如果连抓取都没变化,优先查入口和链接,而不是继续等。
复现的关键是控制变量。不要一次把样本从 20 页扩到 2000 页,而是先扩到 100 页左右,且这 100 页仍满足小样本的前提条件。观察这一批是否复现出与小样本一致的方向。如果复现,再逐步放宽筛选条件;如果不复现,说明前提条件判断错了,回到上一步重新找共同点。
这里要说明一个假设例子:假设小样本是 30 个有独立搜索需求的页面,批量是 800 个含大量无需求页面的集合。把 800 页按“是否有独立搜索需求”拆开后,有需求的那 90 页出现与小样本一致的方向,其余 710 页没有变化。这个结果不能证明操作对 710 页无效,只能说明该操作对无需求页面不适用,下一步应调整的是筛选规则,而不是否定操作。
动作与结果:先做 100 页的分层复现,结果会直接决定下一步是扩量、改筛选条件,还是回退。跳过这一步直接全量,等于把筛选问题和执行问题混在一起,之后很难拆开。
有两种情况不值得继续复现。第一,小样本本身就不稳定,比如改动前后差异落在日常波动范围内,只是恰好方向为正。这时应该先延长观察或增加样本量,而不是急着批量。第二,批量无效的同时,小样本也出现了回落,说明外部需求或竞争环境变了,操作与结果之间不再是简单对应。此时继续复现只会把环境变化误读成操作问题。
判断波动是否可忽略,可以看同一批页面在未改动时段的自然变化幅度,把改动后的变化与这个幅度比。如果改动后的变化没有明显超出自然幅度,就不足以支撑“有效”的结论,更不该据此批量。
复现完成后,留下的不应是“这个操作有用/没用”,而是一句可执行的条件,例如“对有独立搜索需求、且已有稳定内链入口的页面,该操作在小样本和分层样本中都出现同向变化”。这句话才是下一步批量或放弃的依据。条件写不具体,下次换一批页面还会重演同样的问题。
最后提醒一点:一次改动前后的比较要同时考虑季节、搜索需求变化和数据采集口径差异。请求量、抓取量或某项统计归零,不能单独证明处理正确,它也可能是采集延迟、入口调整或统计口径变化造成的。只有把操作条件、观察窗口和对照幅度一起固定,复现结论才站得住。