Search Engine (Full Text Search)
About
Full-text search is a battle between:
- precision—returning as few irrelevant documents as possible
- and recall—returning as many relevant documents as possible.
While matching only the exact words that the user has queried would be precise, it is not enough. We would miss out on many documents that the user would consider to be relevant. Instead, we need to spread the net wider, to also search for words that are not exactly the same as the original but are related (word stem, synonym ?)
Keywords / Search term
keyword are the search term filled in the search form known also as search term
OpenSearch
opensearch is a system that permits to make your internal search engine available publicly. Visitors can then searched directly from the browser.
Type
There are three types of search intent:
- Informational (to find information)
- Navigational (to locate a specific website)
- Transactional (to make a purchase)
List
the supported Google list, you can also add on into your analytics account
Database Modeling
See What are models of text in NLP? (Natural Language, Text Modeling).
Technology
Server
Lucene is the most known full text search library that powers:
- …
Web Services
Client
Client Side Search. At its most basic functionality, a search component will simply provide an index file which is no more than a JSON file containing the content of all pages.
- https://fusejs.io/ - Lightweight fuzzy-search, in JavaScript - 8459
- https://lunrjs.com/ (implemented in mkdocs search) - 6100 - A bit like Solr, but much smaller and not as bright