Python 慢嗖嗖搜索
在用一个简单的模式创建了一个whoosh索引并索引了150万条记录之后,我在15秒内获得了近1000个搜索结果Python 慢嗖嗖搜索,python,indexing,whoosh,Python,Indexing,Whoosh,在用一个简单的模式创建了一个whoosh索引并索引了150万条记录之后,我在15秒内获得了近1000个搜索结果 schema = Schema(tax_id=STORED, name=TEXT(stored=True)) 主*.seg文件的大小约为190 Mb 我搜索的方式如下 ix=open_dir("index") with ix.searcher() as searcher: query = QueryParser("name", ix.schema).parse(
schema = Schema(tax_id=STORED, name=TEXT(stored=True))
主*.seg文件的大小约为190 Mb
我搜索的方式如下
ix=open_dir("index")
with ix.searcher() as searcher:
query = QueryParser("name", ix.schema).parse(u'putrefaciens')
results = searcher.search(query)
我想知道这一性能是否达到了预期的水平,在给定索引大小的情况下,我们是否可以使用whoosh进行更快的全文搜索。不确定这是否有助于您的应用程序,但我只想指出,文本字段比ID字段做得更复杂 在我的whoosh应用程序中,我有一个“name”文本字段,用于“processed”索引/搜索。因此,只要输入一些单词,就可以在名称中找到它 如果我只想按原样进行精确的索引/查找,我还有一个“name_exact”ID字段 如果后者对于您的应用程序来说已经足够了,那么您可以使用ID字段来尝试性能
正如Steve K已经指出的,使用最新的嗖嗖声(甚至是回购提示)可能也会有所帮助。由于嗖嗖声每次都在变化(为了更好),您正在/正在使用哪个版本?即使索引中有许多文档,这也是不可接受的性能,即使是嗖嗖声。这不应超过3(任意)秒。