One option is to distribute the indexing process. More complex one can be distribute search operations. I am not too familiar with Grid Gain to tell you exactly where it fits. For example, are jobs run on Grid gain fault tolerant and so on.
GridGain can certainly be used for this type of job. In the first approximation, think of grid as a bottomless thread pool - and see how you could have utilize it. This approach usually yields number of opportunities where GridGain can significantly help.