Skip to content

GoFound GoLang Full text search go语言全文检索引擎 基于平衡二叉树+正排索引、倒排索引实现 可支持亿级数据,毫秒级查询。 使用简单,使用http接口,任何系统都可以使用。

License

Notifications You must be signed in to change notification settings

FableFatale/gofound

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoFound

GoFound 一个golang实现的全文检索引擎,支持持久化和单机亿级数据毫秒级查找。 接口可以通过http调用。详见 API文档

文档

在线体验

Simple社区使用的GoFound,可以直接模糊搜索相关帖子

在线体验

QQ交流群

556102631

二进制文件下载

支持Windows、Linux、macOS、(amd64和arm64)和苹果M1 处理器

点击下载

技术栈

  • 平衡二叉查找树
  • 二分法查找
  • 快速排序法
  • 倒排索引
  • 正排索引
  • 文件分片
  • golang-jieba分词
  • leveldb

为何要用golang实现一个全文检索引擎?

  • 正如其名,GoFound去探索全文检索的世界,一个小巧精悍的全文检索引擎,支持持久化和单机亿级数据毫秒级查找。

  • 传统的项目大多数会采用ElasticSearch来做全文检索,因为ElasticSearch够成熟,社区活跃、资料完善。缺点就是配置繁琐、基于JVM对内存消耗比较大。

  • 所以我们需要一个更高效的搜索引擎,而又不会消耗太多的内存。 以最低的内存达到全文检索的目的,相比ElasticSearchgofound是原生编译,会减少系统资源的消耗。而且对外无任何依赖。

安装和启动

下载好源码之后,进入到源码目录,执行下列两个命令

  • 编译

直接下载 可执行文件 可以不用编译,省去这一步。

go get && go build
  • 启动
./gofound --addr=:8080 --data=./data

多语言SDK

Java

Python

Node.js

其他语言的SDK,正在陆续完善中。也可以直接通过API文档用HTTP请求实现。

待办

TODO

使用GoFound的用户

Simple社区贝塔博客Book360

深圳市十二点科技有限公司深圳市恒一博科技有限公司

西安易神网络信息系统服务有限公司

影视资源搜索酷易物联French博客

好咪二次元之家

About

GoFound GoLang Full text search go语言全文检索引擎 基于平衡二叉树+正排索引、倒排索引实现 可支持亿级数据,毫秒级查询。 使用简单,使用http接口,任何系统都可以使用。

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 98.5%
  • Shell 1.5%