Managing enhanced write caching
View Patent ↗A method and system for use in managing enhanced write caching is disclosed. In at least one embodiment, the method and system comprises performing write-back caching operations using a write cache of a storage processor of a data storage system. A first cache page corresponding to a disk location is provided in the write cache. A host is allowed to write to a second cache page in the write cache corresponding to the same disk location. Both the first and second cache pages are maintained after acknowledging the write to the host.
1. A method for use in managing enhanced write caching, the method comprising:
storing data in sub-pages of a first page in a write cache, wherein the sub-pages of the first page correspond to a first storage location;
assigning a status to the data stored in the sub-pages of the first page, wherein the status relates to the validity of the data and/or whether the data has been stored persistently at the first storage location;
receiving a write I/O to write data to the first storage location;
storing the write data in sub-pages of a second page in the write cache, wherein the sub-pages of the second page correspond to the sub-pages of the first page;
performing a write-back caching operation acknowledging the write I/O; and
maintaining the first and second pages after acknowledging the write I/O;
wherein storing the write data in the sub-pages of the second page, comprises:
changing the status of the data stored in the sub-pages of the first page; and
assigning a status to the data stored in the sub-pages of the second page, wherein the assigned status is different to the changed status of the data stored in the sub-pages of the first page.
2. The method of claim 1 , further comprising:
providing a storage processor with a write cache for mirroring write operations.
3. The method of claim 1 , wherein the first page is associated with a page reference structure, wherein the page reference structure includes a dirty bit and a valid bit.
4. The method of claim 3 , wherein the dirty bit indicates whether the first page is dirty.
5. The method of claim 1 , wherein the first page includes information indicating a location of the second page.
6. The method of claim 1 , wherein the second page is included in a list of least recently used second cache pages.
7. The method of claim 1 , wherein each sub-page of the set of sub-pages is associated with a sector.
8. A system for use in managing enhanced write caching, the system comprising:
a processor comprising a program logic for carrying out the steps of:
first logic storing data in sub-pages of a first page in a write cache, wherein the sub-pages of the first page correspond to a first storage location;
second logic assigning a status to the data stored in the sub-pages of the first page, wherein the status relates to the validity of the data and/or whether the data has been stored persistently at the first storage location;
third logic receiving a write I/O to write data to the first storage location;
fourth logic storing the write data in sub-pages of a second page in the write cache, wherein the sub-pages of the second page correspond to the sub-pages of the first page;
fifth logic performing a write-back caching operation acknowledging the write I/O; and
sixth logic maintaining the first and second pages after acknowledging the write I/O;
wherein storing the write data in the sub-pages of the second page, comprises:
changing the status of the data stored in the sub-pages of the first page; and
assigning a status to the data stored in the sub-pages of the second page, wherein the assigned status is different to the changed status of the data stored in the sub-pages of the first page.
9. The system of claim 8 , further comprising:
seventh logic providing a storage processor with a write cache for mirroring write operations.
10. The system of claim 8 , wherein the first page is associated with a page reference structure, wherein the page reference structure includes a dirty bit and a valid bit.
11. The system of claim 10 , wherein the dirty bit indicates whether the first page is dirty.
12. The system of claim 8 , wherein the first page includes information indicating a location of the second page.
13. The system of claim 8 , wherein the second page is included in a list of least recently used second cache pages.
14. The system of claim 8 , wherein each sub-page of the set of sub-pages is associated with a sector.