1. A method comprising: indexing at least one of data and metadata in at least one of online virtual machines (VMs), offline VMs, virtual applications, and snapshots thereof on at least one host server in a virtualization environment through a search architecture in the virtualization environment, the online VMs being VMs that are powered on, and the offline VMs being VMs that are powered off; and maintaining a database of the indexed at least one of the data and the metadata in the at least one of the online VMs, the offline VMs, the virtual applications, and the snapshots thereof to enable a comprehensive search result to a search query through the search architecture, the database being associated with the search architecture.