Depends on your word list. You could store the in-record location(s) of the word as well; then, when doing a phrase search, you can intersect the sets for each word by record and then check for consecutive locations in the correct order. This is, AFAIK and at least roughly, the way all of the big web search engines work.