数据处理方法及装置制造方法及图纸

技术编号:31513374 阅读:18 留言:0更新日期:2021-12-22 23:55
本发明专利技术公开了一种数据处理方法及装置。其中,该方法包括:采用单级目录结构,将获取的快照数据进行存储,其中,快照数据包括多个数据块和用于指示数据块的数据块指针;根据快照数据生成对应的元数据,其中,元数据包括数据块指针的索引,元数据为键值对结构;根据快照数据的更新,更新元数据。本发明专利技术解决了相关技术中的系统的快照数据需要依赖指针将数据块连接成有向无环图数据结构的方式,存在结构复杂,数据量大,容易出错的技术问题。容易出错的技术问题。容易出错的技术问题。

【技术实现步骤摘要】
数据处理方法及装置


[0001]本专利技术涉及数据处理领域,具体而言,涉及一种数据处理方法及装置。

技术介绍

[0002]当前实现快照有主要有两种技术,一种是写时复制(COW),另一种是写时重定向(ROW)。
[0003]COW:在创建快照时,会分配一个卷作为相对于源卷的快照卷。在创建快照后第一次写入数据块时,块的原始数据会从源卷复制到快照卷。复制后,再对源卷中的块进行写操作。因此,快照的数据图像被保留。源卷和快照卷的组合呈现数据的时间点映像。创建快照后,所有后续读输入/输出 I/O 都在源卷上执行。对块进行第一次更改后的写 输入/输出 I/O 也在源卷上执行,即只有对块的第一次写入才会将原始数据复制到快照卷。
[0004]ROW:写入时复制在第一次写入块时需要三个输入/输出 I/O 操作:1) 从源卷中读取原始块; 2) 将原始块写入快照卷; 3) 在源卷中写入新数据。这些 输入/输出I/O 操作在生产时完成,这可能会对应用程序性能产生负面影响。为了克服这一点,可以进行写入时重定向,如图1

2所示,使源卷中的原始块保持不变,并对快照卷执行新的写入操作。这消除了写时复制方法的额外输入/输出 I/O 操作。在创建快照之后,所有后续的写 输入/输出I/O 都在快照卷上执行,而读输入/输出 I/O 可能来自源卷或快照卷,具体取决于在快照创建之后块是否已更改。快照数据的时间点映像是源卷本身,因为在创建快照之后源卷一直是只读的。
[0005]现阶段而言,ROW +分布式存储的快照方式是业界发展的主要方向。ROW 快照中的原始数据依旧保留在源数据卷中,并且为了保证快照数据的完整性,在创建快照时,源数据卷状态会由读写变成只读的。如果一个存储系统做了多次快照,就产生了一个快照链,磁盘卷始终挂载在快照链的最末端,即写操作全都会落盘到最末端的快照卷中。该特征导致了一个问题,就是如果一共做了 10 次快照,那么在恢复到最新的快照点时,则需要通过合并 10 个快照卷来得到一个完整的最新快照点数据;如果是恢复到第 8 次快找时间点,那么就需要将前 8 次的快照卷合并成为一个完整的快照点数据。因此,ROW在传统存储场景下最大的问题是对读性能影响比较大。
[0006]在每一个存储设备被格式化创建文件系统后,所有的文件大致被分为了两部分,分别是索引节点inode和数据块block。其中索引节点inode用来存储文件属性信息,其中包括了文件大小,文件的归属者,文件的归属组,权限,类型,修改时间以及指向文件实体数据(block)的指针,即元数据;Super

block会记录整个档案系统的整体信息。数据块block中存储的就是文件的实际数据,比如说,照片,视频,音频等等。
[0007]传统ROW快照是
ꢀ“
用指针把数据块block链接成有向无环图数据结构”的方式来表达快照信息的。修改数据时不覆盖原来的数据块block,先将更新数据写入一个新的数据块block,然后创建一个新的索引节点inode指向更新的数据,在上层继续创建新的索引节点inode指向下层更新过的索引节点inode,直到根节点。此时,通过当前的Super

block可以
读到当前数据,通过老的Super

block可以读到快照数据。这种方法有几个缺点:(1)数据结构复杂,实现难度大,易于出错;(2)新写入数据所需更新的元数据量大,写入的物理数据量是写入数据量的多倍,不适合固态硬盘SSD。新写入一个数据块,需要从“快照根节点”到“新数据块”的所有中间节点;(3)“有向无环图”难以使用KV数据来存储。
[0008]针对上述的问题,目前尚未提出有效的解决方案。

技术实现思路

