- file formats, particularly the postings
- query evaluation strategy
- update strategy
I poked around in the source code a bit, but couldn't find these things.
- file formats, particularly the postings
- query evaluation strategy
- update strategy
I poked around in the source code a bit, but couldn't find these things.
What do you mean with postings?
The main index is split into 32 shards (there is also an additional news-index which is updated about every 5-10 minutes). Each shard is updated and queried seperately. The query actually runs 2/3 on a Windows server and 1/3 on a Linux server. The latter in Docker containers. I want to move everything to Linux over time.
Query has two phases. First only a rough - but fast - ranking is done. Then the top results of all shards are combined and completely re-ranked. This is basically a meta search engine hidden within.
First query phase is in src/searchservernew.dpr, and the second phase is in src/cgi/PostProcess.pas.