03 2019 档案
so库链接和运行时选择哪个路径下的库?
摘要:总结今天遇到的一个so库链接、运行问题。 这几天修改了xapian的源码,重新编译so库,再重新编译之前的demo程序,跑起来后却发现执行的函数并非我修改过的,使用的还是老版本。折腾了一会儿,发现是因为/usr/local/lib目录中含有同名so库导致。这里记录下正确的解决思路。 1 确保链接到了 阅读全文
posted @ 2019-03-23 00:25 烛秋 阅读(2258) 评论(0) 推荐(2) 编辑
Xapian索引-文档检索过程分析之匹配百分比
摘要:本文属于文档检索过程分析的一部分,重点分析文档匹配百分比(percent)的计算过程。 1 percent是什么? 我们之前分析的检索demo: 2 为什么需要percent? 先说一下背景,做过搜索的人应该都知道BM25算法,这也是xapian内部默认的相关性打分算法,它是一个针对term做打分的 阅读全文
posted @ 2019-03-18 21:03 烛秋 阅读(725) 评论(0) 推荐(0) 编辑
Xapian索引-文档检索过程分析
摘要:本文是Xapian检索过程的分析,本文内容中源码比较多。检索过程,总的来说就是拉取倒排链,取得合法doc,然后做打分排序的过程。 1 理论分析 1.1 检索语法 面对不同的检索业务,我们会有多种检索需求,譬如:要求A term和B term都在Doc中出现;要求A term或者B term任意在Do 阅读全文
posted @ 2019-03-10 23:58 烛秋 阅读(1452) 评论(0) 推荐(0) 编辑
Xapian的内存索引-添加文档
摘要:本文主要记录Xapian的内存索引在添加文档过程中,做了哪些事情。 内容主要为函数执行过程中的流水线。 demo代码: 1.创建并填充Document 定义好文档对象,使用add_posting接口,添加term,以及对应的position、wdfinc; 内部实现细节: 1.1 先尝试读取doc已 阅读全文
posted @ 2019-03-03 22:16 烛秋 阅读(825) 评论(0) 推荐(0) 编辑