I am in the process of designing a new system.
There will be a long list of words such as
-word table
word_id integer
word varchar
special boolean
Some "special" words are used to determine if some work is to be done and
will be what we care the most for one type of operation.
Will it be more effective to have a partial index 'where is special' or to
copy those special emails to their own table?
The projected number of non special words is in the millions while the
special ones will be in the thousands at most (under 10K for sure).
My personal view is that performance should be pretty much equal, but one of
my co-worker's believes that the smaller table would likely get cached by
the OS since it would be used so frequently and would perform better.
In both instances we would be hitting an index of exactly the same size.
The searches will be 'where word = <variable> and is special'