Whoosh параллельный поиск - PullRequest
       31

Whoosh параллельный поиск

0 голосов
/ 26 сентября 2019

У меня есть индекс (размер = 3,5 ГБ) из 5 миллионов небольших документов, проиндексированных с помощью Whoosh.

Поскольку мои документы имеют только имя и содержимое , поэтомуmy Schema очень прост и имеет только два поля: id и content.

schema = Schema(name = ID(stored=True),
                content = TEXT(stored=True),
                )

. Для тестирования производительности я использую набор из 70000 запросов, но Whoosh занимает около 20секунд для выполнения каждого из них.

index = open_dir("../data/search/bm25_index/")
query_parser = QueryParser("content", schema=index.schema)
q = query_parser.parse("some query")
with index.searcher(weighting=scoring.TF_IDF()) as searcher:
    results = searcher.search(q)

Поскольку индекс не имеет состояния, как я могу выполнить многопоточный поиск?

...