MarginaliaSearch/code/services-core/search-service
Viktor a278fc6296
Increase search result relevance (#8)
* Increase accuracy of the position bits.
* Increase their width to 56.
* Use a rolling position scheme for bits 16-56 to increase the average accuracy.
* Result ranking overhaul
* Optimized queries
* BM25 in the index service's ranking
* Make gui less jank
* Javadocs for ranking parameters.
2023-04-07 20:18:08 +02:00
..
src Increase search result relevance (#8) 2023-04-07 20:18:08 +02:00
build.gradle Move database to a separate module 2023-03-25 15:26:17 +01:00
readme.md Fix broken diagram links after doc/ restructuring. 2023-03-25 16:32:10 +01:00

Search Service

This service handles search traffic and is the service you're most directly interacting with when visiting search.marginalia.nu.

It interprets a "human" query and translates it into a request that gets passed into to the index service, which finds related documents, which this service then ranks and returns to the user.

image

Central classes

  • SearchService receives requests and delegates to the appropriate services.

  • CommandEvaluator interprets a user query and acts upon it, dealing with special operations like browse: or site:.

  • QueryFactory parses a search query into a machine readable query specification.

  • SearchQueryIndexService passes a parsed search query to the index service, and then decorates the search results so that they can be rendered.

See Also