A Postgres extension that integrates Elasticsearch as a native index type for powerful text-search and analytics directly from SQL.
ZomboDB is a native PostgreSQL extension that integrates Elasticsearch's full-text search and analytics capabilities directly into the database. It enables developers to perform complex text searches, aggregations, and filtering on relational data using SQL while maintaining transactional correctness and compatibility with PostgreSQL's MVCC model. This eliminates the need to manage separate search and database systems, providing a unified approach to querying.
Database administrators and backend developers working with PostgreSQL who need advanced full-text search, analytics, and scalable text indexing beyond PostgreSQL's built-in capabilities. It is particularly suited for teams managing large datasets with extensive text content who want to leverage Elasticsearch's features without complex data synchronization pipelines.
Developers choose ZomboDB because it seamlessly integrates Elasticsearch as a native PostgreSQL index type, ensuring transactionally accurate search results and full SQL compatibility without requiring separate data management or asynchronous indexing processes. Its unique selling point is the ability to query Elasticsearch directly from PostgreSQL using a combination of ZQL, Elasticsearch QueryDSL, and standard SQL, all while handling indexing and synchronization automatically.
Making Postgres and Elasticsearch work together like it's 2023
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
As a native PostgreSQL extension, it allows creating indexes with standard SQL commands like CREATE INDEX USING zombodb, integrating directly with existing tables without rewriting application code.
Ensures MVCC-correct search results that align with PostgreSQL's transaction model, providing data consistency between database operations and search index updates.
Supports multiple query languages including ZQL, Elasticsearch QueryDSL JSON, and a query builder SQL syntax, enabling complex text searches and analytics directly in SQL.
Automatically generates Elasticsearch mappings for data types like JSON/JSONB and PostGIS geometries, reducing manual configuration and supporting nested object searches.
Limitations include only one ZomboDB index per table, no support for partial indexes or CREATE INDEX CONCURRENTLY, which can hinder scalability and flexibility in large-scale applications.
Requires both PostgreSQL and Elasticsearch to be set up and maintained, adding operational complexity and potential latency compared to using PostgreSQL's built-in full-text search alone.
Binary downloads are only available to sponsors, which may be a financial hurdle for small teams or open-source projects, forcing them to rely on more complex source installation.