DETAILED ACTION
The present Office Action is in response to Applicant Arguments/Remarks and amended claims filed on 01/06/2026. Claims 1, 7, and 13 have been amended. Claims 6, 11, and 12 have been previously cancelled. Claims 15-23 have been added. Claims 1-5, 7-10, 13-23 remain pending in the application.
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Priority
Acknowledgment is made of applicant’s claim for foreign priority under 35 U.S.C. 119 (a)-(d). The certified copy has been filed in parent Application No.CN202210239000.1, filed on 03/11/2022.
Response to Amendments and Arguments
Applicant’s amendments and remarks have been fully considered, with the Examiner’s response set forth below.
(1)In view of the amendments, rejections of claims 7-10 and 19-23 under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, have been withdrawn.
(2) Applicant contends that, regarding claim 1, “Laier relates to implementations for cluster wide unique and persistent locking cookie, rather than a method for processing access to object storage. That is, the application scenarios of Li and amended claim 1 are different”. The Examiner respectfully disagrees.
Applicant argues that Laier relates to cluster wide locking cookies rather than object storage access. However, differences in intended use or field of application do not distinguish the claimed invention from the prior art where the claimed structural and functional limitations are taught. In addition to cluster wide locking cookies, Laier also teaches, for example, file metadata mapping, cache layer, storage layer, and cloud object, which are all relevant to the claimed invention.
(3) Applicant contends that, regarding claim 1, “Laier merely discloses a mapping relationship between logical block numbers and the physical location of the data stored, rather than a mapping relationship between attribute information of an object in an object storage device and attribute information of a data management unit in a host system of a user host. In fact, Laier mentions nothing about an object in an object storage device and a data management unit, which is the smallest unit for data management, and thus fails to disclose the relevant features as recited in claim 1, such as establishing a first mapping relationship between first attribute information and second attribute information in advance, wherein the first attribute information is attribute information of an object in an object storage device, and the second attribute information is attribute information of a data management unit in a host system of the user host, wherein the data management unit is the smallest unit for data management in the host system of the user host, data of at least one data management unit is stored in at least one of a server-side cache and a local cache of the user host, and the data of the at least one data management unit is data of a corresponding object; in response to reception of a first data read request, determining a data management unit corresponding to an object to be read by the first data read request according to the first mapping relationship; determining a logical block address of the data management unit; and accessing the server-side cache or the local cache of the user host to acquire data of the logical block address based on an access protocol of block storage and the logical block address”. The Examiner respectfully disagrees.
Laier teaches a data structure (an inode) that stores metadata associated with files and directories, including file size, file type, file location, mappings to cloud data objects, and pointers to cloud metadata objects ([0025]). Paragraph [0037] further discloses that the metadata may include references to an external storage location and cloud object mapping information. Thus, Laier establishes a mapping relationship between a location of an object (attribute information of an object) and file-level attributes such as file type and file location (attribute information of a data management unit). Additionally, Laier discloses that a node (e.g. a user host) implements a file system and file data is stored in both a cache layer and a storage layer. A person of ordinary skill in the art would therefore recognize that a file represents the smallest unit of data management in Laier’s system. Accordingly, Laier teaches the claim limitations identified in the above argument as set forth in claim analysis section below.
(4) Applicant’s arguments are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
(5) Another iteration of claim analysis has been made. Refer to the corresponding sections of the claim analysis below for details.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-3, 5, 13-16, and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Laier et al. (US 2019/0129975), hereinafter Laier in view of Li (CN111,143,417), hereinafter Li, and further in view of Peng et al. (US2018/0189185), hereinafter Peng.
Regarding claims 1, 13, and 14, taking claim 1 as exemplary, Laier teaches a method for processing access to object storage, applied to a user host (Laier, [0024], Clients can connect to any one node among the cluster of nodes and access data stored within the cluster), and comprising:
establishing a first mapping relationship between first attribute information and second attribute information in advance (Laier, [0025], The term “inode” as used herein refers to in-memory representation of on-disk data structures that may store information, or meta-data, about files and directories, such as … mappings to cloud data objects, pointers to a cloud metadata objects; [0026], The LIN tree maps a LIN, a unique identifier for a file, to a set of inodes), wherein the first attribute information is attribute information of an object in an object storage device (Laier, [0025], mappings to cloud data objects, pointers to a cloud metadata objects), and the second attribute information is attribute information of a data management unit in a host system of the user host (Laier, [0025], store information, or meta-data, about files; [0024], one or more nodes that operate together to form a distributed file system … Clients can connect to any one node among the cluster of nodes and access data stored within the cluster), wherein the data management unit is the smallest unit for data management in the host system of the user host (Laier, [0009], file in the file system; [0024], one or more nodes that operate together to form a distributed file system), data of at least one data management unit is stored in at least one of a server-side cache and/or a local cache of the user host (Laier, [0032], the file data in the cache overlay layer; [0034], the cache overlay layer can be targeted to faster access memory), and the data of the at least one data management unit is data of a corresponding object (Laier, [0031], It can be appreciated that data can be filled from the storage layer into the cache overlay layer when necessary to process read operations or write operations targeted to the cache overlay layer; [0037], In another example, raw file data can be tiered to external storage … Metadata stored within the storage layer inode can contain references to an external storage location … cloud object mapping information, cloud metadata objects (“CMOs”), cloud data objects (“CDOs”), etc. When a file system operation operates to fill data stored in an external storage location form the storage layer into the cache overlay layer, the metadata within the storage layer inode can be used to retrieve the data from the external storage location and then storing the retrieved data in the cache overlay layer for access by file system clients; Note – cloud data object can be retrieved from an external storage location and stored in cache);
in response to reception of a first data read request (Laier, [0033], if the file system client is requesting to read data), determining a data management unit corresponding to an object to be read by the first data read request according to the first mapping relationship (Laier, [0031]; [0032], The file system client can perform operations (e.g., reads and writes as depicted in FIG. 1) that are targeted to a file. Using the LIN tree, a process can find the cache overlay inode and the storage layer inode associated with the file; [0037]);
determining a logical block address of the data management unit (Laier, [0004], a unique inode of the file can store metadata related to the file and block locations within specific storage disks where the file data is stored).
Laier teaches determining a data management unit to be read by a first read request, nevertheless, Laier does not explicitly teach determining a data management unit corresponding to an object to be read by the first data read request, as claimed. Laier teaches a block location attribute information is included in an inode mapping, nevertheless, Laier does not explicitly teach the block location attribute information is a logical block address, as claimed. Laier also does not explicitly teach accessing the server-side cache or the local cache of the user host to acquire data of the logical block address based on an access protocol of block storage and the logical block address as claimed.
However, Laier in view of Li teaches determining a data management unit corresponding to an object to be read by the first data read request according to the first mapping relationship (Li, [0067]-[0069], receiving a data access request sent by a client … Calling a pre-established first mapping relationship; the first mapping relationship is a mapping relationship between object storage data and local cache data … judging whether the to-be-accessed data corresponding to the data access request exists in the local cache through the first mapping relationship; Laier, [0037]);
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified Laier incorporate teachings of Li to determine whether a data unit in a cache corresponds to a requested object. A person of ordinary skill in the art would have been motivated to combine the teachings of Laier with Li because it improves efficiency and flexibility of the storage system disclosed in Laier by allowing the storage system to determine whether a cloud object is stored in a cache memory.
The combination of Laier does not explicitly teach a logical block address of a data management unit and accessing the server-side cache or the local cache of the user host to acquire data of the logical block address based on an access protocol of block storage and the logical block address as claimed.
However, the combination of Laier in view of Peng teaches a logical block address of a unit data in a cache (Peng, [0018], The media cache 108 may be various types of storage media, such as NAND flash memory … the mapping of logical block addresses to the physical addresses on the media cache 108);
accessing the server-side cache or the local cache of the user host to acquire data of the logical block address based on an access protocol of block storage and the logical block address (Peng, [0033], Operation 410 then reads data from a media cache that corresponds to logical block addresses corresponding to the band selected in operation 408).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified the combination of Laier to incorporate teachings of Peng to read data from a cache using logical block address. A person of ordinary skill in the art would have been motivated to combine the teachings of Laier with Peng because it improves efficiency and performance of the storage system disclosed in the combination of Laier by reading data from a cache directly using logical block address.
Claims 13 and 14 have similar limitations as claim 1 and they are rejected for the similar reasons. Furthermore, regarding claim 13, Laier teaches a computing device, configured on a user host (Laier, [0024], Clients can connect to any one node among the cluster of nodes and access data stored within the cluster) and comprising: a memory and a processor; wherein the memory is configured to store computer executable instructions, and the processor is configured to execute the computer executable instructions (Laier, [0085]).
Regarding claims 2 and 15, taking claim 2 as exemplary, the combination of Laier teaches all the features with respect to claim 1 as outlined above. The combination of Laier further teaches the method according to claim 1, wherein the host system of the user host is a local file system, and the data management unit is a file (Laier, [0004], When a client or other file system process desire access to a file), the establishing the first mapping relationship between the first attribute information and the second attribute information in advance, comprises: mapping the attribute information of the object in the object storage device to attribute information of the file according to directory hierarchy to acquire a set of the first mapping relationship (Laier, [0025], The term “inode” as used herein refers to in-memory representation of on-disk data structures that may store information, or meta-data, about files and directories … mappings to cloud data objects, pointers to a cloud metadata objects, etc).
Claim 15 has similar limitations as claim 2 and is rejected for the similar reasons.
Regarding claims 3 and 16, taking claim 3 as exemplary, the combination of Laier teaches all the features with respect to claim 1 as outlined above. The combination of Laier further teaches the method according to claim 1, wherein the accessing the server-side cache or the local cache of the user host to acquire the data of the logical block address based on the access protocol of the block storage and the logical block address, comprises: accessing the local cache of the user host to acquire the data of the logical block address based on the access protocol of the block storage and the logical block address (); and in a condition that the data of the logical block address is not acquired from the local cache of the user host, accessing the server-side cache to acquire the data of the logical block address based on the access protocol of the block storage and the logical block address (Laier, [0024], [0024], The term “cluster of nodes” refers to one or more nodes that operate together to form a distributed file system … if a client is connected to a node, and that client requests data that is not stored locally within the node, the node can then load the requested data from other nodes of the cluster in order to fulfill the request of the client; [0026], [0031], Peng, [0033]; Li [0067]-[0069]).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified Laier incorporate teachings of Li to determine whether a data unit in a cache corresponds to an object is to be read. A person of ordinary skill in the art would have been motivated to combine the teachings of Laier with Li because it improves efficiency and flexibility of the storage system disclosed in Laier by allowing the storage system to determine whether a cloud object is stored in a cache memory.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified the combination of Laier to incorporate teachings of Peng to read data from a cache using logical block address. A person of ordinary skill in the art would have been motivated to combine the teachings of Laier with Peng because it improves efficiency and performance of the storage system disclosed in the combination of Laier by reading data from a cache directly using logical block address.
Claim 16 has similar limitations as claim 3 and is rejected for the similar reasons.
Regarding claims 5 and 18, taking claim 5 as exemplary, the combination of Laier teaches all the features with respect to claim 1 as outlined above. The combination of Laier further teaches the method according to claim 1, wherein the accessing the server-side cache or the local cache of the user host to acquire the data of the logical block address based on the access protocol of the block storage and the logical block address, comprises: accessing the local cache of the user host to acquire the data of the logical block address based on the access protocol of the block storage and the logical block address; wherein the method further comprises: in a condition that the data of the logical block address is not acquired from the local cache of the user host, issuing access to the object storage device to acquire data of the object to be read by the first data read request; and placing the acquired data into the local cache of the user host (Laier, [0029], the storage layer associated with the storage layer inode can facilitate tiering of file data to an external repository; [0033], if the file system client is requesting to read data that is currently empty in the cache overlay layer, a process can be started to fill data from the storage overlay layer into the cache overlay layer for the requested blocks; [0041], File A is associated with a unique file LIN that references both a unique cache overlay layer inode and a unique storage layer inode … It can also be appreciated that metadata stored within the storage layer inode of File A can describe any necessary external tier information that can locate the data in the external storage location such as a CDO or CMO information as referenced in the incorporated references).
Claim 18 has similar limitations as claim 5 and is rejected for the similar reasons.
Claim(s) 4 and 17 is/are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Laier, Li, and Peng as applied to claims 3 and 16 respectively above, and further in view of Kavali et al. (US 2022/0374431), hereinafter Kavali.
Regarding claims 4 and 17, taking claim 4 as exemplary, the combination of Laier teaches all the features with respect to claim 3 as outlined above. The combination of Laier does not explicitly teach the method according to claim 3, further comprising: placing the data acquired from the server-side cache into the local cache of the user host, as claimed.
However, the combination of Laier in view of Kavali teaches the method according to claim 3, further comprising: placing the data acquired from the server-side cache into the local cache of the user host (Kavali, [0006], the method can include obtaining the first data segment that is present in a second cache associated with a second worker node. In these embodiments, the first executor can determine that the first data segment is not present in the first cache associated with the first worker node … The first worker node can then copy the data segment from the second worker node to the first cache associated with the first worker node; Laier, [0024], if a client is connected to a node, and that client requests data that is not stored locally within the node, the node can then load the requested data from other nodes of the cluster in order to fulfill the request of the client).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified the combination of Laier to incorporate teachings of Kavali to copy data from a cache associated with a second node to a cache associated with a first node. A person of ordinary skill in the art would have been motivated to combine the teachings of the combination of Laier with Kavali because it improves data consistency of the storage system disclosed in the combination of Laier by maintaining data coherence across different caches.
Claim 17 has similar limitations as claim 4 and is rejected for the similar reasons.
Claim(s) 7, 19, and 23 is/are rejected under 35 U.S.C. 103 as being unpatentable over Li (CN111,143,417), hereinafter Li in view of Laier et al. (US 2019/0129975), hereinafter Laier, and further in view of Peng et al. (US2018/0189185), hereinafter Peng.
Regarding claims 7, 19, and 23, taking claim 7 as exemplary, Li teaches a method for processing access to object storage, applied to a server-side, and comprising:
in response to reception of a second data read request based on an access protocol of a block storage from a user host, determining a logical block address of data to be read according to the second data read request (Li, [0009]-[0015], Receive data access requests sent by clients … Determining, by means of the second mapping relationship, a data reading address of the cloud storage corresponding to the data access request);
wherein the second data read request is a request issued by the user host by, in response to reception of a first data read request, determining a data management unit corresponding to an object to be read by the first data read request according to a first mapping relationship, determining the logical block address of the data management unit, and determine that the data of the logical block address is not acquired from a local cache of the user host;
wherein the first mapping relationship is a mapping relationship between first attribute information and second attribute information, the first attribute information is attribute information of an object in an object storage device, and the second attribute information is attribute information of a data management unit in a host system of the user host, wherein data of at least one data management unit is stored in a server-side cache, and the data of the at least one data management unit is data of a corresponding object;
reading data of the logical block address from the server-side cache by using the logical block address; and
returning the data to the user host (Li, [0062], Return the data to be accessed to the client in an object storage format).
Li does not explicitly teach a protocol of a block storage and logical block address; wherein the second data read request is a request issued by the user host by, in response to reception of a first data read request, determining a data management unit corresponding to an object to be read by the first data read request according to a first mapping relationship, determining the logical block address of the data management unit, and determine that the data of the logical block address is not acquired from a local cache of the user host; wherein the first mapping relationship is a mapping relationship between first attribute information and second attribute information, the first attribute information is attribute information of an object in an object storage device, and the second attribute information is attribute information of a data management unit in a host system of the user host, wherein data of at least one data management unit is stored in a server-side cache, and the data of the at least one data management unit is data of a corresponding object; reading data of the logical block address from the server-side cache by using the logical block address, as claimed.
However, Li in view of Laier teaches wherein the second data read request is a request issued by the user host (Laier, [0024], Clients can connect to any one node among the cluster of nodes and access data stored within the cluster) by, in response to reception of a first data read request, determining a data management unit corresponding to an object to be read by the first data read request according to a first mapping relationship (Laier, [0025], The term “inode” as used herein refers to in-memory representation of on-disk data structures that may store information, or meta-data, about files and directories, such as … mappings to cloud data objects, pointers to a cloud metadata objects; [0031]; [0032], The file system client can perform operations (e.g., reads and writes as depicted in FIG. 1) that are targeted to a file. Using the LIN tree, a process can find the cache overlay inode and the storage layer inode associated with the file; [0037]; Li, [0067]-[0069], s202, s203), determining the logical block address of the data management unit (Laier, [0004], [0004], a unique inode of the file can store metadata related to the file and block locations within specific storage disks where the file data is stored), and determine that the data of the logical block address is not acquired from a local cache of the user host (Laier, [0024], The term “cluster of nodes” refers to one or more nodes that operate together to form a distributed file system … if a client is connected to a node, and that client requests data that is not stored locally within the node, the node can then load the requested data from other nodes of the cluster in order to fulfill the request of the client; [0085], Input/output interface 940 can enable node 900 to communicate with other nodes);
wherein the first mapping relationship is a mapping relationship between first attribute information and second attribute information (Laier, [0025], The term “inode” as used herein refers to in-memory representation of on-disk data structures that may store information, or meta-data, about files and directories, such as … mappings to cloud data objects, pointers to a cloud metadata objects; [0026], The LIN tree maps a LIN, a unique identifier for a file, to a set of inodes), the first attribute information is attribute information of an object in an object storage device (Laier, [0025], mappings to cloud data objects, pointers to a cloud metadata object), and the second attribute information is attribute information of a data management unit in a host system of the user host (Laier, [0025], store information, or meta-data, about files; [0024], one or more nodes that operate together to form a distributed file system … Clients can connect to any one node among the cluster of nodes and access data stored within the cluster), wherein data of at least one data management unit is stored in a server-side cache (Laier, [0023], the term “node” refers to a physical computing device, including … servers; [0089], file data may be cached in memory 910; Note – each of the nodes/servers has a local cache; Li, [0010], local cache data), and the data of the at least one data management unit is data of a corresponding object (Laier, [0031], It can be appreciated that data can be filled from the storage layer into the cache overlay layer when necessary to process read operations or write operations targeted to the cache overlay layer; [0037], In another example, raw file data can be tiered to external storage … Metadata stored within the storage layer inode can contain references to an external storage location … cloud object mapping information, cloud metadata objects (“CMOs”), cloud data objects (“CDOs”), etc. When a file system operation operates to fill data stored in an external storage location form the storage layer into the cache overlay layer, the metadata within the storage layer inode can be used to retrieve the data from the external storage location and then storing the retrieved data in the cache overlay layer for access by file system clients; Note – cloud data object can be retrieved from an external storage location and stored in cache).
The combination of Li does not explicitly teach reading data of the logical block address from the server-side cache by using the logical block address, as claimed.
However, the combination of Li in view of Peng teaches reading data of the logical block address from the server-side cache by using the logical block address (Peng, [0018], The media cache 108 may be various types of storage media including … a non-volatile RAM, such as NAND flash memory … the mapping of logical block addresses to the physical addresses on the media cache 108; [0033], Operation 410 then reads data from a media cache that corresponds to logical block addresses corresponding to the band selected in operation 408; Li, [0016], accessing the data reading address).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified the combination of Li to incorporate teachings of Peng to read data from a cache using logical block address. A person of ordinary skill in the art would have been motivated to combine the teachings of Li with Peng because it improves efficiency and performance of the storage system disclosed in the combination of Li by reading data from a cache directly using logical block address.
Claims 19 and 23 have similar limitations as claim 7 and they are rejected for the similar reasons. Furthermore, regarding claim 19, Li teaches a computing device, configured on a server-side (Li, [0007], Nginx) and comprising: a memory and a processor; wherein the memory is configured to store computer executable instructions, and the processor is configured to execute the computer executable instructions (Li, [0035], processor … executing the computer program).
Claim(s) 8 and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Li, Laier, and Peng as applied to claims 7 and 19 respectively above, and further in view of Subramanian et al. (US2019/0146682), hereinafter Subramanian.
Regarding claims 8 and 20, taking claim 8 as exemplary, the combination of Li teaches all the features with respect to claim 7 as outlined above. The combination of Li does not explicitly teach the method according to claim 7, further comprising: acquiring an object name and a data offset of each object in the object storage device in advance; establishing a second mapping relationship between the logical block address and the object name as well as the data offset according to the logical block address of the data management unit to which each object is mapped on the user host in advance; determining an object name and a data offset corresponding to the logical block address according to the logical block address and the second mapping relationship in a condition that the data of the logical block address does not exist in the server-side cache; issuing access to the object storage device by using the object name and the data offset to acquire the corresponding data; and placing the data into the server-side cache and returning the data to the user host, as claimed.
However, the combination of Li in view of Subramanian teaches the method according to claim 7, further comprising: acquiring an object name and a data offset of each object in the object storage device in advance; establishing a second mapping relationship between the logical block address and the object name as well as the data offset according to the logical block address of the data management unit to which each object is mapped on the user host in advance (Subramanian, [0050], after mapping the object ID to a metadata LBA and offset, ); determining an object name and a data offset corresponding to the logical block address according to the logical block address and the second mapping relationship in a condition that the data of the logical block address does not exist in the server-side cache; issuing access to the object storage device by using the object name and the data offset to acquire the corresponding data; and placing the data into the server-side cache and returning the data to the user host (Li, [0010]-[0016]).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified the combination of Li to incorporate teachings of Subramanian to include a mapping of LBA, object ID, and data location offset. A person of ordinary skill in the art would have been motivated to combine the teachings of the combination of Li with Subramanian because it improves efficiency and performance of the storage system disclosed in the combination of Li by retrieving object data using mapping relationships among object ID, LBA, and offset.
Claim 20 has similar limitations as claim 8 and is rejected for the similar reasons.
Claim(s) 9, 10, 21, and 22 is/are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Li, Laier, and Peng as applied to claims 7 and 19 respectively above, and further in view of Teranishi et al. (US2022/0050615), hereinafter Teranishi.
Regarding claims 9 and 21, taking claim 9 as exemplary, the combination of Li teaches all the features with respect to claim 7 as outlined above. The combination of Li does not explicitly teach the method according to claim 7, before the reading the data of the logical block address from the server-side cache by using the logical block address, further comprising: determining whether the data of the logical block address exists in the server-side cache according to a preset block address cache information table; wherein the block address cache information table records a corresponding relationship between the logical block address and cache hit information, and the cache hit information is used to indicate whether data of a corresponding logical block address is located in the server-side cache, as claimed.
However, the combination of Li in view of Teranish teaches the method according to claim 7, before the reading the data of the logical block address from the server-side cache by using the logical block address, further comprising: determining whether the data of the logical block address exists in the server-side cache according to a preset block address cache information table; wherein the block address cache information table records a corresponding relationship between the logical block address and cache hit information, and the cache hit information is used to indicate whether data of a corresponding logical block address is located in the server-side cache (Teranish, [0078]; [0079], The management table TBL1 includes the address of the logical block address LBA included in the L2Ps table, and information on the number of cache hits and the number of cache misses; Fig.9).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified the combination of Li to incorporate teachings of Teranish to include a table that provides cache hit information for logical block addresses (LBA). A person of ordinary skill in the art would have been motivated to combine the teachings of the combination of Li with Teranish because it improves efficiency of the storage system disclosed in the combination of Li by tracking cache hit information for LBAs in order to cache data more effectively.
Claim 21 has similar limitations as claim 9 and is rejected for the similar reasons.
Regarding claims 10 and 22, taking claim 10 as exemplary, the combination of Li teaches all the features with respect to claim 9 as outlined above. The combination of Li further teaches the method according to claim 9, further comprising: updating the block address cache information table accordingly in a case that the server-side cache updates data (Teranish, [0081] –[0083]; [0085], The memory controller 3 updates the number of cache hits and the number of cache misses of the address (logical block address LBA) of the user data every time the read request from the host 2 is received).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to have modified the combination of Li to incorporate teachings of Teranish to include a table that provides cache hit information for logical block addresses (LBA). A person of ordinary skill in the art would have been motivated to combine the teachings of the combination of Li with Teranish because it improves efficiency of the storage system disclosed in the combination of Li by tracking cache hit information for LBAs in order to cache data more effectively.
Claim 22 has similar limitations as claim 10 and is rejected for the similar reasons.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to NANCI N WONG whose telephone number is (571)272-4117. The examiner can normally be reached Monday-Friday 9am -6pm.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Arpan Savla can be reached at 571-272-1077. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/NANCI N WONG/Primary Examiner, Art Unit 2137