• I don't know how much overhead full text has, but we implemented our own keyword table to facilitate predictive search on products.

    I found a public domain Dictionary list of English words, separated out root-words and all their variations, put the root words in a Dictionary table, the rest in an Alias table, added an Alias Override table allowing the Client to create additional Alias words (e.g. competitors product names matching their own) and to also allow the Client to disallow Dictionary Alias words in some circumstance.

    We split the product description into individual words, replace any via the Alias Tables (e.g. "Cars" becomes "Car"), de-dupe them and store them against the product.

    If Client has added an alias of "Truck" then a user searching for "Truck" will be shown anything with the keyword "Car"

    Client can disable / add Keywords / Aliases on a product-by-product basis. They monitor popular search keywords to hand tune this for anything which is trending.