Practical search implementation.
WHAT OPTIONS EXIST
Database full-text search, adequate for modest needs Dedicated search engines, self-hosted Managed search services Vector databases, for semantic search
WHAT TO START WITH
The database's own capability.
WHY
It requires no additional infrastructure, and is sufficient for many applications.
WHEN TO MOVE BEYOND IT
Substantial volume Complex relevance requirements Faceting and aggregation Typo tolerance
WHAT TO DESIGN
What is searchable How results are ranked What filters and facets exist
WHAT TO ALWAYS PROVIDE
Handling of typographical errors Sensible behaviour for no results Visible indication of what was searched and what filters apply
WHAT TO DO ABOUT NO RESULTS
Suggest alternatives, relax a filter, or explain.
WHAT TO PUT IN THE ADDRESS
The query and every filter, so results can be shared and returned to.
WHAT TO MEASURE
Queries returning nothing Queries where nothing is clicked What people search for that you do not have
WHY THAT LAST ONE MATTERS MOST
It tells you what is missing from your product.
WHAT TO REVIEW
Search logs, regularly.