Postgres for Search and Analytics
ParadeDB is an Elasticsearch alternative built on Postgres. We're modernizing the features of Elasticsearch's product suite, starting with real-time search and analytics.
ParadeDB is currently in Public Beta. Star and watch this repository to get notified of updates.
- Search
- Full-text search with BM25 with pg_search
- Dense and sparse vector search with pgvector & pgvectorscale
- Hybrid search
- Analytics
- An analytical query engine over any object store or table format with pg_lakehouse
- Column-oriented table access method for fast analytics inside Postgres
- High-volume data/Kafka ingest
- Self-Hosted ParadeDB
- Docker image based on bitnami/postgresql & deployment instructions
- Kubernetes Helm chart & deployment instructions
- Specialized Workloads
- Support for geospatial data with PostGIS
To get started, please visit our documentation.
ParadeDB and its extensions are available as commercial software for installation on self-hosted Postgres deployment and via Docker and Kubernetes as standalone images. For more information, including enterprise features and support, please contact us by email.
You can find prebuilt binaries for all ParadeDB extensions on Debian 11, Debian 12, Ubuntu 22.04, and Red Hat Enterprise Linux 9 for Postgres 14, 15 and 16 in the GitHub Releases. We officially support Postgres 12 and above, and you can compile the extensions for other versions of Postgres by following the instructions in the respective extension's README.
For official support on non-Debian-based systems, please contact us by email.
To quickly get a ParadeDB instance up and running, simply pull and run the latest Docker image:
docker run --name paradedb paradedb/paradedb
This will start a ParadeDB instance with default user postgres
and password postgres
. You can then connect to the database using psql
:
docker exec -it paradedb psql -U postgres
To install ParadeDB locally or on-premise, we recommend using our docker-compose.yml
file. Alternatively, you can pass the appropriate environment variables to the docker run
command, replacing the <> with your desired values:
docker run \
--name paradedb \
-e POSTGRESQL_USERNAME=<user> \
-e POSTGRESQL_PASSWORD=<password> \
-e POSTGRESQL_DATABASE=<dbname> \
-e POSTGRESQL_POSTGRES_PASSWORD=<superuser_password> \
-v paradedb_data:/bitnami/postgresql \
-p 5432:5432 \
-d \
paradedb/paradedb:latest
This will start a ParadeDB instance with non-root user <user>
and password <password>
. The superuser_password
will be associated with superuser postgres
and is necessary for ParadeDB extensions to install properly.
The -v
flag enables your ParadeDB data to persist across restarts in a Docker volume named paradedb_data
. The volume needs to be writable by a user with uid = 1001
, which is a security requirement of the Bitnami PostgreSQL Docker image. You can do so with:
sudo useradd -u 1001 <user>
sudo chown <user> </path/to/paradedb_data>
You can then connect to the database using psql
:
docker exec -it paradedb psql -U <user> -d <dbname> -p 5432 -W
ParadeDB collects anonymous telemetry to help us understand how many people are using the project. You can opt out of telemetry using configuration variables within Postgres:
ALTER SYSTEM SET paradedb.pg_search_telemetry TO 'off';
ALTER SYSTEM SET paradedb.pg_lakehouse_telemetry TO 'off';
ParadeDB is also available for Kubernetes via our Helm chart. You can find our Helm chart in the ParadeDB Helm Chart GitHub repository or download it directly from Artifact Hub.
At the moment, ParadeDB is not available as a managed cloud service. If you are interested in a ParadeDB Cloud service, please let us know by joining our waitlist.
If you're missing a feature or have found a bug, please open a GitHub Issue.
To get community support, you can:
- Post a question in the ParadeDB Slack Community
- Ask for help on our GitHub Discussions
If you need commercial support, please contact the ParadeDB team.
We welcome community contributions, big or small, and are here to guide you along the way. To get started contributing, check our first timer issues or message us in the ParadeDB Community Slack. Once you contribute, ping us in Slack and we'll send you some ParadeDB swag!
For more information on how to contribute, please see our Contributing Guide.
This project is released with a Contributor Code of Conduct. By participating in this project, you agree to follow its terms.
Thank you for helping us make ParadeDB better for everyone ❤️.
ParadeDB is licensed under the GNU Affero General Public License v3.0 and as commercial software. For commercial licensing, please contact us at [email protected].