本期推荐的是一个轻量级的搜索引擎——Zinc。
Zinc 是一个Elasticsearch 全文检索的轻量级替代品,运行无需消耗大量资源,可用于索引任何类型的文本数据,例如:日志、指标、事件等。支持全文检索、查询服务器日志、嵌入到应用程序中进行检索。
功能特性
- 提供全文索引功能
- 提供用于安装和运行的单个二进制文件
- 提供用于查询用 Vue 编写的数据的嵌入式 Web UI
- 与 Elasticsearch API 完全兼容以获取数据(单记录和批量 API)
- 与 Elasticsearch DSL 兼容以查询数据。
- Schema less – 无需预先定义模式,同一索引中的不同文档可以有不同的字段
- 将数据存储在 S3 和 MinIO 中,以实现低成本、几乎无限的持久存储,而无需管理存储的麻烦
运行效果
搜索界面
管理界面
安装
提示:第一次启动 ZincSearch 时,需要配置 ZINC_FIRST_ADMIN_USER (ZincSearch 的第一个管理员用户。首次运行 ZincSearch 后不需要。)和 ZINC_FIRST_ADMIN_PASSWORD (第一个管理员用户的密码)环境变量。
安装文件下载地址:
安装完成后访问 http://localhost:4080 登录。
https://github.com/zinclabs/zinc/releases
Windows:
set ZINC_FIRST_ADMIN_USER=admin
set ZINC_FIRST_ADMIN_PASSWORD=Complexpass#123
mkdir data
zinc.exe
MacOS:
brew tap zinclabs/tap
brew install zinclabs/tap/zinc
mkdir data
ZINC_FIRST_ADMIN_USER=admin ZINC_FIRST_ADMIN_PASSWORD=Complexpass#123 zinc
MacOS/Linux二进制文件:
mkdir data
ZINC_FIRST_ADMIN_USER=admin ZINC_FIRST_ADMIN_PASSWORD=Complexpass#123 ./zinc
Docker:
https://gallery.ecr.aws/zinclabs/zinc
mkdir data
docker run -v /full/path/of/data:/data -e ZINC_DATA_PATH="/data" -p 4080:4080 \
-e ZINC_FIRST_ADMIN_USER=admin -e ZINC_FIRST_ADMIN_PASSWORD=Complexpass#123 \
--name zinc public.ecr.aws/zinclabs/zinc:latest
示例搜索
使用批量 API 加载示例数据:
curl -L https://github.com/zinclabs/zinc/releases/download/v0.1.1/olympics.ndjson.gz -o olympics.ndjson.gz
gzip -d olympics.ndjson.gz
curl http://localhost:4080/api/_bulk -i -u admin:Complexpass#123 --data-binary "@olympics.ndjson"
搜索数据:
1、从左侧的下拉列表中选择索引
2、在搜索栏中搜索 Gold 一词,然后按 Enter
—END—
开源协议:Apache2.0