倒排算法实现

 转自http://blog.iyi.cn/rimen/2006/01/

倒排索引技术主要应用与全文检索,通过对非主关键字的分析,建立内容与PK之间的关键。通过索引文件
存储后提供给应用高效的检索。
如果需要自己定制倒排索引器,算法应该实现如下的步骤:

1.信息分析,对输入的数据项或者记录(P,K)中的K做一个过滤的词法和语法分析。
主要对数据中非主关键字内容K进行分词,过滤,分析等获得一个内容关键字(k1,k2,k3....)集合
2.建立倒排关系,倒排所有和一般索引区别主要利用内容中的关键字建立和主关键字P的关系
这样把数据向(P,K)分割成一个倒排关系集合(k1,p),(k2,p),(k3,p)....
3.建立倒排索引,有了上面的一系列的关系后,你可好把k1,k2看成主关键字,建立多k到pn的索引集合,形成(k1,(p1,p2,p3,....)),(k2,(p1,p2,p3,....))。
4.索引存储,把所有关键字k的索引集合用一种统一的数据结构存储.
5.优化机制.一般内存K形成的关键较大,这样形成索引集合比较大,一般需要加入一下优化处理的机制.例如压缩技术.这可以参考Lucence的实现(把关键词压缩为<前缀长度,后缀)

6.[可选]应用接口.你实现了上述的算法,还必须提供一套接口(API)给应用程序使用.

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值