1. A method for backing up an index, the method comprising: creating a staged copy of an index to be backed up, the index having multiple stages, wherein the stages are handled asynchronously through a message queue; segmenting the staged copy of the index; storing the segments in a pre-selected location; and performing additional indexing to the staged copy of the index based on information from one or more replay logs to keep the indexes up to date within a pre-selected amount of time.