CN111522825A - 基于校验信息块共享缓存机制的高效信息更新方法及系统 - Google Patents

基于校验信息块共享缓存机制的高效信息更新方法及系统 Download PDF

Info

Publication number
CN111522825A
CN111522825A CN202010275534.0A CN202010275534A CN111522825A CN 111522825 A CN111522825 A CN 111522825A CN 202010275534 A CN202010275534 A CN 202010275534A CN 111522825 A CN111522825 A CN 111522825A
Authority
CN
China
Prior art keywords
data
information
block
check information
data block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010275534.0A
Other languages
English (en)
Inventor
陈尚汉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN202010275534.0A priority Critical patent/CN111522825A/zh
Publication of CN111522825A publication Critical patent/CN111522825A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于校验信息块共享缓存机制的高效信息更新方法,预设一共享缓存空间;发出写入数据块信息请求,各数据信息存储节点分别存储相应的数据块;校验信息存储节点存储数据块对应的校验信息;要更新一个数据片段时,存储要更新的数据块的数据信息存储节点执行块内更新,把要更新的数据片段信息覆盖写入到数据块的对应位置;执行块内更新的数据信息存储节点依据更新后的数据片段信息,通过计算获得对应的校验信息变化delta值;把所述校验信息变化delta值按先后顺序存储在校验信息节点预先开辟的共享缓存空间里。本发明提供一种基于校验信息块共享缓存机制的高效信息更新系统,在不提高节点间网络的数据传输量的同时,降低各个节点磁盘块I/O数据读取开销,并且减少磁盘碎片化。

Description

