1. A method for application aware de-duplication (de-dup) of data blocks on virtualized storage arrays in a storage area network (SAN), comprising: enabling a de-dup agent on each of one or more components of the SAN, wherein the one or more components of the SAN comprises a host device, a data path module (DPM), and virtualized storage arrays; creating a master list of metadata associated with indexed data and storing the masterlist in the virtualized storage arrays; creating one or more sublists of metadata from the masterlist and storing the one or more sublists in remaining one or more components of the SAN; upon receiving a write request from an application residing in the host device, determining whether a data block being written has an entry in the sublist stored in the host device; and if so, replacing the data block with a pointer indicating where the data block is residing in the virtualized storage arrays.