Choosing a Search Engine on Zerops
Keywords
search, elasticsearch, meilisearch, typesense, qdrant, vector, full-text, choose search, which search engine
TL;DR
Use Meilisearch for simple full-text search. Use Elasticsearch for advanced queries or HA requirements. Use Qdrant for vector/AI search.
Decision Matrix
| Need | Choice | Why |
|---|---|---|
| Simple full-text search | Meilisearch (default) | Instant setup, typo-tolerant, frontend-safe keys |
| Advanced queries / HA | Elasticsearch | Cluster support, plugins, JVM tuning |
| Autocomplete + typo-tolerance | Typesense | Raft HA, CORS built-in, fast |
| Vector / AI similarity | Qdrant | gRPC + HTTP, automatic cluster replication |
Meilisearch (Default for Simple Search)
- Single-node only (no clustering)
- Port: 7700
- API keys:
masterKey(admin),defaultSearchKey(frontend-safe),defaultAdminKey(backend) - Production mode by default (no search preview dashboard)
Elasticsearch (Advanced / HA)
- Cluster support with multiple nodes
- Port: 9200 (HTTP only)
- Auth:
elasticuser with auto-generated password - Plugins via
PLUGINSenv var (comma-separated) - JVM heap:
HEAP_PERCENTenv var (default 50%) - Min RAM: 0.25 GB
Typesense (Fast Autocomplete)
- HA: 3-node Raft consensus
- API key via
apiKeyenv var (immutable after generation) - CORS enabled by default
- Recovery time: up to 1 minute during failover (503/500 auto-resolves)
- Data persisted at
/var/lib/typesense
Qdrant (Vector Search)
- Ports: 6333 (HTTP), 6334 (gRPC)
- API keys:
apiKey(full access),readOnlyApiKey(search only) - HA: 3 nodes with
automaticClusterReplication=trueby default - Internal access only — no public access available
Gotchas
- Meilisearch has no HA: Single-node only — for HA full-text search, use Elasticsearch or Typesense
- Qdrant is internal-only: Cannot be exposed publicly — access via your runtime service
- Typesense API key is immutable: Cannot change
apiKeyafter service creation - Elasticsearch plugins require restart: Changing
PLUGINSenv var needs service restart
See Also
- zerops://themes/services — Meilisearch, Elasticsearch, Typesense, Qdrant service cards and wiring