This edition recommends Zinc, a lightweight search engine.
Zinc is a lightweight alternative to Elasticsearch full-text search that runs without consuming a lot of resources and can be used to index any type of text data such as: logs, metrics, events, etc. Supports full-text search, query server logs, and embedding in applications for search.
Features
- Provides full-text indexing
- Provides a single binary file for installation and running
- Provides an embedded Web UI for querying data written in Vue
- Fully compatible with Elasticsearch apis for data acquisition (single record and batch apis)
- Compatible with Elasticsearch DSL to query data.
- Schema less – No need to define a schema beforehand, different documents in the same index can have different fields
- Store data in S3 and MinIO for low-cost, nearly unlimited persistent storage without the hassle of managing storage
Operation effect
Search interface
Management interface
Installation
Tip: When starting ZincSearch for the first time, you need to configure ZINC_FIRST_ADMIN_USER (the first administrator user for ZincSearch). Not required after the first run of ZincSearch.) And ZINC_FIRST_ADMIN_PASSWORD (the password of the first administrator user) environment variables.
Installation file download address:
After installation, visit 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 binary:
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
Example search
Load sample data using the batch API:
< span class = "HLJS - attribute" > curl < / span > -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"
Search data:
1, select the index
from the drop-down list on the left
2. Search for the word Gold in the search bar and press Enter
—END—
Open Source protocol: Apache2.0