Beyond the suggestions already made, i would add: a) being really aggressive about stop words can help keep the index size down, which can help reduce the amount of memory needed to scan the term lists
b) faceting w/o any caching is likelye going to be too slow to be acceptible. c) don't sort on anything except score. -Hoss