发明创造名称:一种基于弹性块存储的数据写、读方法及装置
外观设计名称:
决定号:199356
决定日:2019-12-20
委内编号:1F274661
优先权日:
申请(专利)号:201510639347.5
申请日:2015-09-30
复审请求人:北京奇艺世纪科技有限公司
无效请求人:
授权公告日:
审定公告日:
专利权人:
主审员:唐娜
合议组组长:丁文勍
参审员:孟子山
国际分类号:G06F3/06
外观设计分类号:
法律依据:专利法第22条第3款
决定要点
:如果一项权利要求请求保护的技术方案与作为最接近现有技术的对比文件相比存在区别技术特征,其中该区别技术特征部分被其他对比文件公开且所起的作用相同,其余部分属于本领域的公知常识,则该项权利要求请求保护的技术方案不具有突出的实质性特点,不具备创造性。
全文:
本复审请求涉及申请号为201510639347.5,名称为“一种基于弹性块存储的数据写、读方法及装置”的发明专利申请(下称本申请)。本申请的申请人为北京奇艺世纪科技有限公司,申请日为2015年09月30日,公开日为2015年12月23日。
经实质审查,国家知识产权局实质审查部门于2018年11月06日发出驳回决定,以权利要求1-14不具备专利法第22条第3款规定的创造性为由驳回了本申请,其中引用以下对比文件:
对比文件2:CN 102591668 A,公开日为2012年07月18日;
对比文件3:CN 1716215 A,公开日为2006年01月04日。
具体驳回理由为:(1)权利要求1与对比文件2的区别技术特征在于:将所述待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;对计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,所述存储介质为固态硬盘,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到服务器中。上述区别技术特征部分被对比文件3公开且所起的作用相同,其余部分是本领域的公知常识。(2)从属权利要求2-5的附加技术特征或者被对比文件2、对比文件3公开,或者属于本领域的公知常识。(3)权利要求6与对比文件2的区别技术特征在于:以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址;如果查找到,则将查找到的物理地址对应的段数据,反馈给用户;如果没有查找到,则以数据段的哈希值为索引,在存储服务器查找。上述区别技术特征部分被对比文件3公开且所起的作用相同,其余部分是本领域的公知常识。(4)从属权利要求7的附加技术特征是本领域的公知常识。(5)权利要求8与对比文件2的区别技术特征在于:分段模块,用于将所述待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;第一去重模块,对计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;第一存储模块,将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,所述存储介质为固态硬盘,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到服务器中。上述区别技术特征部分被对比文件3公开且所起的作用相同,其余部分是本领域的公知常识。(6)从属权利要求9-12的附加技术特征或者被对比文件2、对比文件3公开,或者属于本领域的公知常识。(7)权利要求13与对比文件2的区别技术特征在于:第一查找模块,用于以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址;第一反馈模块,用于在所述第一查找模块在存储介质中查找到与该数据读请求对应的物理地址的情况下,将查找到的物理地址对应的段数据,反馈给用户;在所述第一查找模块在存储介质中没有查找到与该数据读请求对应的物理地址的情况下以数据段的哈希值为索引,在存储服务器查找。上述区别技术特征部分被对比文件3公开且所起的作用相同,其余部分是本领域的公知常识。(8)从属权利要求14的附加技术特征是本领域的公知常识。因此,权利要求1-14不具备创造性。
驳回决定所依据的文本为:申请日2015年09月30日提交的说明书第1-17页、说明书附图第1-7页、说明书摘要、摘要附图;2018年01月30日提交的权利要求第1-14项。
驳回决定所针对的权利要求书如下:
“1. 一种基于弹性块存储的数据写方法,其特征在于,预先创建至少一个虚拟块设备,所述虚拟块设备为弹性块存储,所述虚拟块设备中存储有待处理数据;所述方法包括:
从所述至少一个虚拟块设备中,获得待处理数据;
将所述待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;
对计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;
将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,所述存储介质为固态硬盘,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;
当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中。
2. 根据权利要求1所述的方法,其特征在于,所述通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中,包括:
将所述存储介质中存储的、每达到所述第二预设值的数据量对应的所述第一数据对应的列表数据写入预设文件;
当预设文件中存在列表数据时,唤醒服务进程,以使服务进程将所述列表数据对应的数据写入到存储服务器,其中,所述预设文件中没有列表数据时,所述服务进程处于休眠状态。
3. 根据权利要求1所述的方法,其特征在于,在所述从所述至少一个虚拟块设备中,获得待处理数据之前,还包括:
创建具有不同优先级的队列,其中,每个虚拟块设备对应一个队列;
所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,包括:
将每个所述第一数据写入到所述预先设置的存储介质中对应的写请求,存储到获得相应的待处理数据对应的虚拟块设备对应的队列中;
根据队列优先级由高至低的顺序,依次将队列中存储的写请求对应的所述第一数据写入到预先设置的存储介质中。
4. 根据权利要求1所述的方法,其特征在于,在所述从所述至少一个虚拟块设备中,获得待处理数据之前,还包括:
将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;
在所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中之前,还包括:
针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在。
5. 根据权利要求1-4任意一项所述的方法,其特征在于,所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,和/或,所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中的写入方式,包括:
基于内容存储的写入方式。
6. 一种基于弹性块存储的数据读方法,其特征在于,包括:
接收用户针对不同虚拟块设备的数据读请求;
针对每个数据读请求,以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址;
如果查找到,则将查找到的物理地址对应的段数据,反馈给用户;
如果没有查找到,则以数据段的哈希值为索引,在存储服务器中查找与该数据读请求对应的物理地址,如果查找到,则将查找到的物理地址对应的段数据,反馈给用户。
7. 根据权利要求6所述的方法,其特征在于,所述数据读请求中包括待读取数据的逻辑地址;
所述以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址,包括:
根据所述数据读请求中包括的待读取数据的逻辑地址,确定所述数据读请求对应的数据段的哈希值;
以所确定的数据段的哈希值为索引在存储介质中查找与该数据读请求对应的物理地址。
8. 一种基于弹性块存储的数据写装置,其特征在于,预先创建至少一个虚拟块设备,所述虚拟块设备为弹性块存储,所述虚拟块设备中存储有待处理数据;所述装置包括:获得模块、分段模块、第一去重模块、第一存储模块和第二存储模块,其中,
所述获得模块,用于从所述至少一个虚拟块设备中,获得待处理数据;
所述分段模块,用于将所述获得模块获得的待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;
所述第一去重模块,用于对所述分段模块计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;
所述第一存储模块,用于将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,所述存储介质为固态硬盘,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;
所述第二存储模块,用于当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中。
9. 根据权利要求8所述的装置,其特征在于,所述第二存储模块包括:写入子模块和唤醒子模块,其中,
所述写入子模块,用于将所述存储介质中存储的、每达到所述第二预设值的数据量对应的所述第一数据对应的列表数据写入预设文件;
所述唤醒子模块,用于当预设文件中存在列表数据时,唤醒服务进程,以使服务进程将所述列表数据对应的数据写入到存储服务器,其中,所述预设文件中没有列表数据时,所述服务进程处于休眠状态。
10. 根据权利要求8所述的装置,其特征在于,还包括:
创建队列模块,用于创建具有不同优先级的队列,其中,每个虚拟块设备对应一个队列;
所述第一存储模块包括:第一存储子模块和第二存储子模块,其中,
所述第一存储子模块,用于将每个所述第一数据写入到所述预先设置的存储介质中对应的写请求,存储到获得相应的待处理数据对应的虚拟块设备对应的所述创建队列模块创建的队列中;
所述第二存储子模块,用于根据队列优先级由高至低的顺序,依次将所述创建队列模块创建的队列中存储的写请求对应的所述第一数据写入到预先设置的存储介质中。
11. 根据权利要求8所述的装置,其特征在于,还包括:分组模块和第二去重模块,其中,
所述分组模块,用于将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;
所述第二去重模块,用于针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在。
12. 根据权利要求8-11任意一项所述的装置,其特征在于,所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,和/或,所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中的写入方式,包括:
基于内容存储的写入方式。
13. 一种基于弹性块存储的数据读装置,其特征在于,包括:接收模块、第一查找模块、第一反馈模块、第二查找模块和第二反馈模块,其中:
所述接收模块,用于接收用户针对不同虚拟块设备的数据读请求;
所述第一查找模块,用于针对所述接收模块接收到的每个数据读请求,以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址;
所述第一反馈模块,用于在所述第一查找模块在存储介质中查找到与该数据读请求对应的物理地址的情况下,将查找到的物理地址对应的段数据,反馈给用户;
所述第二查找模块,用于在所述第一查找模块在存储介质中没有查找到与该数据读请求对应的物理地址的情况下,以数据段的哈希值为索引,在存储服务器中查找与该数据读请求对应的物理地址;
所述第二反馈模块,用于在所述第二查找模块在存储服务器中查找到与该数据读请求对应的物理地址的情况下,将查找到的物理地址对应的段数据,反馈给用户。
14. 根据权利要求13所述的装置,其特征在于,所述数据读请求中包括待读取数据的逻辑地址;
所述第一查找模块,具体用于:
针对所述接收模块接收到的每个数据读请求,根据所述数据读请求中包括的待读取数据的逻辑地址,确定所述数据读请求对应的数据段的哈希值;以所确定的数据段的哈希值为索引在存储介质中查找与该数据读请求对应的物理地址。”
申请人(下称复审请求人)对上述驳回决定不服,于2019年02月21日向国家知识产权局提出了复审请求,同时提交了权利要求书的全文修改替换页(包括权利要求第1-14项)。具体修改内容如下:在申请日2015年09月30日提交的权利要求第1-16项的基础上进行修改,将从属权利要求3、11的附加技术特征补入到独立权利要求1、9中,删除从属权利要求3、11,并对权利要求的编号和引用关系作了相应修改。复审请求人认为:(1)对比文件3中,数据去重是在写入存储介质时进行的,而修改后的权利要求1,数据去重是写入存储介质之前进行的。即其是在对段数据去重后,再唤醒服务进程以将列表数据对应的数据写入服务器,而对比文件3在去重过程中存储介质与写入相关的进程需要保持唤醒状态,更不可能将上述技术特征与对比文件2相结合。(2)对比文件2的存储资源池应相当于本申请中的存储服务器,对比文件2是直接将数据读请求发送至存储资源池,并根据该读请求,在存储中查找对应的数据。虽然对比文件3公开了将去冗余的数据写入存储介质,但是并没有进一步公开将该存储介质作为缓存,并且在将数据写入存储介质之后,再通过存储介质写入存储服务器。因此,即使本领域技术人员将对比文件3和对比文件2相结合,也仅能够获取到可以将数据写入存储介质和存储服务器的技术启示,在不经过创造性劳动的前提下,难以想到将本地存储介质作为将数据写入存储服务器过程中的缓存。
复审请求时修改的权利要求书如下:
“1. 一种基于弹性块存储的数据写方法,其特征在于,预先创建至少一个虚拟块设备,所述虚拟块设备为弹性块存储,所述虚拟块设备中存储有待处理数据;所述方法包括:
从所述至少一个虚拟块设备中,获得待处理数据;
将所述待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;
对计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;
将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;
当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中;
所述通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中,包括:
将所述存储介质中存储的、每达到所述第二预设值的数据量对应的所述第一数据对应的列表数据写入预设文件;
当预设文件中存在列表数据时,唤醒服务进程,以使服务进程将所述列表数据对应的数据写入到存储服务器,其中,所述预设文件中没有列表数据时,所述服务进程处于休眠状态。
2. 根据权利要求1所述的方法,其特征在于,所述存储介质为固态硬盘。
3. 根据权利要求1所述的方法,其特征在于,在所述从所述至少一个虚拟块设备中,获得待处理数据之前,还包括:
创建具有不同优先级的队列,其中,每个虚拟块设备对应一个队列;
所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,包括:
将每个所述第一数据写入到所述预先设置的存储介质中对应的写请求,存储到获得相应的待处理数据对应的虚拟块设备对应的队列中;
根据队列优先级由高至低的顺序,依次将队列中存储的写请求对应的所述第一数据写入到预先设置的存储介质中。
4. 根据权利要求1所述的方法,其特征在于,在所述从所述至少一个虚拟块设备中,获得待处理数据之前,还包括:
将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;
在所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中之前,还包括:
针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在。
5. 根据权利要求1-4任意一项所述的方法,其特征在于,所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,和/或,所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中的写入方式,包括:
基于内容存储的写入方式。
6. 一种基于弹性块存储的数据读方法,其特征在于,包括:
接收用户针对不同虚拟块设备的数据读请求;
针对每个数据读请求,以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址;
如果查找到,则将查找到的物理地址对应的段数据,反馈给用户;
如果没有查找到,则以数据段的哈希值为索引,在存储服务器中查找与该数据读请求对应的物理地址,如果查找到,则将查找到的物理地址对应的段数据,反馈给用户。
7. 根据权利要求6所述的方法,其特征在于,所述数据读请求中包括待读取数据的逻辑地址;
所述以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址,包括:
根据所述数据读请求中包括的待读取数据的逻辑地址,确定所述数据读请求对应的数据段的哈希值;
以所确定的数据段的哈希值为索引在存储介质中查找与该数据读请求对应的物理地址。
8. 一种基于弹性块存储的数据写装置,其特征在于,预先创建至少一个虚拟块设备,所述虚拟块设备为弹性块存储,所述虚拟块设备中存储有待处理数据;所述装置包括:获得模块、分段模块、第一去重模块、第一存储模块和第二存储模块,其中,
所述获得模块,用于从所述至少一个虚拟块设备中,获得待处理数据;
所述分段模块,用于将所述获得模块获得的待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;
所述第一去重模块,用于对所述分段模块计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;
所述第一存储模块,用于将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;
所述第二存储模块,用于当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中;
所述第二存储模块包括:写入子模块和唤醒子模块,其中,
所述写入子模块,用于将所述存储介质中存储的、每达到所述第二预设值的数据量对应的所述第一数据对应的列表数据写入预设文件;
所述唤醒子模块,用于当预设文件中存在列表数据时,唤醒服务进程,以使服务进程将所述列表数据对应的数据写入到存储服务器,其中,所述预设文件中没有列表数据时,所述服务进程处于休眠状态。
9. 根据权利要求8所述的装置,其特征在于,所述存储介质为固态硬盘。
10. 根据权利要求8所述的装置,其特征在于,还包括:
创建队列模块,用于创建具有不同优先级的队列,其中,每个虚拟块设备对应一个队列;
所述第一存储模块包括:第一存储子模块和第二存储子模块,其中,
所述第一存储子模块,用于将每个所述第一数据写入到所述预先设置的存储介质中对应的写请求,存储到获得相应的待处理数据对应的虚拟块设备对应的所述创建队列模块创建的队列中;
所述第二存储子模块,用于根据队列优先级由高至低的顺序,依次将所述创建队列模块创建的队列中存储的写请求对应的所述第一数据写入到预先设置的存储介质中。
11. 根据权利要求8所述的装置,其特征在于,还包括:分组模块和第二去重模块,其中,
所述分组模块,用于将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;
所述第二去重模块,用于针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在。
12. 根据权利要求8-11任意一项所述的装置,其特征在于,所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,和/或,所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中的写入方式,包括:
基于内容存储的写入方式。
13. 一种基于弹性块存储的数据读装置,其特征在于,包括:接收模块、第一查找模块、第一反馈模块、第二查找模块和第二反馈模块,其中:
所述接收模块,用于接收用户针对不同虚拟块设备的数据读请求;
所述第一查找模块,用于针对所述接收模块接收到的每个数据读请求,以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址;
所述第一反馈模块,用于在所述第一查找模块在存储介质中查找到与该数据读请求对应的物理地址的情况下,将查找到的物理地址对应的段数据,反馈给用户;
所述第二查找模块,用于在所述第一查找模块在存储介质中没有查找到与该数据读请求对应的物理地址的情况下,以数据段的哈希值为索引,在存储服务器中查找与该数据读请求对应的物理地址;
所述第二反馈模块,用于在所述第二查找模块在存储服务器中查找到与该数据读请求对应的物理地址的情况下,将查找到的物理地址对应的段数据,反馈给用户。
14. 根据权利要求13所述的装置,其特征在于,所述数据读请求中包括待读取数据的逻辑地址;
所述第一查找模块,具体用于:
针对所述接收模块接收到的每个数据读请求,根据所述数据读请求中包括的待读取数据的逻辑地址,确定所述数据读请求对应的数据段的哈希值;以所确定的数据段的哈希值为索引在存储介质中查找与该数据读请求对应的物理地址。”
经形式审查合格,国家知识产权局于2019年02月28日依法受理了该复审请求,并将其转送至实质审查部门进行前置审查。
实质审查部门在前置审查意见书中坚持驳回决定。
随后,国家知识产权局成立合议组对本案进行审理。
合议组于2019年09月03日向复审请求人发出复审通知书,指出:权利要求1-14相对于对比文件2、对比文件3和本领域公知常识的结合不具备专利法第22条第3款规定的创造性。
针对复审请求人的意见陈述,合议组认为:(1)对比文件3中“当写入的时候,需要将需写入的数据块依据哈希算法计算出哈希值,并与已经存在的基本块的键值(哈希值)进行比较,从而确定是否已经存在相同的数据块。即通过该键值在公共存储区中进行决断,如果该基本块被决断,则只是简单地将元数据指针保存到访问区即可,当无法决断出该基本块时,即认为该基本块为新的数据,将其与键值作为元数据写入公共存储区”公开了“数据去重是写入存储介质之前进行的”。根据本领域技术人员的技术常识可知,将预设文件存在列表数据时唤醒服务进程,以使服务进程将列表数据对应的数据写入到存储服务器与服务进程一直处于工作状态,实时地将存储介质中数据写入到存储服务器,这两种方式均属于本领域进行数据存储的常规方式。出于降低资源消耗的目的,本领域技术人员容易想到对存储介质中的数据量进行设置预设值,使得服务器在一定条件下被唤醒。对比文件2公开的弹性块存储是一种云存储,其存储的数据都是在存储服务器中的,而其面临弹性块存储的去冗余的技术问题。并且,为了提高数据读写的效率,本领域技术人员容易想到在弹性块存储与存储服务器之间设置存储介质(缓存)。所以在去除冗余时,首先将去冗余的数据临时放置在存储介质(缓存)中,最后再放入云存储服务器中是本领域的技术人员面临该问题时容易想到的。另外,对比文件3给出了在弹性块中去重的启示。因此,对比文件2和对比文件3有结合启示。(2)首先,对比文件2中的存储资源池即相当于权利要求6中的存储服务器。其次,虽然对比文件2未公开“如果没有查找到,则以数据段的哈希值为索引查找存储服务器”,然而对比文件2公开的弹性块存储是一种云存储,其存储的数据都是在存储服务器中的,而其面临弹性块存储的去冗余的技术问题,所以在去除冗余时,首先将去冗余的数据临时放置在存储介质(缓存)中,最后再放入云存储服务器中是本领域的技术人员面临该问题时容易想到的,在此基础上,查找数据时首先查找存储介质,没找到的时候再去查找服务器也是本领域的常用技术手段,所以如果没有查找到,则以数据段的哈希值为索引查找服务器是本领域的公知常识。最后,对于“利用存储介质作为存储服务器的缓存,并且对于读请求首先在缓存查找,找不到去服务器查找”为公知常识,参见《未来就绪的信息系统架构》,张均宝,上海:复旦大学出版社,第55-57页,2015年08月30日,其中第3.2.1节记载了“在服务器上有两种方式来利用SSD加速企业应用数据,分别是直接存储数据或用作缓存数据。缓存数据的方式将SSD作为机械磁盘与内存之问的缓存,加速机械磁盘的访问速度,是存储系统既有机械磁盘的容量,又有SSD的性能。按一定的算法,将频繁访问的数据块缓存在SSD上,当下次再需要访问该数据块时,就可以直接从SSD读取,加快数据的访问速度。如图3.2-4,读缓存命中时从缓存中获取数据,不命中时从机械磁盘中获取数据”。
复审请求人于2019年10月18日提交了意见陈述书,同时提交了权利要求书的全文修改替换页(包括权利要求1-12)。具体修改内容如下:将从属权利要求4、11的附加技术特征加入到独立权利要求1、7中,删除从属权利要求4、11,并对权利要求的编号和引用关系作了适应性修改。
复审请求人于2019年10月18日提交的权利要求1、7内容如下:
“1. 一种基于弹性块存储的数据写方法,其特征在于,预先创建至少一个虚拟块设备,所述虚拟块设备为弹性块存储,所述虚拟块设备中存储有待处理数据;所述方法包括:
从所述至少一个虚拟块设备中,获得待处理数据;
将所述待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;
对计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;
将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;
当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中;
所述通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中,包括:
将所述存储介质中存储的、每达到所述第二预设值的数据量对应的所述第一数据对应的列表数据写入预设文件;
当预设文件中存在列表数据时,唤醒服务进程,以使服务进程将所述列表数据对应的数据写入到存储服务器,其中,所述预设文件中没有列表数据时,所述服务进程处于休眠状态;
在所述从所述至少一个虚拟块设备中,获得待处理数据之前,还包括:
将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;
在所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置 的存储介质中之前,还包括:
针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在。”
“7. 一种基于弹性块存储的数据写装置,其特征在于,预先创建至少一个虚拟块设备,所述虚拟块设备为弹性块存储,所述虚拟块设备中存储有待处理数据;所述装置包括:获得模块、分段模块、第一去重模块、第一存储模块和第二存储模块,其中,
所述获得模块,用于从所述至少一个虚拟块设备中,获得待处理数据;
所述分段模块,用于将所述获得模块获得的待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;
所述第一去重模块,用于对所述分段模块计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;
所述第一存储模块,用于将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中,
所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;
所述第二存储模块,用于当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中;
所述第二存储模块包括:写入子模块和唤醒子模块,其中,
所述写入子模块,用于将所述存储介质中存储的、每达到所述第二预设值的数据量对应的所述第一数据对应的列表数据写入预设文件;
所述唤醒子模块,用于当预设文件中存在列表数据时,唤醒服务进程,以使服务进程将所述列表数据对应的数据写入到存储服务器,其中,所述预设文件中没有列表数据时,所述服务进程处于休眠状态;
还包括:分组模块和第二去重模块,其中,
所述分组模块,用于将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;
所述第二去重模块,用于针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在。”
复审请求人认为:(1)本申请修改后的权利要求1请求保护的方案中由于存储服务器只在缓存中存储有一定量的数据时才被唤醒,而其他时间处于休眠状态,因此存储服务器功耗较低。相关技术中,数据在写入存储服务器时,如果数据量较大,则写入过程可能持续较长时间,导致存储服务器功耗较高,而本申请修改后的权利要求1可以解决该技术问题。而对比文件2的方案中,并未公开存储服务器可以在一定条件下处于休眠状态,因此显然无法解决该技术问题。(2)本申请修改后的权利要求1请求保护的方案中,一个数据段被判断为重复数据的条件是,需要写入存储服务器中的数据中存在与该一个数据段重复的数据段。而对比文件3的方案中,一个基本块被判断为重复数据的条件是,已经写入存储介质的基本块中存在与该一个基本块重复的基本块。因此,在对比文件3的方案的基础上,本领域技术人员难以想到将虚拟块设备分为多个虚拟块设备组,并且先在虚拟块设备内部进行段数据去重,再在虚拟块设备间进行段数据去重,以提高去重效果,进一步减少需要写入存储介质的数据量。本申请修改后的权利要求1请求保护的方案中,由于数据去重与已经存储在存储服务器中的数据无关,因此在去重过程中无需获取存储服务器已经存储的数据,即存储服务器可以不参与去重的过程。而对比文件3的方案中,数据去重与已经存储于存储介质的基本块相关,因此,只有在确定存储介质中已经存储的基本块的前提下才能够进行去重,因此,对比文件3的方案中,存储介质需要参与去重的过程。即对比文件3的方案中,存储介质在去重的过程中也需要处于被唤醒的状态。由于对比文件3中的存储介质在去重过程中需要处于唤醒状态,因此无法只在将数据写入存储介质时才被唤醒。即对比文件3没有给出将上述区别技术特征与对比文件2结合的技术启示,甚至给出了相反的技术启示。因此,本申请具备创造性。
在上述程序的基础上,合议组认为本案事实已经清楚,可以作出审查决定。
合议组于2019年11月04日发出合议组成员变更通知书。复审请求人逾期未答复,视为无回避请求。
二、决定的理由
审查文本的认定
复审请求人在2019年10月18日提交了权利要求书的全文修改替换页,经审查,所作修改符合专利法实施细则第61条第1款以及专利法第33条的规定。本复审请求审查决定所依据的审查文本为:申请日2015年09月30日提交的说明书第1-17页、说明书附图第1-7页、说明书摘要、摘要附图,2019年10月18日提交的权利要求第1-12项。
关于专利法第22条第3款
专利法第22条第3款规定:创造性,是指与现有技术相比,该发明具有突出的实质性特点和显著的进步,该实用新型具有实质性特点和进步。
如果一项权利要求请求保护的技术方案与作为最接近现有技术的对比文件相比存在区别技术特征,其中该区别技术特征部分被其他对比文件公开且所起的作用相同,其余部分属于本领域的公知常识,则该项权利要求请求保护的技术方案不具有突出的实质性特点,不具备创造性。
本复审请求审查决定所引用的对比文件与驳回决定和复审通知书中引用的对比文件相同,即:
对比文件2:CN102591668A,公开日为2012年07月18日;
对比文件3:CN1716215A, 公开日为2006年01月04日。
2.1、权利要求1请求保护一种基于弹性块存储的数据写方法,对比文件2公开了对弹性计算云系统升级的装置、方法及系统,并具体公开了以下技术特征(参见对比文件2的说明书第[0002]、[0022]-[0050]段,图1):如图1所示,为本申请实施例提出的基于块设备存储服务实现数据存储的弹性计算云系统,弹性计算云系统中包括若干基于弹性计算云技术将本地的物理服务器虚拟出来的虚拟服务器(图中所示为虚拟服务器1、......虚拟服务器n)(相当于权利要求1中的预先创建至少一个虚拟块设备),其中基于弹性计算云技术虚拟出来的虚拟服务器(即虚拟机)的存储服务都是基于块设备的远程存储服务(相当于权利要求1中的所述虚拟块设备为弹性块存储),业界称之为弹性块存储服务(Elastic Block Storage)(相当于权利要求1中的基于弹性块存储)。各个虚拟服务器会将本地提供的基于块设备存储服务技术的数据存储服务(相当于权利要求1中的所述虚拟块设备中存储有待处理数据)使用远程的存储资源池或本地的存储资源池来实现,即各个虚拟服务器会将本地需要保存的数据(相当于权利要求1中的从所述至少一个虚拟块设备中,获得待处理数据)存储到(相当于权利要求1中的一种基于弹性块存储的数据写方法)远程的存储资源池或本地设置的存储资源池中(相当于权利要求1中的通知服务进程,将数据写入),并在后续有读取数据的请求时,从远程的存储资源池或本地设置的存储资源池中读取相关数据。本地或远程存储资源池23,一般情况下存储资源池23是类似于分布式文件系统的存储服务器(相当于权利要求1中的存储服务器,将数据写入到存储服务器中),该资源池23既可以是本地部署也可以是远程部署,大多数情形下都是远程部署的存储资源池。
权利要求1与对比文件2的区别在于:(1)将所述待处理数据以第一预设值进行分段,并分别计算每段数据的哈希值;对计算得到的哈希值对应的段数据去重,以使计算得到的每个哈希值对应的段数据唯一存在;将去重后的剩余的每个哈希值对应的第一数据进行写入,所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值、该哈希值对应的数据段的逻辑地址和物理地址及其对应关系;并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引;在所述从所述至少一个虚拟块设备中,获得待处理数据之前,还包括:将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;在所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中之前,还包括:针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在;(2)权利要求1是将去重后的数据写入到预先设置的存储介质中;当写入所述存储介质中的所述第一数据的数据量每达到第二预设值时,通知服务进程,以使所述服务进程将每达到所述第二预设值的数据量对应的所述存储介质中的所述第一数据写入到存储服务器中;将所述存储介质中存储的、每达到所述第二预设值的数据量对应的所述第一数据对应的列表数据写入预设文件;当预设文件中存在列表数据时,唤醒服务进程,以使服务进程将所述列表数据对应的数据写入到存储服务器,其中,所述预设文件中没有列表数据时,所述服务进程处于休眠状态。
基于上述区别技术特征,权利要求1实际解决的技术问题是:如何去除冗余数据以及如何提高数据读写效率。
针对区别技术特征(1),对比文件3公开了一种减少存储介质中的数据冗余的方法,并具体公开了以下技术特征(参见对比文件3的说明书第2-5页):针对现有的大多数块存储介质,本申请提供了一种减少数据冗余的方法。块存储介质主要是以块为单位对存储介质进行访问。首先将要写入的操作块拆分成若干个基本块(相当于权利要求1中的将所述待处理数据以第一预设值进行分段),并计算每一个基本块的键值,在本申请中,进行冗余操作的最小块数据为基本块(相当于权利要求1中的每段数据),其它所有块数据的大小都应该是它的整数倍。基本块键值由基本块数据通过适当的哈希算法获得(相当于权利要求1中的分别计算每段数据的哈希值),并作为基本块数据的索引值。存储介质容量(SMC):物理存储介质的真实容量;元数据指针(MDP,即基本块指针):元数据在公共存储区内的偏移量,每一个元数据指针都指向公共存储区的一个基本块数据(相当于权利要求1中的该哈希值对应的数据段的逻辑地址),当写入的时候,需要将需写入的数据块依据哈希算法计算出哈希值,并与已经存在的基本块的键值(哈希值)进行比较,从而确定是否已经存在相同的数据块。即通过该键值在公共存储区中进行决断,如果该基本块被决断(相当于权利要求1中的对计算得到的哈希值对应的段数据去重),则只是简单地将元数据指针保存到访问区即可(相当于权利要求1中的以使计算得到的每个哈希值对应的段数据唯一存在,并将去重后的剩余的每个哈希值,确定为该哈希值对应的数据段的索引),当无法决断出该基本块时,即认为该基本块为新的数据(相当于权利要求1中的将去重后的剩余的每个哈希值对应的第一数据进行写入),将其与键值作为元数据写入公共存储区(相当于权利要求1中的所述第一数据包括:元数据和段数据,其中,所述元数据包括:哈希值),并将元数据指针保存到访问区的线性地址表中(相当于权利要求1中的将哈希值对应的数据段的逻辑地址进行写入)。由此可见,区别技术特征(1)部分已被对比文件3公开,且其在对比文件3中所起的作用与其在本申请中所起的作用相同,都是为了去除冗余数据。在对比文件3给出的启示下,本领域技术人员容易想到将对比文件3公开的在存储介质中去除冗余数据的特征应用于对比文件2,以在虚拟块设备中去除冗余数据。
进而,在本领域中,为了进一步节省存储空间的占用,往往需要最大限度地去重,即不仅去重单个写入请求中的重复数据,还需要在多个提出请求的设备中实现去重,则对设备进行分组,在组内部继续执行去重操作是可以根据需要自行设定的。因此,在所述从所述至少一个虚拟块设备中,获得待处理数据之前,还包括:将预先创建的至少一个虚拟块设备,划分为M个虚拟块设备组,每个虚拟块设备组中包含不同的虚拟块设备;在所述将去重后的剩余的每个哈希值对应的第一数据写入到预先设置的存储介质中之前,还包括:针对每个虚拟块设备组,对该虚拟块设备组中的去重后的剩余的哈希值对应的段数据再次进行去重,以使每个虚拟块设备组中的每个哈希值对应的段数据唯一存在属于本领域的公知常识。
此外,对比文件3公开了设置基本块的指针即元数据指针用于唯一指向基本块,将元数据指针设置在元数据里面是可以根据需要自行设定的。因此,元数据通常包括基本块的指针(元数据在公共存储区内的偏移量,每一个元数据指针都指向公共存储区的一个基本块数据),即哈希值对应的数据段的地址。并且,在本领域中,逻辑地址与物理地址的通常相对应。因此,元数据还包括哈希值对应的数据段的逻辑地址和物理地址及其对应关系属于本领域的公知常识。
针对区别技术特征(2),对于达到一定数据量的存储介质里面的数据写入存储服务器而言,对比文件2公开的弹性块存储是一种云存储,其存储的数据都是在存储服务器中的,而其面临弹性块存储的去冗余的技术问题。并且,为了提高数据读写的效率,本领域技术人员容易想到在弹性块存储与存储服务器之间设置存储介质(缓存)。
进而,根据本领域技术人员的技术常识可知,在面临将数据从存储介质(缓存)存储到服务器时,通常有两种方式:按照设定的阈值进行批量数据写入以及实时写入数据,本领域技术人员可以依据节约功耗以及数据传输实时性的目的,对上述两种方式进行选择。具体到本申请,预设文件通常用于收发数据,将预设文件存在列表数据时唤醒服务进程,以使服务进程将列表数据对应的数据写入到存储服务器属于本领域进行数据存储的常规方式。出于降低资源消耗的目的,本领域技术人员容易想到对存储介质中的数据量进行设置预设值,使得服务器在一定条件下被唤醒。进一步,对每达到第二预设值的数据量对应的第一数据对应的列表数据写入预设文件属于本领域批量写入数据的常用技术手段。因此,区别技术特征(2)属于本领域的公知常识。
由此可见,在对比文件2的基础上结合对比文件3以及本领域的公知常识得到权利要求1所要求保护的技术方案对本领域的技术人员来说是显而易见的,权利要求1不具有突出的实质性特点,因而不具备专利法第22条第3款规定的创造性。
2.2、权利要求2对权利要求1作了进一步限定。根据本领域技术人员的技术常识可知,固态硬盘是常见的存储介质。因此,当其引用的权利要求不具备创造性时,权利要求2也不具备专利法第22条第3款规定的创造性。
2.3、权利要求3对权利要求1作了进一步限定。在本领域中,每个虚拟块设备通常对应一个队列。而根据本领域技术人员的技术常识可知,为队列设置优先级,并根据优先级的顺序存储数据是本领域的常用技术手段,并且当本领域的技术人员面临弹性块存储的数据去冗余的问题时,容易想到将对比文件3的去冗余的方法应用进来,将去重后的数据进行存储。因此,创建具有不同优先级的队列,根据队列优先级由高至低的顺序,将去重后的剩余的每个哈希值对应的第一数据写入队列,再写入到存储介质中是本领域的公知常识。因此,当其引用的权利要求不具备创造性时,权利要求3也不具备专利法第22条第3款规定的创造性。
2.4、权利要求4对权利要求1-3中任一项作了进一步限定。对比文件2还公开了以下技术特征(参见对比文件2的说明书第[0022]-[0050]段,附图1):各个虚拟服务器会将本地提供的基于块设备存储服务技术的数据存储服务使用远程的存储资源池或本地的存储资源池来实现,即各个虚拟服务器会将本地需要保存的数据存储到远程的存储资源池或本地设置的存储资源池中(相当于权利要求4中的写入到存储服务器中的写入方式,包括:基于内容存储的写入方式)。因此,当其引用的权利要求不具备创造性时,权利要求4也不具备专利法第22条第3款规定的创造性。
2.5、权利要求5请求保护一种基于弹性块存储的数据读方法,对比文件2公开了对弹性计算云系统升级的装置、方法及系统,并具体公开了以下技术特征(参见对比文件2的说明书第[0002]、[0022]-[0050]段,图1):如图1所示,为本申请实施例提出的基于块设备存储服务实现数据存储的弹性计算云系统,弹性计算云系统中包括若干基于弹性计算云技术将本地的物理服务器虚拟出来的虚拟服务器(图中所示为虚拟服务器1、......虚拟服务器n)(相当于权利要求5中的不同虚拟块设备),其中基于弹性计算云技术虚拟出来的虚拟服务器(即虚拟机)的存储服务都是基于块设备的远程存储服务,业界称之为弹性块存储服务(Elastic Block Storage)(相当于权利要求5中的基于弹性块存储)。各个虚拟服务器会将本地需要保存的数据存储到远程的存储资源池或本地设置的存储资源池中,并在后续有读取数据的请求时(相当于权利要求5中的接收用户针对不同虚拟块设备的数据读请求),从远程的存储资源池或本地设置的存储资源池中读取相关数据(相当于权利要求5中的一种基于弹性块存储的数据读方法)。本地或远程存储资源池23,一般情况下存储资源池23是类似于分布式文件系统的存储服务器(相当于权利要求5中的存储服务器),该资源池23既可以是本地部署也可以是远程部署,大多数情形下都是远程部署的存储资源池。在接收到读写请求后,对该请求进行解析操作(相当于权利要求5中的针对每个数据读请求),解析包括验证该读写请求是否合法、具体是读请求还是写请求,读写请求的起始位置(相当于权利要求5中的该数据读请求对应的物理地址)及长度信息等,并根据解析结果向本地或远程的存储资源池进行数据的读操作(相当于权利要求5中的在存储服务器中查找与该数据读请求对应的物理地址)或者写操作。块设备驱动装置进而将读取结果(相当于权利要求5中的如果查找到,则将查找到的物理地址对应的数据)通过W/R调度层、通用块层转发给文件系统层,文件系统层再将读取结果返回给系统调用(相当于权利要求5中的反馈给用户)。
权利要求5与对比文件2的区别在于:以数据段的哈希值为索引,在存储介质中查找与该数据读请求对应的物理地址;如果查找到,则将查找到的物理地址对应的段数据,反馈给用户;如果没有查找到,则以数据段的哈希值为索引,在存储服务器查找。
基于上述区别技术特征,权利要求5实际解决的技术问题是:如何去除冗余数据以及如何查找数据。
对比文件3公开了一种减少存储介质中的数据冗余的方法,并具体公开了以下技术特征(参见对比文件3的说明书第2-5页):针对现有的大多数块存储介质,本申请提供了一种减少数据冗余的方法。块存储介质主要是以块为单位对存储介质进行访问。首先将要写入的操作块拆分成若干个基本块,并计算每一个基本块的键值,在本申请中,进行冗余操作的最小块数据为基本块,其它所有块数据的大小都应该是它的整数倍。基本块键值由基本块数据通过适当的哈希算法获得(相当于权利要求5中的哈希值),并作为基本块数据的索引值(相当于权利要求5中的以数据段的哈希值为索引)。存储介质容量(SMC):物理存储介质的真实容量;公共存储区是一个以基本块为单位进行访问的线性的地址空间,其最小单元(元数据)由一个基本块和一个基本块键值组成。读取块数据是最简单的(相当于权利要求5中的接收数据读请求),当需要读取一个操作块的时候,这个操作块是由一个或者多个元数据指针所指的元数据所组成,需要与已经存在的基本块的键值(哈希值)进行比较(相当于权利要求5中的以数据段的哈希值为索引),从而确定是否已经存在相同的数据块,通过该值,可以很快地索引到某一个基本块数据,通过读出这些元数据并合并(相当于权利要求5中的如果查找到,则将查找到段数据,反馈给用户),就可以得出所需要的数据了。由此可见,上述区别技术特征中部分已被对比文件3公开,且其在对比文件3中所起的作用与其在本申请中所起的作用相同,都是为了基于哈希值进行数据查找。
为了提高数据读写的效率,本领域技术人员容易想到在弹性块存储与存储服务器之间设置存储介质(缓存)。对比文件2公开的弹性块存储是一种云存储,其存储的数据都是在存储服务器中的,而其面临弹性块存储的去冗余的技术问题。并且,为了提高数据读写的效率,本领域技术人员容易想到在弹性块存储与存储服务器之间设置存储介质(缓存)。所以在去除冗余时,首先将去冗余的数据临时放置在存储介质(缓存)中,最后再放入云存储服务器中是本领域的技术人员面临该问题时容易想到的,在此基础上,查找数据时首先查找存储介质,没找到的时候再去查找服务器。因此,如果没有查找到,则以数据段的哈希值为索引查找服务器是本领域的公知常识。
在本领域中,逻辑地址和物理地址通常相对应。因此,在对比文件3的基础上,本领域技术人员容易想到查找数据读请求的物理地址以及将在存储介质和服务器中进行物理地址的查询以确定是否查找到相应数据。
由此可见,在对比文件2的基础上结合对比文件3以及本领域的公知常识得出该权利要求所要求保护的技术方案对本领域的技术人员来说是显而易见的。因此该权利要求不具有突出的实质性特点,不符合专利法第22条第3款有关创造性的规定。
2.6、权利要求6是对权利要求5的进一步限定。对比文件3具体公开了以下技术特征(参见对比文件3的说明书第2-5页):基本块键值由基本块数据通过适当的哈希算法获得(相当于权利要求6中的确定数据段的哈希值),并作为基本块数据的索引值(相当于权利要求6中的以确定的数据段的哈希值为索引)。存储介质容量(SMC):物理存储介质的真实容量;元数据指针(MDP,即基本块指针):元数据在公共存储区内的偏移量,每一个元数据指针都指向公共存储区的一个基本块数据(相当于权利要求6中的该哈希值对应的逻辑地址)。当需要读取一个操作块的时候,这个操作块是由一个或者多个元数据指针所指的元数据所组成,需要与已经存在的基本块的键值(哈希值)进行比较(相当于权利要求6中的以数据段的哈希值为索引),从而确定是否已经存在相同的数据块,通过该值,可以很快地索引到某一个基本块数据,通过读出这些元数据并合并(相当于权利要求6中的以所确定的数据段的哈希值为索引查找数据),就可以得出所需要的数据了。
在本领域中,逻辑地址和物理地址通常相对应。因此,数据读请求中通常包括待读取数据的逻辑地址。在存储介质中查找相应数据的物理地址属于本领域进行数据查找的常用技术手段。因此,当其引用的权利要求不具备创造性时,从属权利要求6也不具备专利法第22条第3款规定的创造性。
2.7、权利要求7-10、11-12分别请求保护一种基于弹性块存储的数据写装置、一种基于弹性块存储的数据读装置,其分别与权利要求1-4、5-6所请求保护的一种基于弹性块存储的数据写方法、一种基于弹性块存储的数据读方法实质上相对应,基于相同的理由,权利要求7-10、11-12也不具有突出的实质性特点,不具备专利法第22条第3款规定的创造性。
3、关于复审请求人的复审请求意见
对于复审请求人答复复审通知书时提出的意见,合议组认为:
首先,根据上述对权利要求1的评述可知,对比文件3已经公开了“数据去重是写入存储介质之前进行的”。
其次,对比文件3公开了存储介质相关的去除冗余数据的方法,本领域技术人员容易想到将对比文件3公开的在存储介质中去除冗余数据的特征应用于对比文件2,以在虚拟块设备中去除冗余数据。由此可见,出于进一步节省存储空间的占用的目的,本领域技术人员容易想到对虚拟块设备进行分组,再在虚拟块设备间进行段数据去重以提高去重效果,这属于本领域的公知常识。对比文件3中的存储介质和本申请中的存储介质并不相同,本领域技术人员也仅是将对比文件3的冗余数据去重应用到对比文件2中以实现在虚拟块设备中去除冗余数据。
最后,根据本领域技术人员的技术常识可知,在面临将数据从存储介质(缓存)存储到服务器时,通常有两种方式:按照设定的阈值进行批量数据写入以及实时写入数据,本领域技术人员可以依据节约功耗以及数据传输实时性的目的,对上述两种方式进行选择。具体到本申请,预设文件通常用于收发数据,将预设文件存在列表数据时唤醒服务进程,以使服务进程将列表数据对应的数据写入到存储服务器属于本领域进行数据存储的常规方式。出于降低资源消耗的目的,本领域技术人员容易想到对存储介质中的数据量进行设置预设值,使得服务器在一定条件下被唤醒。进一步,对每达到第二预设值的数据量对应的第一数据对应的列表数据写入预设文件属于本领域批量写入数据的常用技术手段。因此,对于复审请求人的意见,合议组不予支持。
基于上述理由,合议组依法作出如下审查决定。
三、决定
维持国家知识产权局于2018年11月06日对本申请作出的驳回决定。
如对本复审请求审查决定不服,根据专利法第41条第2款的规定,复审请求人可以自收到本决定之日起三个月内向北京知识产权法院起诉。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。