基于校验信息块共享缓存机制的高效信息更新方法及系统
技术领域
本发明涉及分布式存储系统技术领域,尤其涉及一种基于校验信息块共享缓存机制的高效信息更新方法及系统。
背景技术
互联网正处于一个信息爆炸的时代。面对信息爆炸的互联网,对信息的存储和处理产生了海量的数据。存储这些海量信息不但要求存储设备有很大的储存容量,且还需要大规模的数据库来存储和处理这些海量数据。因此我们需要对海量存储的模式、数据库策略及应用体系架构有更先进的设计考虑。海量数据在用单一设备上的存储显然是不合适的,甚至是不可能的。分布式存储是解决这种问题的一个很好的解决方案。分布式存储系统,就是将数据分散存储在多台独立的设备上。传统的网络存储系统把所有的数据都存储在一个集中存储服务器,这个存储服务器成为系统性能、可靠性和安全性的瓶颈,,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,提高了系统的可靠性、可用性和存取效率,还易于扩展。由于大数据信息量的急剧增加,之前所采用的基于备份存储的分布式存储的成本越来越高。目前很多国际国内大型企业,比如google,阿里巴巴,百度等均研究采用加入冗余的纠错删除码(纠删码)的分布式存储方式。基于纠删码的分布式存储系统包括若干个数据信息设备节点和校验信息设备节点,能有效地降低存储成本,减少数据恢复和更新时节点网络间传输数据量,提高存储和更新的可靠性和扩展性。
基于纠删码的分布式存储系统的数据信息需要更新时,有如下几种更新方式:
(1)数据信息存储节点的块内写入覆盖更新,相应的校验信息存储节点的块内写入覆盖更新;
(2)数据信息存储节点的块外写入缓存更新,相应的校验信息存储节点的块外写入缓存更新;
(3)数据信息存储节点的块内写入覆盖更新,相应的校验信息存储节点的块外写入缓存更新。
这三种方式的缺点:
方式(1)需要额外的校验节点磁盘读取寻址开销,寻找要更新的旧校验信息,然后计算新的校验信息来写入覆盖旧校验信息;由于采用块外缓存,方式(2)和方式(3)每次有新的更新,都需要重新分配块外的新空间存储,导致磁盘的碎片化,而且有新的访问时,需要额外对之前缓存的信息进行寻址读取。
基于纠删码的分布式集群存储系统的数据信息块更新会带来系统存取开销,因为它需要更新相应的校验信息块以保持数据一致。在大数据存储应用环境中,网络传输和磁盘I/O读取写入是系统性能的瓶颈。值得注意的是,绝大多数的数据写入请求都是二次写入,也就是对现存数据的更新。
请参阅图1所示,分布式存储系统架构。图1展示了这样一个分布式存储集群系统,元数据服务器(MDS)存储和管理所有的元数据文件,多个对象存储设备(OSD)实行编码和存储数据功能。对象存储设备OSD包括多个数据信息存储节点和校验信息存储节点。元数据同时监督所有的对象存储设备OSD的健康状况,当某些OSD节点出问题,则触发恢复模式。一个分布式存储系统的客户可以通过文件系统接口来访问存储集群。客户端要写入一个数据,首先把一个文件分割成若干个片段n,然后请求MDS服务器对每个片段确定主OSD设备。客户端把每个片段送往各自确定好的主OSD设备。主OSD设备把片段用纠删码编码成k个数据信息块和n-k个校验信息块。主OSD设备存储一个数据信息块,然后把其他的n-1个数据块分发给其他n-1个辅助OSD设备。
其中纠删码:
考虑一个具有M个节点(服务器)的纠删码集群存储系统。对一个数据文件分割成数据片段,然后对每个数据片段独立地编码。(n,k)码表示把一个数据片段分割成k等分的子更新数据,然后对这k个数据信息块编码,产生n-k个校验信息块,即一共有n份的数据块。然后把这个n个数据块分布在M个节点的n个节点中(n≤M)。这里考虑最大距离可分码作为纠删码,即每个原始的数据片段可通过n个数据块的任何k个来恢复出来。每个校验信息块是数据块的一个线性组合。
即:假设{γij}1≤i≤n-k,1≤j≤k为一组k个数据块{D1,D2,...,Dk}编码的编码系数,编码后的校验信息为{P1,P2,...,Pn-k},D为数据块;也就是每个校验信息Pi(1≤i≤n-k)均可表示为:
Figure BDA0002444644990000031
所有的运算都是在有限域上。
发明内容
本发明要解决的技术问题之一,在于提供一种基于校验信息块共享缓存机制的高效信息更新方法,在数据恢复和更新时,不提高节点间网络的数据传输量的同时,降低各个节点磁盘块I/O数据读取开销,并且减少磁盘碎片化。
本发明问题之一是这样实现的:一种基于校验信息块共享缓存机制的高效信息更新方法,
在校验信息存储节点中的每两个相邻校验块共享一个预设的共享缓存空间;
用户发出写入数据块信息请求,各数据信息存储节点分别存储相应的数据块;校验信息存储节点存储数据块对应的校验信息;
客户端要更新一个数据片段时,数据信息存储节点对相应要更新的数据块执行块内更新,即把要更新的数据片段信息覆盖写入到对应的数据块的相应位置;
在接收到更新数据片段后,执行块内更新的数据信息存储节点,通过计算获得更新数据片段对应的校验信息变化delta值;
校验信息存储节点执行缓存更新,把所述校验信息变化delta值按先后顺序存储在所述校验信息节点预先开辟的共享缓存空间里。
进一步地,共享缓存空间如果被占用满,则把之前存储的校验信息变化delta值合并到校验信息存储节点空间中,依次释放共享缓存空间来存储新的校验信息变化delta值。
进一步地,所述把要更新的数据片段信息覆盖写入到对应的数据块的相应位置,具体为:客户端把要修改的数据片段信息连同数据片段信息在数据块内的偏移量,发送给主数据信息存储节点中,主数据信息存储节点根据偏移量把接收到的更新的数据片段分割成若干个子更新数据,每个子更新数据对应一个各自的目标数据块;所述目标数据块是包含有旧数据的数据块;并将每个子更新数据发送到存储目标数据块的数据信息存储节点中,覆盖更新到目标数据块的相应位置。
进一步地,所述获得更新数据片段对应的校验信息变化delta值,具体为:在一个数据块Dl被更新成另外一个数据块D'l,下标l为1<l<n,n为n个数据块;则新的校验信息P'i(1≤i≤n-k)计算为:
Figure BDA0002444644990000041
k为一个数据片段分割成k等分的子更新数据,D为数据块,P为校验信息,γ为数据块编码的编码系数;即数据块改变后相应的校验信息变化delta值为γil(D'l-Dl)。
进一步地,当只是一数据块的一部分进行更新,那么同样计算相应的校验信息的一部分变化delta值为:数据块Dl在偏移量为ο的一段数据片段发生改变,那么相应的校验信息Pi的偏移量为
Figure BDA0002444644990000042
的一段数据片段也发生改变,ο和
Figure BDA0002444644990000043
相同或不同:
Figure BDA0002444644990000044
γil(D’l(ο)-Dl(ο))定义为数据块Dl的校验信息变化delta值ΔDl
本发明要解决的技术问题之二,在于提供一种基于校验信息块共享缓存机制的高效信息更新系统,在数据恢复和更新时,不提高节点间网络的数据传输量的同时,降低各个节点磁盘块I/O数据读取开销,并且减少磁盘碎片化。
本发明问题之二是这样实现的:一种基于校验信息块共享缓存机制的高效信息更新系统,所述系统包括设置缓冲空间模块,存储模块、块内更新模块、获取delta值模块以及缓存更新模块;
所述设置缓冲空间模块,用于在校验信息存储节点中的每两个相邻校验块共享一个预设的共享缓存空间;
所述存储模块,用于用户发出写入数据块信息请求,各数据信息存储节点分别存储相应的数据块;校验信息存储节点存储数据块对应的校验信息;
所述块内更新模块,用于客户端要更新一个数据片段时,数据信息存储节点对相应要更新的数据块执行块内更新,即把要更新的数据片段信息覆盖写入到对应的数据块的相应位置;
所述获取delta值模块,用于在接收到更新数据片段后,执行块内更新的数据信息存储节点,通过计算获得更新数据片段对应的校验信息变化delta值;
所述缓存更新模块,用于校验信息存储节点执行缓存更新,把所述校验信息变化delta值按先后顺序存储在所述校验信息节点预先开辟的共享缓存空间里。
进一步地,共享缓存空间如果被占用满,则把之前存储的校验信息变化delta值合并到校验信息存储节点空间中,依次释放共享缓存空间来存储新的校验信息变化delta值。
进一步地,所述把要更新的数据片段信息覆盖写入到对应的数据块的相应位置,具体为:客户端把要修改的数据片段信息连同数据片段信息在数据块内的偏移量,发送给主数据信息存储节点中,主数据信息存储节点根据偏移量把接收到的更新的数据片段分割成若干个子更新数据,每个子更新数据对应一个各自的目标数据块;所述目标数据块是包含有旧数据的数据块;并将每个子更新数据发送到存储目标数据块的数据信息存储节点中,覆盖更新到目标数据块的相应位置。
进一步地,所述获得更新数据片段对应的校验信息变化delta值,具体为:在一个数据块Dl被更新成另外一个数据块D'l,下标l为1<l<n,n为n个数据块;则新的校验信息P'i(1≤i≤n-k)计算为:
Figure BDA0002444644990000061
k为一个数据片段分割成k等分的子更新数据,D为数据块,P为校验信息,γ为数据块编码的编码系数;即数据块改变后相应的校验信息变化delta值为γil(D'l-Dl)。
进一步地,当只是一数据块的一部分进行更新,那么同样计算相应的校验信息的一部分变化delta值为:数据块Dl在偏移量为ο的一段数据片段发生改变,那么相应的校验信息Pi的偏移量为
Figure BDA0002444644990000062
的一段数据片段也发生改变,ο和
Figure BDA0002444644990000063
相同或不同:
Figure BDA0002444644990000064
γil(D’l(ο)-Dl(ο))定义为数据块Dl的校验信息变化delta值ΔDl
本发明具有如下优点:本发明采用块内更新的方式,即直接把新的更新数据覆盖写入旧的数据。而在校验信息存储节点的更新,则采用缓存的写入更新。跟现有的校验信息节点更新方案不同的是,本发明在校验信息存储节点的每两个相邻校验信息块共享一个预设的共享缓存空间,来存储这两个校验信息块的校验信息变化delta值,节省了读取校验信息时的寻址开销,减少磁盘存储的碎片化。
附图说明
图1为基于纠删码的分布式存储系统的示意图。
图2为本发明的方法流程图。
图3为本发明一实施例的分布式存储的原理框图。
图4为本发明系统的原理框图。
具体实施方式
请参阅图1至图3所示,本发明的一种基于校验信息块共享缓存机制的高效信息更新方法,
在校验信息存储节点中的每两个相邻校验块共享一个预设的共享缓存空间;
用户发出写入数据块信息请求,各数据信息存储节点分别存储相应的数据块;校验信息存储节点存储数据块对应的校验信息;
客户端要更新一个数据片段时,数据信息存储节点对相应要更新的数据块执行块内更新,即把要更新的数据片段信息覆盖写入到对应的数据块的相应位置;
在接收到更新数据片段后,执行块内更新的数据信息存储节点,通过计算获得更新数据片段对应的校验信息变化delta值;
校验信息存储节点执行缓存更新,把所述校验信息变化delta值按先后顺序存储在所述校验信息节点预先开辟的共享缓存空间里。
另外,共享缓存空间如果被占用满,则把之前存储的校验信息变化delta值合并到校验信息存储节点空间中,依次释放共享缓存空间来存储新的校验信息变化delta值。
所述把要更新的数据片段信息覆盖写入到对应的数据块的相应位置,具体为:客户端把要修改的数据片段信息连同数据片段信息在数据块内的offset偏移量,发送给任意一数据信息存储节点中,数据信息存储节点根据偏移量把接收到的更新的数据片段分割成若干个子更新数据,每个子更新数据对应一个目标的数据块;所述目标的数据块是包含有子更新数据的数据块;并将每个子更新数据发送到存储目标的数据块的数据信息存储节点中,覆盖更新到目标的数据块的相应位置。
所述获得更新数据片段对应的校验信息变化delta值,具体为:在一个数据块Dl被更新成另外一个数据块D'l,下标l为1<l<n,n为n个数据块;则新的校验信息P'i(1≤i≤n-k)计算为:
Figure BDA0002444644990000071
k为一个数据片段分割成k等分的子更新数据,D为数据块,D'为被更新的数据块;P为校验信息,γ为数据块编码的编码系数;γij为一组k个数据块{D1,D2,...,Dk}编码的编码系数(参见背景技术){γij}1≤i≤n-k,1≤j≤k;即数据块改变后相应的校验信息变化delta值为γil(D'l-Dl)。(γil是编码有限域内的元素;下标l为1<l<n)当只是一数据块的一部分进行更新,那么同样计算相应的校验信息的一部分变化delta值为:数据块Dl在偏移量为ο的一段数据片段发生改变,那么相应的校验信息Pi的偏移量为
Figure BDA0002444644990000081
的一段数据片段也发生改变,ο和
Figure BDA0002444644990000082
相同或不同:
Figure BDA0002444644990000083
γil(D’l(ο)-Dl(ο))定义为数据块Dl的校验信息变化delta值ΔDl。由于数据信息存储节点比校验信息存储节点更容易被访问更新,因此数据信息OSD节点的更新,本发明采用块内更新的方式,即直接把新的更新数据覆盖写入旧的数据。而在校验信息OSD节点的更新,则采用缓存的写入更新。
下面结合一具体实施例对本发明作进一步说明:
当客户端的更新数据流依次为:1.写入新的数据信息块a和b;2.更新数据信息块a的一部分信息a';3.写入新的数据块c和d;4.更新数据信息块b的一部分信息b';5.更新数据信息块c的一部分信息c'。(如a',b',c'表示为每次更新发生时,主OSD发送给相应数据存储节点OSD的子更新数据块。)
1.在用户发出写入数据块信息a和b请求时,数据信息存储节点1和2分别存储数据块a和b,校验信息存储节点存储a和b的校验信息a+b。
2.在用户发出更新信息请求时,数据信息存储节点1执行块内更新方式,即把要更新的信息a'覆盖写入到数据块a的相应位置。根据信息a',节点1计算得到校验信息delta值Δa,发送给校验节点3。在接收到delta值Δa后,校验信息存储节点执行缓存更新方式,把校验信息delta值Δa存储在预先开辟的跟校验信息块a+b相邻的缓存空间里。
3.在用户发出写入信息块c和d请求时,数据信息存储节点1和2分别在各自已有信息块a和b的空间后面,顺序存储数据块c和d。校验信息存储节点则在已存校验信息块a+b缓存块的后面,顺序存储c和d的校验信息c+d。
4.在用户发出更新信息请求时,数据信息存储节点2执行块内更新方式,即把要更新的信息b'覆盖写入到数据块b的相应位置。根据信息b',节点2计算得到校验信息delta值Δb,发送给校验节点3。在接收到delta值Δb后,校验信息存储节点执行缓存更新方式,由于校验信息块a+b的缓存空间已有Δa信息,因此把校验信息delta值Δb顺序存储在缓存空间里Δa的后面。
5.在用户发出更新信息请求时,数据信息存储节点1执行块内更新方式,即把要更新的信息c'覆盖写入到数据块c的相应位置。相应地,校验信息存储节点执行缓存更新方式,把校验信息delta(增量)值Δc存储在校验信息块c+d前面的跟校验信息块a+b共享的缓存空间,Δc信息跟校验信息块c+d相邻。
我们在相邻校验信息块a+b和c+d之间创建一个磁盘缓存空间,该空间用于缓存块a+b和c+d的校验信息变化delta值,使得再次访问这两个校验信息时,可以顺序读取它们的delta信息。
如果缓存空间被占用完,新的校验delta信息无法保存在缓存空间里,则把缓存空间里旧的delta信息合并到校验信息块中,依次释放空间存储新的校验delta信息。
请参阅图4所示,本发明的一种基于校验信息块共享缓存机制的高效信息更新系统,其特征在于:所述系统包括设置缓冲空间模块,存储模块、块内更新模块、获取delta值模块以及缓存更新模块;
所述设置缓冲空间模块,用于在校验信息存储节点中的每两个相邻校验块共享一个预设的共享缓存空间;
所述存储模块,用于用户发出写入数据块信息请求,各数据信息存储节点分别存储相应的数据块;校验信息存储节点存储数据块对应的校验信息;
所述块内更新模块,用于客户端要更新一个数据片段时,数据信息存储节点对相应要更新的数据块执行块内更新,即把要更新的数据片段信息覆盖写入到对应的数据块的相应位置;
所述获取delta值模块,用于在接收到更新数据片段后,执行块内更新的数据信息存储节点,通过计算获得更新数据片段对应的校验信息变化delta值;
所述缓存更新模块,用于校验信息存储节点执行缓存更新,把所述校验信息变化delta值按先后顺序存储在所述校验信息节点预先开辟的共享缓存空间里。
共享缓存空间如果被占用满,则把之前存储的校验信息变化delta值合并到校验信息存储节点空间中,依次释放共享缓存空间来存储新的校验信息变化delta值。
在本发明中,所述把要更新的数据片段信息覆盖写入到对应的数据块的相应位置,具体为:客户端把要修改的数据片段信息连同数据片段信息在数据块内的偏移量,发送给主数据信息存储节点中,主数据信息存储节点根据偏移量把接收到的更新的数据片段分割成若干个子更新数据,每个子更新数据对应一个各自的目标数据块;所述目标数据块是包含有旧数据的数据块;并将每个子更新数据发送到存储目标数据块的数据信息存储节点中,覆盖更新到目标数据块的相应位置。
所述获得更新数据片段对应的校验信息变化delta值,具体为:在一个数据块Dl被更新成另外一个数据块D'l,下标l为1<l<n,n为n个数据块;则新的校验信息P'i(1≤i≤n-k)计算为:
Figure BDA0002444644990000101
k为一个数据片段分割成k等分的子更新数据,D为数据块,P为校验信息,γ为数据块编码的编码系数;即数据块改变后相应的校验信息变化delta值为γil(D'l-Dl)。当只是一数据块的一部分进行更新,那么同样计算相应的校验信息的一部分变化delta值为:数据块Dl在偏移量为ο的一段数据片段发生改变,那么相应的校验信息Pi的偏移量为
Figure BDA0002444644990000102
的一段数据片段也发生改变,ο和
Figure BDA0002444644990000103
相同或不同:
Figure BDA0002444644990000104
γil(D’l(ο)-Dl(ο))定义为数据块Dl的校验信息变化delta值ΔDl
总之,本发明采用块内更新的方式,即直接把新的更新数据覆盖写入旧的数据。而在校验信息存储节点的更新,则采用缓存的写入更新。跟现有的校验信息节点更新方案不同的是,本发明在校验信息存储节点的每两个相邻校验信息块共享一个预设的共享缓存空间,来存储这两个校验信息块的校验信息变化delta值,节省了读取校验信息时的寻址开销,减少磁盘存储的碎片化。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (10)

1.一种基于校验信息块共享缓存机制的高效信息更新方法,其特征在于:
在校验信息存储节点中的每两个相邻校验块共享一个预设的共享缓存空间;
用户发出写入数据块信息请求,各数据信息存储节点分别存储相应的数据块;校验信息存储节点存储数据块对应的校验信息;
客户端要更新一个数据片段时,数据信息存储节点对相应要更新的数据块执行块内更新,即把要更新的数据片段信息覆盖写入到对应的数据块的相应位置;
在接收到更新数据片段后,执行块内更新的数据信息存储节点,通过计算获得更新数据片段对应的校验信息变化delta值;
校验信息存储节点执行缓存更新,把所述校验信息变化delta值按先后顺序存储在所述校验信息存储节点预先开辟的共享缓存空间里。
2.根据权利要求1所述的基于校验信息块共享缓存机制的高效信息更新方法,其特征在于:共享缓存空间如果被占用满,则把之前存储的校验信息变化delta值合并到校验信息存储节点空间中,依次释放共享缓存空间来存储新的校验信息变化delta值。
3.根据权利要求1所述的基于校验信息块共享缓存机制的高效信息更新方法,其特征在于:所述把要更新的数据片段信息覆盖写入到对应的数据块的相应位置,具体为:客户端把要修改的数据片段信息连同数据片段信息在数据块内的偏移量,发送给主数据信息存储节点中,主数据信息存储节点根据偏移量把接收到的更新的数据片段分割成若干个子更新数据,每个子更新数据对应一个各自的目标数据块;所述目标数据块是包含有旧数据的数据块;并将每个子更新数据发送到存储目标数据块的数据信息存储节点中,覆盖更新到目标数据块的相应位置。
4.根据权利要求3所述的基于校验信息块共享缓存机制的高效信息更新方法,其特征在于:所述通过计算获得更新数据片段对应的校验信息变化delta值,具体为:在一个数据块Dl被更新成另外一个数据块D'l,下标l为1<l<n,n为n个数据块;则新的校验信息P'i(1≤i≤n-k)计算为:
Figure FDA0002444644980000021
k为一个数据片段分割成k等分的子更新数据,D为数据块,P为校验信息,γ为数据块编码的编码系数;即数据块改变后相应的校验信息变化delta值为γil(D'l-Dl)。
5.根据权利要求4所述的基于校验信息块共享缓存机制的高效信息更新方法,其特征在于:当只是一数据块的一部分进行更新,那么同样计算相应的校验信息的一部分变化delta值为:数据块Dl在偏移量为ο的一段数据片段发生改变,那么相应的校验信息Pi的偏移量为
Figure FDA0002444644980000022
的一段数据片段也发生改变,ο和
Figure FDA0002444644980000023
相同或不同:
Figure FDA0002444644980000024
γil(D′l(ο)-Dl(ο))定义为数据块Dl的校验信息变化delta值ΔDl
6.一种基于校验信息块共享缓存机制的高效信息更新系统,其特征在于:所述系统包括设置缓冲空间模块,存储模块、块内更新模块、获取delta值模块以及缓存更新模块;
所述设置缓冲空间模块,用于在校验信息存储节点中的每两个相邻校验块共享一个预设的共享缓存空间;
所述存储模块,用于用户发出写入数据块信息请求,各数据信息存储节点分别存储相应的数据块;校验信息存储节点存储数据块对应的校验信息;
所述块内更新模块,用于客户端要更新一个数据片段时,数据信息存储节点对相应要更新的数据块执行块内更新,即把要更新的数据片段信息覆盖写入到对应的数据块的相应位置;
所述获取delta值模块,用于在接收到更新数据片段后,执行块内更新的数据信息存储节点,通过计算获得更新数据片段对应的校验信息变化delta值;
所述缓存更新模块,用于校验信息存储节点执行缓存更新,把所述校验信息变化delta值按先后顺序存储在所述校验信息节点预先开辟的共享缓存空间里。
7.根据权利要求6所述的基于校验信息块共享缓存机制的高效信息更新系统,其特征在于:共享缓存空间如果被占用满,则把之前存储的校验信息变化delta值合并到校验信息存储节点空间中,依次释放共享缓存空间来存储新的校验信息变化delta值。
8.根据权利要求6所述的基于校验信息块共享缓存机制的高效信息更新系统,其特征在于:所述把要更新的数据片段信息覆盖写入到对应的数据块的相应位置,具体为:客户端把要修改的数据片段信息连同数据片段信息在数据块内的偏移量,发送给主数据信息存储节点中,主数据信息存储节点根据偏移量把接收到的更新的数据片段分割成若干个子更新数据,每个子更新数据对应一个各自的目标数据块;所述目标数据块是包含旧数据的数据块;并将每个子更新数据发送到存储目标数据块的数据信息存储节点中,覆盖更新到目标数据块的相应位置。
9.根据权利要求8所述的基于校验信息块共享缓存机制的高效信息更新系统,其特征在于:所述通过计算获得更新数据片段对应的校验信息变化delta值,具体为:在一个数据块Dl被更新成另外一个数据块D'l,下标l为1<l<n,n为n个数据块;则新的校验信息P'i(1≤i≤n-k)计算为:
Figure FDA0002444644980000031
k为一个数据片段分割成k等分的子更新数据,D为数据块,P为校验信息,γ为数据块编码的编码系数;即数据块改变后相应的校验信息变化delta值为γil(D'l-Dl)。
10.根据权利要求9所述的基于校验信息块共享缓存机制的高效信息更新系统,其特征在于:当只是一数据块的一部分进行更新,那么同样计算相应的校验信息的一部分变化delta值为:数据块Dl在偏移量为ο的一段数据片段发生改变,那么相应的校验信息Pi的偏移量为
Figure FDA0002444644980000032
的一段数据片段也发生改变,ο和
Figure FDA0002444644980000033
相同或不同:
Figure FDA0002444644980000041
γil(D′l(ο)-Dl(ο))定义为数据块Dl的校验信息变化delta值ΔDl
CN202010275534.0A 2020-04-09 2020-04-09 基于校验信息块共享缓存机制的高效信息更新方法及系统 Pending CN111522825A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010275534.0A CN111522825A (zh) 2020-04-09 2020-04-09 基于校验信息块共享缓存机制的高效信息更新方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010275534.0A CN111522825A (zh) 2020-04-09 2020-04-09 基于校验信息块共享缓存机制的高效信息更新方法及系统

Publications (1)

Publication Number Publication Date
CN111522825A true CN111522825A (zh) 2020-08-11

Family

ID=71911243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010275534.0A Pending CN111522825A (zh) 2020-04-09 2020-04-09 基于校验信息块共享缓存机制的高效信息更新方法及系统

Country Status (1)

Country Link
CN (1) CN111522825A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113157715A (zh) * 2021-05-12 2021-07-23 厦门大学 纠删码数据中心机架协同更新方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9489456B1 (en) * 2006-11-17 2016-11-08 Blue Coat Systems, Inc. Previewing file information over a network
CN107766170A (zh) * 2016-08-23 2018-03-06 北京计算机技术及应用研究所 单一存储池的差量日志式纠删码更新方法
CN109684338A (zh) * 2018-11-20 2019-04-26 深圳花儿数据技术有限公司 一种存储系统的数据更新方法
CN110262922A (zh) * 2019-05-15 2019-09-20 中国科学院计算技术研究所 基于副本数据日志的纠删码更新方法及系统
CN110515541A (zh) * 2019-07-29 2019-11-29 西安交通大学 分布式存储中纠删码非对齐数据更新方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9489456B1 (en) * 2006-11-17 2016-11-08 Blue Coat Systems, Inc. Previewing file information over a network
CN107766170A (zh) * 2016-08-23 2018-03-06 北京计算机技术及应用研究所 单一存储池的差量日志式纠删码更新方法
CN109684338A (zh) * 2018-11-20 2019-04-26 深圳花儿数据技术有限公司 一种存储系统的数据更新方法
CN110262922A (zh) * 2019-05-15 2019-09-20 中国科学院计算技术研究所 基于副本数据日志的纠删码更新方法及系统
CN110515541A (zh) * 2019-07-29 2019-11-29 西安交通大学 分布式存储中纠删码非对齐数据更新方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113157715A (zh) * 2021-05-12 2021-07-23 厦门大学 纠删码数据中心机架协同更新方法
CN113157715B (zh) * 2021-05-12 2022-06-07 厦门大学 纠删码数据中心机架协同更新方法

Similar Documents

Publication Publication Date Title
US11068395B2 (en) Cached volumes at storage gateways
US10956601B2 (en) Fully managed account level blob data encryption in a distributed storage environment
JP6778795B2 (ja) データを記憶するための方法、装置及びシステム
US10764045B2 (en) Encrypting object index in a distributed storage environment
CN110262922B (zh) 基于副本数据日志的纠删码更新方法及系统
US11080277B2 (en) Data set compression within a database system
US10031813B2 (en) Log record management
US10659225B2 (en) Encrypting existing live unencrypted data using age-based garbage collection
KR101694984B1 (ko) 비대칭 클러스터링 파일시스템에서의 패리티 산출 방법
US9559889B1 (en) Cache population optimization for storage gateways
US7451290B2 (en) Method and mechanism for on-line data compression and in-place updates
US20170024315A1 (en) Efficient garbage collection for a log-structured data store
US7844643B2 (en) Storage management system with integrated continuous data protection and remote copy
US10725666B2 (en) Memory-based on-demand data page generation
US20120089781A1 (en) Mechanism for retrieving compressed data from a storage cloud
CN102591947A (zh) 用于数据去重复的快速且低ram占用的索引
US10909143B1 (en) Shared pages for database copies
US20210326320A1 (en) Data segment storing in a database system
CN107798063B (zh) 快照处理方法和快照处理装置
CN111522825A (zh) 基于校验信息块共享缓存机制的高效信息更新方法及系统
US10073874B1 (en) Updating inverted indices
WO2023082556A1 (zh) 一种面向内存键值纠删码的混合数据更新方法及存储系统
US7925827B2 (en) Method and system for dirty time logging
US10558618B1 (en) Metadata compression
US8938594B2 (en) Method and system for metadata-based resilvering

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200811