rusticsearch
1.0.0
沒有積極開發。請改為查看 toshi!
輕量級 Elasticsearch 相容搜尋伺服器。
高品質的搜尋引擎對於許多網站都很重要,Elasticsearch 為其提供了易於使用的 REST API。但 Elasticsearch 的問題是它至少需要 2GB 內存,這使得它的運行成本很高。
該專案的目標是建立新的搜尋伺服器,該伺服器採用 Elasticsearch 強大的搜尋功能和簡單的 API,但使用對記憶體使用有更多控制的語言來實現。我們的目標是將記憶體使用量保持在 100MB 以下(不包括快取),因此運行成本應該非常低。
Rust 會釋放內存,而不是讓未使用的內存稍後由像 Java 這樣的「垃圾收集器」收集。在 Elasticsearch 中,這些垃圾堆可能會浪費千兆位元組的內存,而這些內存本來可以用作緩存。
Rust 是 Mozilla 的一種系統程式語言,旨在建立快速、安全且可靠的軟體。
請考慮該項目預測試品質。它目前僅支援 Elasticsearch API 的子集,這可能不足以運行大多數應用程式。
它目前支援批量索引和單獨索引(但是,批量索引器目前相當慢),並使用 BM25 相似性演算法進行搜尋。
請參閱路線圖,以了解目前正在處理的事項清單。
請參閱 Elasticsearch 查詢 DSL 支援。
Rusticsearch 僅在 Linux 和 Windows 上進行了正式測試,但它也應該可以在 Mac OS X 上運行。
Rusticsearch 可以使用 Rust stable 1.15 或更高版本進行編譯。您可以從 Rust 網站下載它,也可以使用 rustup。
安裝 Rust 後,克隆儲存庫並執行cargo run
:
git clone [email protected]:kaedroho/rusticsearch.git
cd rusticsearch
cargo run