How Magento Catalog Search works internally
Magento uses a very strong kind of catalog search functionality that is relaiable,efficient and search oriented . Behind the scene it uses a strong mechanism. Search is based on indexing that we do from either admin section (URL) or from shell (URL). Today i have invested a lot of time to know their internal workflow behind the search story. It was only due to following question
*. How searching works in magento
*. What is the importance of indexing for catalog search
*. How Catalog search works
Before moving forward into internal workflow we must know magento creates the product index into their own database table “catalogsearch_fulltext” As soon as we add/edit or reindex the prduct it autmatically creates index into their database.
Below are the story:
Search any particular term suppose “Swift” from the magento search box. Now magento calls a unique kind of URL like “http://site.com/index.php/catalogsearch/result/?q=swift”
As soon as this url gets called then it creates a database entry for search query into “catalogsearch_query ” table Here it stores query text and create a unique query id from there . This auto incremented query id and their results has been used and shown to admin section into “search term” section
Now whatever result it found based on that particular id is stored under “catalogsearch_result” table
On this table relevence is one more good thing. You can filter your search result based on your relevance as well.