Database
Simple, built-in, default keyword-based search
The default search provider, which uses simple database-driven keyword matching. This requires no additional configuration or infrastructure and works out of the box.
It searches for keywords in titles, descriptions, and content (of threads, replies and pages) using simple keyword matching via SQL queries against the database.
SEARCH_PROVIDER=database
# or, with SEARCH_PROVIDER not set at all, this is the default.When to use this
A small community wiki with a few hundred library pages and discussion threads. Members search occasionally for specific topics or keywords. The community is hosted on a single server with a SQLite or PostgreSQL database.
Upsides:
- Getting started quickly without additional dependencies
Limitations:
- Limited query capabilities compared to full-text search engines
- Performance degrades with content volume
For a low-effort upgrade from database search, Bleve is the recommended approach.
Technical details
The database search provider is literally just a ... where xyz ilike '%<query>%'. This involves a full table scan so if you're planning to operate a large (over 100k threads, 1m replies, etc) community, this search provider will degrade as your data grows.