如果用lucene在数据库中搜索一个人的姓名,它会将数据库内有关这个名字的所有内容搜索出来吗

如果用lucene在数据库中搜索一个人的姓名,它会将数据库内有关这个名字的所有内容搜索出来吗,第1张

精确匹配时就是这样。因为在建立倒排索引时,就将每个出现该人名的文档的docID,在该文档中出现的频率fre和每次出现的位置信息position加入倒排表的一个posting中。

如:docID freqposition docIDfreq positon ... ... ...

lunarmid { 2 2 ( 65,43) } ,{ 4 3(1, 4, 98)}, .... .....

另外,讲到lucene这种检索时,数据库一般称为索引数据库。

取决于你的设计

你可以建索引的时候,把所有字段都存进去,这样你搜索时,就可以取到,直接使用。如果你的 index 在内存或闪存的话,会比较快,不过要求空间比较大。而且有数据不一致的问题

另外,你也可以只存对应的 KEY,然后去数据库查。这样就是要查两遍


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6924791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-30
下一篇 2023-03-30

发表评论

登录后才能评论

评论列表(0条)

保存