For text data fields, the strongest matches are elasticsearch/elasticsearch (Elasticsearch is a distributed, document-oriented database that natively supports), manticoresoftware/manticoresearch (Manticore Search is a high-performance, self-hostable document-oriented database that) and mongodb/mongo (MongoDB is a distributed, document-oriented database that natively supports). surrealdb/surrealdb and toshi-search/toshi round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Find the best open-source text search engines. Compare top-rated GitHub repositories by features and activity to pick the right one for your project.
Elasticsearch is a distributed search engine and NoSQL document store designed for full-text search and real-time data retrieval. It functions as a RESTful data indexer and vector database, allowing for the storage and management of structured JSON documents across multiple nodes. The system distinguishes itself through its ability to serve as a log analytics platform for monitoring system health and security events. It incorporates vector search implementation using mathematical embeddings to support generative AI and augmented generation applications. The platform covers a broad range of c
Elasticsearch is a distributed, document-oriented database that natively supports JSON storage, complex full-text search, and horizontal scaling, making it a comprehensive solution for your requirements.
Manticoresearch is a high-performance search engine and database designed for indexing and retrieving large datasets. It functions as a full-text search engine, a vector search database, and a SQL-based search database, providing a distributed search cluster architecture. The system provides an alternative to the Elasticsearch stack, offering a compatible API for indexing and searching structured and unstructured data. It distinguishes itself by supporting multiple retrieval methods, including vector matching for similarity search, geospatial queries, and traditional full-text ranking. The p
Manticore Search is a high-performance, self-hostable document-oriented database that natively supports JSON, full-text search, and horizontal scaling via a distributed architecture.
This project is a distributed, document-oriented database system designed to store information in flexible, hierarchical structures. It supports horizontal scaling through automated sharding and maintains high availability across global clusters using a multi-node replication protocol. By executing multi-document operations as atomic units, the system ensures data integrity and consistency across distributed environments. The platform distinguishes itself by integrating advanced vector-based indexing, which enables semantic similarity searches alongside traditional geospatial and lexical quer
MongoDB is a distributed, document-oriented database that natively supports JSON-like storage, horizontal scaling via sharding, and robust full-text search capabilities, making it a comprehensive solution for your requirements.
SurrealDB is a multi-model database engine designed to store and query document, graph, relational, and vector data within a single ACID-compliant platform. It functions as an AI-native data store, integrating vector search, graph traversal, and machine learning model execution directly into its query layer. By providing a unified declarative query language, the platform eliminates the need for external middleware to synchronize data across different storage models. The platform distinguishes itself through its ability to manage agent memory and complex workflows natively. It allows developer
SurrealDB is a multi-model database that natively supports document storage, JSON data, and full-text search capabilities, making it a comprehensive solution for your document-oriented data management needs.
Toshi is a full-text search engine and library implemented in Rust, designed to manage and query large-scale structured datasets. It functions as a distributed search platform that enables high-speed information retrieval across massive collections of data. The system distinguishes itself through an architecture built for high-throughput ingestion and parallel query execution. It utilizes an actor-model concurrency framework to coordinate worker processes and employs distributed sharding to partition index segments across multiple nodes. To maintain performance and data integrity, the engine
Toshi is a distributed full-text search engine that provides the indexing and query capabilities required for managing large-scale structured datasets, though it is more specialized for search retrieval than general-purpose document storage.
Wukong is a distributed full-text search engine designed for indexing and retrieving text documents. It functions as a customizable search backend that employs a BM25 relevance ranker to order search results based on term frequency and inverse document frequency. The system includes a specialized Chinese text segmenter to break continuous character strings into meaningful words for accurate indexing and retrieval. To handle large datasets and high request volumes, it utilizes a distributed search index that employs hash-based sharding to split documents across multiple nodes. The engine prov
Wukong is a distributed full-text search engine that provides the indexing and retrieval capabilities required for document-oriented data, though it focuses more on search-specific functionality than general-purpose JSON document storage.
RavenDB is a multi-model NoSQL document database designed for high-performance, ACID-compliant data storage. It persists structured information as schema-flexible JSON documents and utilizes a unit-of-work session pattern to track entity changes and batch modifications into atomic transactions. The platform is built on a distributed architecture that supports horizontal scaling through sharding and ensures high availability via multi-node, master-to-master cluster replication. The database distinguishes itself through a self-optimizing query engine that automatically creates and maintains ind
RavenDB is a fully-featured, self-hostable document-oriented database that natively supports JSON storage, ACID transactions, horizontal scaling, and built-in full-text search capabilities.
YDB is a distributed SQL database and analytical engine designed for horizontal scalability and strong consistency. It functions as a multi-model system that supports transactional and analytical workloads through a distributed architecture providing serializable ACID transactions. The system is distinguished by its broad protocol compatibility, implementing the PostgreSQL wire protocol for standard SQL drivers and the Kafka protocol for messaging and streaming. It further serves as a vector database, supporting vector indexes and approximate nearest neighbor searches for semantic search and
YDB is a distributed, multi-model SQL database that supports JSON data types and provides robust indexing and querying capabilities, making it a capable choice for managing structured and semi-structured data at scale.
Zincsearch is a high-performance, self-hosted full-text search engine and database written in Go. It provides a lightweight infrastructure for indexing and searching unstructured text data, specializing in log and event analysis through a schemaless indexing model. The system is designed as a resource-efficient alternative to heavier search infrastructure, featuring an API surface compatible with Elasticsearch for indexing and querying documents. It distinguishes itself by packaging the entire server and its built-in web search interface into a single statically linked binary. The engine cov
This is a document-oriented search engine and database that supports JSON-based indexing and full-text search, providing a lightweight, self-hostable alternative to traditional search infrastructure.
Kinto is a cloud state backend designed for storing and synchronizing JSON data across multiple devices. It provides a centralized service for managing schema-less JSON records organized into buckets and collections, ensuring a consistent state through a REST API. The system supports collaborative data sharing by granting read and write access to specific documents or collections via user groups and permissions. It enables document synchronization using change feed tracking and deletion markers to update clients with the latest state. Capabilities include fine-grained access control, JSON sc
Kinto is a document-oriented database that provides a REST API for storing and synchronizing JSON records, making it a suitable choice for managing semi-structured data with built-in support for permissions and synchronization.
Elasticsearch is a distributed search engine and document store designed for the high-performance indexing and retrieval of massive volumes of unstructured data. It functions as a centralized analytics platform, providing a schema-flexible architecture that organizes information into searchable indices while maintaining global cluster state through a distributed consensus mechanism. The platform distinguishes itself through its integrated approach to observability, security, and advanced analytics. It combines full-text, vector, and hybrid search capabilities with machine learning-driven insi
Elasticsearch is a distributed, document-oriented database that natively supports JSON storage, powerful full-text search, and horizontal scalability, making it a flagship solution for managing and querying large volumes of structured and semi-structured data.
Isar is a type-safe, ACID-compliant local NoSQL document store designed for high-performance data storage and retrieval. It functions as an embedded database engine that persists large datasets on-device while ensuring transactional integrity through automatic rollbacks of failed write operations. The project distinguishes itself by validating database queries at compile time using static typing to prevent runtime errors. It incorporates a full-text search engine with specialized indexing for efficient keyword and phrase matching and utilizes parallel execution across multiple isolates to pre
Isar is a document-oriented NoSQL database that provides full-text search and JSON-like document storage, though it is designed as an embedded local engine rather than a horizontally scalable server-side database.
TinyDB is a lightweight, document-oriented database and embedded NoSQL engine. It stores data as documents in local files, providing a persistence layer that operates without a separate server process. The system is an extensible document store featuring a middleware architecture. This allows for the customization of storage backends and the interception of data operations to transform how information is stored and retrieved. The database manages unstructured data using JSON-based serialization and supports pluggable storage backends for local file persistence.
TinyDB is a lightweight, document-oriented database that provides JSON-based storage and a query language, though it is designed as an embedded library rather than a horizontally scalable server-based system.
RediSearch is a Redis module that adds secondary indexing, full-text search, aggregation, and vector similarity search directly into the in-memory data store. It operates as an in-process search engine, extending the core key-value store with capabilities for indexing hash and JSON documents, enabling fast field-level lookups beyond primary key access. The module provides a full-text search engine built on inverted indexes, supporting stemming, fuzzy matching, and relevance scoring via tf-idf. It also includes a vector similarity search engine using a Hierarchical Navigable Small World graph
RediSearch is a powerful module that transforms Redis into a document-oriented database with robust full-text search, JSON support, and indexing capabilities, though it functions as an extension to an existing key-value store rather than a standalone document database.
NeDB is a JavaScript embedded NoSQL document store designed for Node.js and the browser. It functions as an in-memory data store with the option to persist documents to a local file system, ensuring data survives application restarts. The project utilizes a MongoDB-compatible API to perform data operations, allowing it to serve as a lightweight document indexing system and a persistent file database without requiring a separate database server. Capabilities include querying, inserting, updating, and deleting documents, as well as the ability to create indexes on specific fields to accelerate
NeDB is a document-oriented database that provides a MongoDB-compatible API for storing and querying JSON documents, though it is designed as an embedded, single-node library rather than a horizontally scalable server.
Quickwit is a cloud-native, distributed search engine designed for observability data such as logs, traces, and metrics. It functions as an observability backend that decouples compute from storage by persisting indices directly in S3-compatible cloud object stores. The system is distinguished by its compatibility with the Elasticsearch REST API, allowing it to integrate with existing clients and log shippers without reconfiguration. It also serves as an OpenTelemetry data indexer, ingesting technical data via the OpenTelemetry Protocol using gRPC and HTTP. The engine utilizes a hybrid of co
Quickwit is a distributed search engine that supports JSON-like data and full-text search, making it a capable document-oriented store for large-scale log and observability data.
This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d
RxDB is a document-oriented NoSQL database that supports JSON and complex querying, though it is primarily designed for local-first application state management rather than large-scale server-side horizontal scaling.
Meilisearch is a Rust-based search engine providing typo-tolerant full-text and vector-based semantic search with real-time conversational capabilities.
Meilisearch is a document-oriented search engine that natively supports JSON documents and full-text indexing, making it a highly effective tool for querying structured text data despite being optimized for search rather than general-purpose transactional storage.
Typesense is a distributed search engine designed to provide sub-millisecond query latency across massive datasets. It functions as both a high-performance indexing and retrieval engine and a comprehensive search experience platform, offering built-in typo tolerance and tools for managing relevance through synonym configuration, result curation, and complex filtering. The platform distinguishes itself by utilizing in-memory indexing to maintain high-throughput data retrieval and integrating vector database capabilities to support semantic similarity searches. It ensures data consistency and h
Typesense is a distributed, self-hostable search engine that natively supports JSON documents and provides powerful full-text search capabilities, making it a highly effective document-oriented database for search-heavy applications.
Lnx is a high-performance search engine and indexing database designed for managing large datasets. It provides a scalable infrastructure for full-text retrieval, allowing applications to process and query structured data with consistent responsiveness. The platform distinguishes itself through a schema-driven approach to data ingestion, which enforces structured field definitions to optimize storage and query precision. It incorporates advanced search capabilities, including fuzzy matching, spell correction, and similarity-based content recommendations, to ensure accurate results even with i
This is a high-performance search database built on the Tantivy engine that provides full-text search and JSON support, making it a strong candidate for document-oriented storage and retrieval.
LiteDB is a serverless NoSQL document store and embedded database engine for .NET applications. It persists unstructured documents and binary data into a single standalone disk file, allowing the database to run within the application process rather than as a separate server. The system supports strongly typed queries through Language Integrated Query and allows the execution of standard SQL commands for data retrieval and transformation. It provides native mapping of plain classes into document formats and secures stored information via symmetric-key file encryption. The engine includes cap
LiteDB is a document-oriented database that provides JSON-like document storage and SQL-based querying, though it is designed as an embedded engine rather than a horizontally scalable server.
LiteDB is a serverless, embedded NoSQL document database for .NET applications. It persists data into a single portable file, functioning as a BSON data store that resides within the application process rather than running as a separate server. The system is ACID compliant, utilizing write-ahead logging to ensure atomic, consistent, isolated, and durable transactions. It includes built-in encryption to provide secure local data storage and protect files on disk from unauthorized access. The project covers object-document mapping to convert classes into document formats, indexed search capabi
LiteDB is a document-oriented database that supports JSON-like BSON storage and indexing, though it is designed as an embedded, serverless engine rather than a horizontally scalable distributed system.
| 仓库 | Star 数 | 语言 | 许可证 | 最后推送 |
|---|---|---|---|---|
| elasticsearch/elasticsearch | 77.2K | Java | NOASSERTION | |
| manticoresoftware/manticoresearch | 11.8K | C++ | GPL-3.0 | |
| mongodb/mongo | 28.2K | C++ | other | |
| surrealdb/surrealdb | 32.4K | Rust | NOASSERTION | |
| toshi-search/toshi | 4.3K | Rust | MIT | |
| huichen/wukong | 4.5K | Go | NOASSERTION | |
| ravendb/ravendb | 4K | C# | NOASSERTION | |
| ydb-platform/ydb | 4.7K | C++ | Apache-2.0 | |
| zincsearch/zincsearch | 17.9K | Go | NOASSERTION | |
| kinto/kinto | 4.4K | Python | NOASSERTION |