I have an Intel Linux server whose sole purpose is going to be searching one table with 2 million rows in it. Can you suggest the optimal configuration to get the best search performance from this read-only table. Should I create a ramdisk to hold the indexes or the table??
I am sorry I missed the conference last week but bronchitis is a pretty nasty ailment...
Using a ramdisk is not generally recommended. We have known some operating systems to be stupid about them, and they end up being slower than cached IO from a disk. Letting the OS cache disk buffers means that the most used ones will stay cached, for example if you have hot spots in the results, or frequent queries.
It may be worth comparing the performance of caching vs using tmpfs mounted on /dev/shm for the indexes, to see if it is worth the hassle of maintaining.