적극적으로 개발되지 않았습니다. 대신 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