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.
- Search
- Analytics
- Fast analytics over data lakes (i.e. S3) and table formats (i.e. Iceberg) with pg_analytics
- Column-oriented Postgres table access method
For a detailed roadmap, see the ParadeDB Roadmap for 2024 - 2025.
To get started, please visit our documentation.
ParadeDB and its extensions can be deployed in one of two ways:
- Docker image based on Postgres (see deployment instructions)
- Kubernetes Helm chart based on CloudNativePG (see deployment instructions)
For more information, including enterprise features and support, please contact us by email.
You can find prebuilt binaries for all ParadeDB extensions on Debian 12, Ubuntu 22.04 and 24.04, and Red Hat Enterprise Linux 8 and 9 for Postgres 14, 15, 16 and 17 in the GitHub Releases. ParadeDB supports all versions supported by the PostgreSQL Global Development Group, which includes PostgreSQL 13+, and you can compile the extensions for other versions of Postgres by following the instructions in the respective extension's README.
To quickly get a ParadeDB instance up and running, simply pull and run the latest Docker image:
docker run --name paradedb -e POSTGRES_PASSWORD=password paradedb/paradedb
This will start a ParadeDB instance with default user postgres
and password password
. 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 POSTGRES_USER=<user> \
-e POSTGRES_PASSWORD=<password> \
-e POSTGRES_DB=<dbname> \
-v paradedb_data:/var/lib/postgresql/data/ \
-p 5432:5432 \
-d \
paradedb/paradedb:latest
This will start a ParadeDB instance with non-root user <user>
and password <password>
. The -v
flag enables your ParadeDB data to persist across restarts in a Docker volume named 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';
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].