Method and system for writing data to and read data from persistent storage
First Claim
Patent Images
1. A method for managing data stored in a persistent storage, the method comprising:
- receiving a write request comprising a logical address and a first datum;
storing a table entry corresponding to the logical address in a primary cache entry table;
updating a bitmap entry corresponding to the logical address;
storing the first datum in an external memory, wherein the external memory is operatively connected to the persistent storage;
transmitting a copy of the first datum to the persistent storage;
receiving a write request comprising a second logical address and second datum;
storing a second table entry corresponding to the second logical address in an overflow table;
updating a bitmap entry corresponding to the second logical address;
storing the second datum in the external memory; and
transmitting a copy of the second datum to the persistent storage.
8 Assignments
0 Petitions
Accused Products
Abstract
In general, embodiments of the technology relate to a method and system for storing and reading data from persistent storage. More specifically, embodiments of the technology relate to a method and system for storing data in persistent storage, where the data written to the persistent storage is not immediately accessible in the persistent storage (i.e., during the inaccessibility period). In such instances, embodiments of the technology provide a method and system to enable the storage system to service read requests for the data using a primary cache entry table (PCET) and an overflow table.
68 Citations
18 Claims
-
1. A method for managing data stored in a persistent storage, the method comprising:
-
receiving a write request comprising a logical address and a first datum; storing a table entry corresponding to the logical address in a primary cache entry table; updating a bitmap entry corresponding to the logical address; storing the first datum in an external memory, wherein the external memory is operatively connected to the persistent storage; transmitting a copy of the first datum to the persistent storage; receiving a write request comprising a second logical address and second datum; storing a second table entry corresponding to the second logical address in an overflow table; updating a bitmap entry corresponding to the second logical address; storing the second datum in the external memory; and transmitting a copy of the second datum to the persistent storage. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A storage module, comprising:
-
a field programmable gate array (FPGA) comprising internal memory; an external memory operatively connected to the FPGA; and a storage unit operatively connected to the FPGA and comprising persistent storage, wherein the FPGA is configured to; receive a write request comprising a logical address and a first datum; store a table entry corresponding to the logical address in a primary cache entry table in the internal memory; update, in a bitmap stored in the external memory, a bitmap entry corresponding to the logical address; store the first datum in the external memory; transmit a copy of the first datum to the persistent storage; receive a write request comprising a second logical address and second datum; store a second table entry corresponding to the second logical address in an overflow table; update a bitmap entry corresponding to the second logical address; store the second datum in the external memory; and transmit a copy of the second datum to the persistent storage. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
Specification