[0009]本专利技术实施例提供了一种数据处理方法及装置,以至少解决相关技术中的系统的快照数据需要依赖指针将数据块连接成有向无环图数据结构的方式,存在结构复杂,数据量大,容易出错的技术问题。
[0010]根据本专利技术实施例的一个方面,一种数据处理方法,包括:采用单级目录结构,将获取的快照数据进行存储,其中,所述快照数据包括多个数据块和用于指示所述数据块的数据块指针;根据所述快照数据生成对应的元数据,其中,所述元数据包括所述数据块指针的索引,所述元数据为键值对结构;根据所述快照数据的更新,更新所述元数据。
[0011]可选的,采用单级目录结构,将获取的快照数据进行存储包括:确定所述快照数据中的数据块的目标位置对应的不同快照卷的一个或多个数据块,其中,所述不同快照卷包括先后多次进行快照得到的多个快照卷,所述快照数据为当前工作的当前卷,所述快照数据包括多个不同快照卷的多个当前工作的数据块;将所述目标位置对应的一个或多个数据块存储在存储位置互相不超过预设距离的位置。
[0012]可选的,所述键值对为key

value对,所述key值包括卷标识,块标识和快照标识,所述value值包括对应数据块的地址,所述方法还包括:接收查找第一目标数据块的请求,其中,所述请求包括卷标识和块标识的二元组;根据所述二元组计算哈希值;将所述哈希值作为索引,查找所述二元组所在的区间,其中,所述区间存储有序的键值对记录;通过包括所述卷标识,所述块标识和快照标识,在所述区间对应的键值对记录中查找对应的目标键值对,并通过所述目标键值对确定对应的第一目标数据块,其中,所述快照标识用于标识不同的快照卷。
[0013]可选的,接收对所述快照数据的第二目标数据块的写请求,其中,所述第二目标数据块为所述快照数据中任一第一数据块位置的数据块;在所述当前卷的所述第一数据块位置不存在数据块的情况下,将所述第二目标数据块写入所述快照数据的当前卷的所述第一数据块位置;在所述当前卷的所述第一数据块位置存在数据块的情况下,将所述目标数据块覆盖所述第一数据块位置的数据块。
[0014]可选的,接收读取第三目标数据块的读请求,其中,所述第三目标数据块为所述快照数据中任一第二数据块位置的数据块;在所述当前卷的所述第二数据块位置存在数据块的情况下,将所述当前卷的所述第二数据块位置的数据块进行读取;在所述当前卷的所述第二数据块位置不存在数据块的情况下,将所述当前卷之前的快照卷的所述第二数据块位置的数据块进行读取;在所述第二数据块位置的所有快照卷都没有数据块的情况下,响应所述读请求返回全零数据块。
[0015]可选的,接收对所述快照卷的删除操作,其中,所述删除操作包括要删除的快照卷的第一快照标识,以及与所述要删除的快照卷相邻的之后一个快照卷的第二快照标识;根
据所述第一快照标识和所述第二快照标识,确定在所述第一快照标识的快照卷中存在,在所述第二快照标识的快照卷中不存在的数据块为被引用数据块;响应所述删除操作,将所述第一快照标识的快照卷中除所述被引用数据块之外的数据块删除;回收被删除的数据块的空间,以及被删除的数据块引用的数据块的空间。
[0016]可选的,将所述被删除的快照卷的快照标识进行记录本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:采用单级目录结构,将获取的快照数据进行存储,其中,所述快照数据包括多个数据块和用于指示所述数据块的数据块指针;根据所述快照数据生成对应的元数据,其中,所述元数据包括所述数据块指针的索引,所述元数据为键值对结构;根据所述快照数据的更新,更新所述元数据。2.根据权利要求1所述的方法,其特征在于,采用单级目录结构,将获取的快照数据进行存储包括:确定所述快照数据中的数据块的目标位置对应的不同快照卷的一个或多个数据块,其中,所述不同快照卷包括先后多次进行快照得到的多个快照卷,所述快照数据为当前工作的当前卷,所述快照数据包括多个不同快照卷的多个当前工作的数据块;将所述目标位置对应的一个或多个数据块存储在存储位置互相不超过预设距离的位置。3.根据权利要求2所述的方法,其特征在于,所述键值对为key

value对,所述key值包括卷标识,块标识和快照标识,所述value值包括对应数据块的地址,所述方法还包括:接收查找第一目标数据块的请求,其中,所述请求包括卷标识和块标识的二元组;根据所述二元组计算哈希值;将所述哈希值作为索引,查找所述二元组所在的区间,其中,所述区间存储有序的键值对记录;通过包括所述卷标识,所述块标识和快照标识,在所述区间对应的键值对记录中查找对应的目标键值对,并通过所述目标键值对确定对应的第一目标数据块,其中,所述快照标识用于标识不同的快照卷。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:接收对所述快照数据的第二目标数据块的写请求,其中,所述第二目标数据块为所述快照数据中任一第一数据块位置的数据块;在所述当前卷的所述第一数据块位置不存在数据块的情况下,将所述第二目标数据块写入所述快照数据的当前卷的所述第一数据块位置;在所述当前卷的所述第一数据块位置存在数据块的情况下,将所述目标数据块覆盖所述第一数据块位置的数据块。5.根据权利要求3所述的方法,其特征在于,所述方法还包括:接收读取第三目标数据块的读请求,其中,所述第三目标数据块为所述快照数据中任一第二数据块位置的数据块;在...

【专利技术属性】
技术研发人员:康玉竹黄岩
申请(专利权)人:云和恩墨北京信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1