有效搜索小文本

| 我有很多小文本(说大约500个单词)和两个数据库,每个数据库大约有10.000个条目(关键字)。 现在,我想处理每个文本,并找出文本中包含哪些关键字(保存在2个数据库中的关键字)。 你们当中有人对如何有效执行此操作有好的方法吗? 我想在搜索数据库中的每个文本之前先对其进行处理并对其进行索引(也许使用lucene),但是我真的不知道lucene是否是正确的工具。     
已邀请:
Lucene正是完成此任务的正确工具。 实现目标的一种方法是使用RAMDirectory为每个文本建立索引,然后使用IndexReader从索引中获取TermEnum。现在,您可以将术语与数据库中的关键字进行匹配。 另一种方法是将每个文本索引为lucene文档,然后遍历您的关键字并获得当前术语的termDocs =>包含当前术语/关键字的所有文本。     
您需要以某种方式对您的文本建立索引才能对其进行搜索。您有两种选择: 1)将您的文本加载到MySQL数据库中,并使字段/列全文可搜索 2)如您所说,用Lucene编制索引。 然后将您的关键字读入列表,遍历它们,然后对Lucene / MySQL进行查询。 假设您的数据集不大,我将使用MySQL-建立起来会更快。     

要回复问题请先登录注册