In reading about search engines, the top two areas that come up are related to (A) PageRank, which given a set of pages ranks them in order of eigenvector centrality based on patterns in web traffic, and (B) keywords/semantic-meaning encodings such as TF-IDF or word2vec.
I'm familiar with both of these areas, but I'm curious, when a search engine is queried with "running shoes", I can't imagine that the encodings of billions of webpages are retrieved and acted upon before ranking and presenting to the user. Is there some process where a query is mapped to a semi-refined structure of web pages in order to the limit the candidate pages retrieved?