Java 关键字搜索的数据结构建议
我需要建立一个数据结构,有效地提供关键字搜索功能 我的衡量标准是:Java 关键字搜索的数据结构建议,java,lucene,keyword,Java,Lucene,Keyword,我需要建立一个数据结构,有效地提供关键字搜索功能 我的衡量标准是: 大约50万种产品 每个产品大约有20多个关键词(猜测) 产品由大约10位数字的ID标识,但可以是任何未来的ASCII码 如果可能的话,我想尝试将数据结构放入内存中。我将在服务器上,因此我可以假设一些重要的内存可用性 速度很重要。像一样使用数据库查询将不是一个可接受的解决方案 对数据结构有什么想法吗 我的想法: TrieMap 对于关键词来说非常有效,但是需要有一个产品ID列表挂在任何严重内存不足的叶子上。有什么办法可以帮上忙吗
数据库查询将不是一个可接受的解决方案
对数据结构有什么想法吗
我的想法:
TrieMap
对于关键词来说非常有效,但是需要有一个产品ID列表挂在任何严重内存不足的叶子上。有什么办法可以帮上忙吗
压缩
各种压缩方案浮现在脑海中,但没有一个具有重要价值
还有人把这样的东西放在一起吗?你能分享一下你的经历吗
数据可能会改变,但不会经常改变。每天重建结构以适应变化是合理的。您是否考虑过使用内存或作为文件系统索引
它的速度非常快,并且有很大的空间来满足未来可能出现的进一步需求。正在研究如何使用lucene实现这一点,但谷歌搜索似乎是最好的选择-谢谢!!我花了半天的时间建立了一个有效的索引,看起来用Lucene完全取代现有的可怕的搜索机制只需要花一点时间。一个真正出色的软件包-只要它继续保持稳定,就像乍一看一样。顺便说一句-有一个优秀的Lucene教程文档。