> ## Documentation Index
> Fetch the complete documentation index at: https://www.paradedb.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction to ParadeDB and pg_search

> Developer documentation for ParadeDB and the pg_search extension — installation, indexing, query syntax, and deployment guides.

<img src="https://mintcdn.com/paradedb/EnFi_28R6H66KMiU/images/paradedb_banner.png?fit=max&auto=format&n=EnFi_28R6H66KMiU&q=85&s=845d94ec06774ae7b42fd04029cf2972" alt="ParadeDB Banner" width="1200" height="630" data-path="images/paradedb_banner.png" />

ParadeDB is a search engine built into Postgres. It's built on the **pg\_search** extension, a single Postgres index for efficient vector/text search, BM25 scoring, filtering, and aggregates. Everything runs inside your system of record with Postgres' transactional guarantees, not in
a second system you have to keep in sync.

<Note>
  **ParadeDB Cloud is coming soon.** We're building a fully managed ParadeDB:
  first-class search from Postgres, with a developer experience to match. [Join
  the waitlist](https://www.paradedb.com/cloud).
</Note>

## Who is ParadeDB for?

You're likely a good fit for ParadeDB if any of the following sound like you:

1. **Postgres is your primary database** (managed or self-managed) and you'd rather build on it than around it.
2. You've **outgrown Postgres' built-in search** (`tsvector` or `pgvector`) and hit **performance bottlenecks** or **missing features** with vector/text search.
3. You're **evaluating a search engine** like Elasticsearch, but don't want to run (and continuously sync) a second system alongside your database.

## Why ParadeDB?

For teams that already use Postgres, ParadeDB is the simplest path to one Postgres for your application data, full-text search, vector retrieval, and aggregations.

### Zero ETL Required

Syncing Postgres with an external search engine like Elastic is a time-consuming, error-prone process that involves babysitting ETL pipelines
and debugging data inconsistencies. ParadeDB eliminates this class of problems because search, vectors, and aggregations live right next to your data.

pg\_search is a pure Postgres extension: no fork, no separate server. [Install it](/docs/deploy/self-hosted/extension) in your primary Postgres
and your search index stays current automatically: index updates happen in the same transaction as your writes, with no pipeline to
maintain. If you can't install extensions on your primary, see [other deployment options](/docs/deploy/overview).

### Search That Feels Like Postgres

In ParadeDB, a search query is just SQL. You use the operators and functions you already know, with full support for `JOIN`s, so there's
no need to denormalize your existing schema.

```sql theme={null}
-- Index a table for full-text search
CREATE INDEX search_idx ON mock_items
USING paradedb (id, description, rating)
WITH (key_field='id');

-- Rank by relevance, then filter and sort like any other query
SELECT description, pdb.score(id)
FROM mock_items
WHERE description ||| 'running shoes' AND rating > 2
ORDER BY score DESC
LIMIT 5;
```

ParadeDB accelerates standard SQL queries. That includes:

* **Text**: relevance-ranked full-text queries like the one above.
* **Aggregations**: the same index serves faceted search and aggregations, pushing filters and aggregates directly into the index instead
  of computing them afterward.
* **Vectors**: the ParadeDB index is a high-performance, drop-in compatible version with `pgvector`.

### One Index Behind Every Query

Behind the SQL is a single custom index: the **ParadeDB index**, built on [Tantivy](https://github.com/quickwit-oss/tantivy), a Rust search
library inspired by Lucene. It goes toe-to-toe with dedicated search engines on full-text performance, often coming out on top. [See how it's built →](/docs/welcome/architecture)

### As Reliable As Postgres

ParadeDB supports Postgres transactions and ACID guarantees. Data is searchable immediately after it's written, and durable thanks to
Postgres write-ahead logging. See [Guarantees](/docs/welcome/guarantees) for the details, including isolation levels and replication safety.

## ParadeDB vs. Alternatives

People usually compare ParadeDB to two other types of systems: OLTP databases like vanilla Postgres and search engines like Elastic.

|                             | **OLTP database**                                                   | **Search engine**                                                    | **ParadeDB**                                                                                                                                    |
| --------------------------- | ------------------------------------------------------------------- | -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| **Primary role**            | System of record                                                    | Search and retrieval engine                                          | System of record **and** search engine                                                                                                          |
| **Examples**                | Postgres, MySQL                                                     | Elasticsearch, OpenSearch                                            |                                                                                                                                                 |
| **Search features**         | Basic FTS (no BM25, weak ranking)                                   | Rich search features (BM25, fuzzy matching, faceting, hybrid search) | Rich search features (BM25, fuzzy matching, faceting, hybrid search)                                                                            |
| **Analytics features**      | Not an analytical DB (no column store, batch processing, etc.)      | Column store, batch processing, parallelization via sharding         | Column store, batch processing, parallelization via Postgres [parallel workers](/docs/documentation/performance-tuning/reads#raise-parallel-workers) |
| **Lag**                     | None in a single cluster                                            | At least network, ETL transformation, and indexing time              | None in a single cluster                                                                                                                        |
| **Operational complexity**  | Simple (single datastore)                                           | Complex (ETL pipelines, managing multiple systems)                   | Simple (single datastore)                                                                                                                       |
| **Scalability**             | Vertical scaling; horizontal scaling with read replicas or sharding | Horizontal scaling through sharding                                  | Vertical scaling; horizontal scaling with [read replicas](/docs/deploy/self-hosted/kubernetes) or [sharding with Citus](/docs/deploy/citus)               |
| **Language**                | SQL                                                                 | Custom DSL                                                           | Standard SQL with custom search operators                                                                                                       |
| **ACID guarantees**         | Full ACID compliance, read-after-write guarantees                   | No multi-document ACID transactions                                  | Full ACID compliance, read-after-write guarantees                                                                                               |
| **Update & delete support** | Built for fast-changing data                                        | Struggles with updates/deletes                                       | Built for fast-changing data                                                                                                                    |

## Production Readiness

ParadeDB launched out of the [Y Combinator (YC)](https://ycombinator.com) S23 batch and has run in production since December 2023.

[ParadeDB Community](https://github.com/paradedb/paradedb), the open-source version of ParadeDB, has been deployed over 1.5 million times via its Docker image, and the pg\_search extension has been installed over 250,000 times.
ParadeDB Enterprise, the durable and production-hardened edition of ParadeDB, powers core search and analytics use cases at enterprises ranging from Fortune 500s to fast-growing startups. A few
examples include:

* **Alibaba Cloud**, the largest Asia-Pacific cloud provider, uses ParadeDB to power search inside their data warehouse. [Case study available](https://www.paradedb.com/customers/case-study-alibaba).
* **Bilt Rewards**, a rent payments technology company that processed over \$36B in payments in 2024. [Case study available](https://www.paradedb.com/customers/case-study-bilt).
* **Modern Treasury**, a financial technology company that automates the full cycle of money movement. [Case study available](https://www.paradedb.com/customers/case-study-modern-treasury).
* **Span**<sup>1</sup>, one of the fastest-growing AI developer productivity platforms.
* **TCDI**<sup>1</sup>, a giant in the legal software and litigation management space.

*1. Case study coming soon.*

## Next Steps

You're now ready to jump into our guides.

<CardGroup cols={2}>
  <Card title="Getting Started" icon="forward-fast" href="/docs/documentation/getting-started/install">
    Get started with ParadeDB in under five minutes.
  </Card>

  <Card title="Architecture" icon="diagram-project" href="/docs/welcome/architecture">
    Learn how ParadeDB is built.
  </Card>

  <Card title="Reference" icon="magnifying-glass" href="/docs/documentation/full-text/overview">
    API reference for full text search and analytics.
  </Card>

  <Card title="Deploy" icon="server" href="/docs/deploy/overview">
    Deploy ParadeDB as a Postgres extension or standalone database.
  </Card>
</CardGroup>
