闭卷重建布尔模型与集合语义的对象、公式、算例、算法与失败边界。
信息检索与搜索系统 · 小纸条
选一章打印。双面打印(按长边翻页)后沿虚线剪开,每张卡片正面题目、背面答案。
闭卷重建有序posting交集的对象、公式、算例、算法与失败边界。
闭卷重建跳表与skip pointer的对象、公式、算例、算法与失败边界。
闭卷重建查询解析、括号与字段限定的对象、公式、算例、算法与失败边界。
闭卷重建多词AND的执行顺序的对象、公式、算例、算法与失败边界。
闭卷重建短语、邻近与slop的对象、公式、算例、算法与失败边界。
闭卷重建过滤、缓存与安全边界的对象、公式、算例、算法与失败边界。
对象:双指针比较当前doc id,小者前进,相等则输出并同时前进,复杂度O(m+n)。;公式:i,j单调增加,总比较次数≤m+n。;算例:[1,3,7]与[2,3,6,7]依次比较,输出[3,7]。;边界:对无序表使用双指针漏结果;相等时只移动一边导致重复/死循环。。
对象:AND取posting交集、OR取并集、NOT取语料补集;括号和优先级决定语义。;公式:D(a AND b)=D(a)∩D(b)。;算例:a={1,3,5},b={2,3,5}:AND={3,5},OR={1,2,3,5},a NOT b={1}。;边界:按字符串从左到右忽略括号;NOT在未定义语料全集上执行。。
对象:查询语言把term、phrase、field、range和boolean operator解析为类型化AST。;公式:title:"deep learning" AND year:[2020 TO 2024]。;算例:输入title:检索 AND (bm25 OR tfidf),AST根为AND,左右是字段term与OR子树。;边界:直接拼接到后端查询造成注入;未闭合引号静默当普通词。。
对象:长posting增加跳指针,可在跳目标不超过对方当前doc时跨过一段。;公式:经验间隔约√L,但最佳值取决于分布和缓存。;算例:长度100的posting可约每10项设skip;若对方doc=80,可跳过多个小doc。;边界:短表加skip反而增加开销;删除后skip指向失效位置。。
对象:邻近查询允许词位置差落在窗口内;顺序/无序slop语义必须明确。;公式:ordered slop s:0<p_b−p_a≤s+1。;算例:a位置[2,10],b位置[4,11],slop=1允许差≤2,因此2→4和10→11均命中。;边界:把字符距离当token距离;同一个位置被多次配对造成计数膨胀。。
对象:先处理df最小的posting可快速缩小中间集合,但短语/字段约束成本也要估计。;公式:cost近似Σ中间集合长度。;算例:df分别1000、20、200,先交20与200通常比先交1000与200便宜。;边界:只按query原顺序;统计过旧导致稀有词变高频仍错误规划。。
对象:权限、租户、时间和类型过滤不是普通相关性特征,必须在不可绕过的安全边界执行。;公式:result=rank(retrieve(q)∩allowed(user)∩filters)。;算例:用户A能看doc{1,2},检索候选{2,3},最终只能返回{2},doc3不得先展示后隐藏。;边界:跨用户复用无权限维度缓存;高亮接口单独泄露被过滤正文。。