A system including processor and memory for a thorough search of a distributed document database, comprising:means for receiving a search request including search parameters and a search starting point; means for adding a document found at the search starting point to a processing list; means for determining whether a next document in the processing list is a plain text document or a compressed do