我有大量字符串(可能是1,000,000+),我想搜索另一个字符串(文档)以查看哪些搜索字符串出现在文档中。
并非所有搜索字符串都是一个单词,因此不仅仅是在搜索字符串列表中搜索文档中的每个单词。
最有效的方法是什么?
我会为大量文件(来自Feed)做这件事,需要做得足够快,以至于我可以比他们进来时更快地处理文件(理想情况下是一两秒)
我可能会想出一个不会出现在搜索字符串中的停用词列表(例如'the','和')。
理想情况下,解决方案将使用Java,但这不是必需的,因为我总是可以将代码移植到Java中。如果它有任何区别,搜索字符串当前存储在MongoDB中。
答案 0 :(得分:2)
concurrent-trees项目中有一个示例,说明如何有效地扫描未见文档,以查找存储在该项目中倒置基数树中的大量关键字。示例代码here。
答案 1 :(得分:2)