基于文本比较是相对于现在基于分词索引的搜索而说的,使用文本比较算法对要搜索的内容和关键字进行比较,找出最大匹配率,根据最大匹配进行排序。返回一个结果列表。中间避免了分词的过程。可能的问题:
1、性能问题。在内容数量非常庞大的时候,文本比较算法消耗的时间可能比较多。我所想到的解决方案是利用分布式计算,将内容分布在不同的地方同时进行计算。所以剩下的就是比较算法瓶颈的问题,就是内容有多大的时候才需要分布。相对于分词索引的搜索算法的性能,我认为这个是差不多的。分词索引在索引非常庞大的时候也需要分布吧,具体本人没有处理过非常大的数据量。只使用比较算法处理过10W的级别的词库,每个词为3-50个字左右。关键字为2-6个字,此时比较起来大约只花费了15-40毫秒。
2、准确率的问题。准确率取决于最大匹配率的算法十分正确,如果正确则与此相关的应该都能找出来,而分词索引则取决于分词算法的准确率。我认为比较算法的准确率还是比分词的准确率高的。
如还有其他问题希望大家补充。大家讨论下这个算法的可行性,欢迎拍砖。