文件名称:全文搜索引擎WuKongSearch.zip
文件大小:3.1MB
文件格式:ZIP
更新时间:2022-08-06 01:13:40
开源项目
WuKong 全文搜索引擎。功能特性:高效索引和搜索(1M条微博500M数据28秒索引完,1.65毫秒搜索响应时间,19K搜索QPS)支持中文分词(使用sego分词包并发分词,速度27MB/秒)支持计算关键词在文本中的紧邻距离(token proximity)支持计算BM25相关度支持自定义评分字段和评分规则支持在线添加、删除索引支持持久存储可实现分布式索引和搜索采用对商业应用友好的Apache License v2发布示例代码:package main import ( "github.com/huichen/wukong/engine" "github.com/huichen/wukong/types" "log" ) var ( // searcher是协程安全的 searcher = engine.Engine{} ) func main() { // 初始化 searcher.Init(types.EngineInitOptions{ SegmenterDictionaries: "github.com/huichen/wukong/data/dictionary.txt"}) defer searcher.Close() // 将文档加入索引 searcher.IndexDocument(0, types.DocumentIndexData{Content: "此次百度收购将成中国互联网最大并购"}) searcher.IndexDocument(1, types.DocumentIndexData{Content: "百度宣布拟全资收购91无线业务"}) searcher.IndexDocument(2, types.DocumentIndexData{Content: "百度是中国最大的搜索引擎"}) // 等待索引刷新完毕 searcher.FlushIndex() // 搜索输出格式见types.SearchResponse结构体 log.Print(searcher.Search(types.SearchRequest{Text:"百度中国"})) } 标签:WuKongSearch
【文件预览】:
wukong-master
----wukong.go(140B)
----utils()
--------utils.go(146B)
--------test_utils.go(246B)
----testdata()
--------test_dict.txt(142B)
--------users.txt(724B)
--------crawl_weibo_data.go(2KB)
----core()
--------test_utils.go(828B)
--------indexer_test.go(14KB)
--------ranker_test.go(4KB)
--------indexer.go(18KB)
--------ranker.go(3KB)
----types()
--------search_request.go(1KB)
--------document_index_data.go(769B)
--------search_response.go(2KB)
--------engine_init_options.go(3KB)
--------index.go(2KB)
--------indexer_init_options.go(968B)
--------scoring_criteria.go(546B)
----examples()
--------benchmark.go(7KB)
--------custom_scoring_criteria.go(4KB)
--------codelab()
--------simplest_example.go(937B)
----README.md(2KB)
----data()
--------dictionary.txt(8.24MB)
--------README.md(99B)
--------stop_tokens.txt(8KB)
----engine()
--------ranker_worker.go(1KB)
--------stop_tokens.go(681B)
--------counters.go(286B)
--------segmenter_worker.go(3KB)
--------indexer_worker.go(3KB)
--------engine.go(14KB)
--------engine_test.go(14KB)
--------persistent_storage_worker.go(1KB)
----docs()
--------persistent_storage.md(3KB)
--------distributed_indexing_and_search.md(809B)
--------codelab.md(12KB)
--------benchmarking.md(2KB)
--------wukong.png(48KB)
--------bm25.md(1KB)
--------token_proximity.md(1KB)
--------why_wukong.md(2KB)
--------feedback.md(224B)
--------docker.md(675B)
--------realtime_indexing.md(589B)
--------cpu.png(97KB)
--------custom_scoring_criteria.md(1KB)
----.gitignore(88B)
----storage()
--------storage.go(771B)
--------bolt_storage.go(1KB)
--------kv_storage_test.go(572B)
--------kv_storage.go(1KB)
--------bolt_storage_test.go(584B)
----license.txt(549B)