CN103729352A - 分布式文件系统对多个副本数据进行处理的方法及该系统 - Google Patents

分布式文件系统对多个副本数据进行处理的方法及该系统 Download PDF

Info

Publication number
CN103729352A
CN103729352A CN201210381299.0A CN201210381299A CN103729352A CN 103729352 A CN103729352 A CN 103729352A CN 201210381299 A CN201210381299 A CN 201210381299A CN 103729352 A CN103729352 A CN 103729352A
Authority
CN
China
Prior art keywords
version number
copy
data
data block
address set
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.)
Granted
Application number
CN201210381299.0A
Other languages
English (en)
Other versions
CN103729352B (zh
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.)
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201210381299.0A priority Critical patent/CN103729352B/zh
Publication of CN103729352A publication Critical patent/CN103729352A/zh
Application granted granted Critical
Publication of CN103729352B publication Critical patent/CN103729352B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

Abstract

本发明公开了分布式文件系统对多个副本数据进行处理的方法及该系统,其中,该方法包括:客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号;客户端从与地址集合包含的各节点地址对应的数据节点读取副本数据;客户端判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据。本发明方案能够保证分布式文件系统中多个副本数据的一致性。

Description

分布式文件系统对多个副本数据进行处理的方法及该系统
技术领域
本发明涉及数据处理技术,尤其涉及分布式文件系统对多个副本数据进行处理的方法及该系统。
背景技术
参见图1,为现有技术的分布式文件系统结构示意图,该系统包括客户端、主节点服务器以及多个数据节点。实际应用中,每个文件被划分为多个数据块,每个数据块有多个副本数据,分别存储在多个数据节点上;副本数据,也就是数据块的备份数据。
当客户端需要从数据节点读取数据块的副本备份数据时,客户端从主节点服务器获取数据块多个副本数据的地址集合,从与地址集合包含的各节点地址对应的数据节点读取副本数据。
数据节点上保存的副本数据预先写入,在写入过程中,由于写入错误或数据节点故障等多种原因,常出现写入某些数据节点的数据发生损坏;而现有技术只在主节点服务器记录了多个副本数据的地址集合,不能获知哪些节点地址对应的数据节点上的数据损坏;这样,导致进行多个副本数据的读取时,读取到错误的数据,不能保证多个副本数据的一致性。
发明内容
本发明提供了一种分布式文件系统对多个副本数据进行处理的方法,该方法能够保证分布式文件系统中多个副本数据的一致性。
本发明提供了一种分布式文件系统,该系统能够保证分布式文件系统中多个副本数据的一致性。
一种分布式文件系统对多个副本数据进行处理的方法,该方法包括:
客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号;
客户端从与地址集合包含的各节点地址对应的数据节点读取副本数据;
客户端判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据。
一种分布式文件系统,该系统包括客户端、主节点服务器和数据节点;
所述客户端,用于从主节点服务器获取数据块多个副本数据的地址集合和正确版本号;从与地址集合包含的各节点地址对应的数据节点读取副本数据;客户端还用于判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据;
所述主节点服务器,用于根据请求向客户端反馈数据块多个副本数据的地址集合和正确版本号;
所述数据节点,用于根据请求向客户端提供副本数据。
从上述方案可以看出,本发明中,不仅在主节点服务器记录数据块多个副本数据的地址集合,还记录多个副本数据的正确版本号;这样,客户端进行数据读取后,对数据中包含的版本号与正确版本号进行比较,如果一致,则确定为正确的数据,并进行保留,如果不一致,则确定为损坏的数据,丢掉这部分损坏的数据。本发明通过正确版本号对读取的副本数据进行判断,保证了数据块多副本数据的一致性。
附图说明
图1为现有分布式文件系统的结构示意图;
图2为本发明分布式文件系统对多个副本数据进行处理的方法示意性流程图;
图3为本发明分布式文件系统写入副本数据的方法流程图实例一;
图4为本发明分布式文件系统写入副本数据的方法流程图实例二;
图5为采用图4实例在相邻数据块中记录节点数据块信息的示意图;
图6为本发明分布式文件系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
本发明中,不仅在主节点服务器记录数据块多个副本数据的地址集合,还记录多个副本数据的正确版本号,通过正确版本号对读取的副本数据进行判断,以保证数据块多副本数据的一致性。参见图2,为本发明分布式文件系统对多个副本数据进行处理的方法示意性流程图,其包括以下步骤:
步骤201,客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号。
每个文件被划分为多个数据块,每个数据块有多个副本数据,分别存储在多个数据节点上;副本数据,也就是数据块的备份数据。主节点记录了各文件包含的各数据块的信息,包括各数据块多个副本数据的地址集合和正确版本号,具体地,可对应数据块编号记录地址集合和正确版本号。在需要时,客户端可从主节点获取关于某文件的数据块信息,即数据块多个副本数据的地址集合和正确版本号。
步骤202,客户端从与地址集合包含的各节点地址对应的数据节点读取副本数据。
步骤203,客户端判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据。
如果不一致,说明数据发生损坏,则丢掉读取的这部分副本数据。
数据节点上保存的副本数据由客户端预先写入,写入数据节点的副本数据中包含版本号。向数据节点写入副本数据的方式多种多样,下面例举两种进行说明。
方式一、
图3为采用方式一写入副本数据的方法流程图,其包括以下步骤:
步骤301,客户端为数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为数据块设置版本号。
一般地,客户端预先从主节点服务器获取了多个节点地址,以供需要时使用,本步骤中,客户端从获取的节点地址中为数据块的多个副本数据选取节点地址。
将地址集合表示为node_set,假设其包含三个节点地址(ip1,ip2,ip3),ip1、ip2和ip3为该数据块的三个副本分别所在的三个不同数据节点的ip地址;将设置的版本号表示为chunk_version。
步骤302,客户端向节点地址对应的数据节点写入副本数据,并在写入各数据节点的副本数据中添加设置的版本号。
步骤303,如果副本数据在写入过程中发生损坏,则客户端增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中,并将增大后的版本号作为正确版本号,通知主节点服务器在硬盘上记录数据块多个副本数据的地址集合和正确版本号。
在写入过程中,由于写入错误或数据节点故障等多种原因,常出现写入某些数据节点的数据发生损坏;客户端获知出现数据损坏时,执行本步骤。
地址集合可采用摘要值的方式表示,具体地:将地址集合包含的多个节点地址经过排序,而后计算出一个摘要值,根据该摘要值,便可获知对应的地址集合。
步骤303之后,还可能进行数据追加写入,具体包括:
客户端从主节点服务器获取数据块的多个副本数据的地址集合和正确版本号;
客户端向与地址集合包含的各节点地址对应的数据节点,写入追加的数据;
如果数据在写入过程中发生损坏,则客户端增大从主节点服务器获取的版本号,将增大的版本号添加到写入数据节点的数据中;并将增大后的版本号作为最终的正确版本号,通知主节点服务器更新数据块多个副本数据的正确版本号。
同样地,以前述地址集合node_set为(ip1,ip2,ip3)进行说明。假设上次写入数据的chunk_version=4。这次追加写的时候,因某种原因ip3无法写入,本次能写入的节点地址为ip1、ip2;由于这次追加写的地址和上次不一致,即ip3上发生了数据损坏,便增大chunk_version,chunk_version增加为5;也就是,经过追加写以后ip1,ip2上的该数据块的chunk_version=5,ip3上chunk_version=4。而后,将5作为最终的正确版本号,并通主节点服务器更新该数据块的正确版本号为5。
而后进行数据读取:客户端从主节点服务器获取node_set(ip1,ip2,ip3)和chunk_version(5),分别从ip1、ip2和ip3上读取副本数据,此时,可能ip3上又能读取到数据了,但其chunk_version=4,和正确版本号5不一致,则需要丢掉从ip3上获取的数据。该过程中,错误数据最终会被剔出掉,从而保证了多个chunk副本之间的数据一致性。
采用方式一写入副本数据后,执行图2流程时,步骤201具体包括:
客户端向主节点服务器发送包含文件ID的信息获取请求;
主节点服务器从硬盘读取与文件ID对应的各数据块多个副本数据的地址集合和正确版本号,将读取的地址集合和正确版本号反馈给客户端。
方式二、
图4为采用方式二写入副本数据的方法流程图,其包括以下步骤:
步骤401,客户端为当前数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为当前数据块设置版本号。
一个文件包括多个数据块,每个数据块有多个副本数据;进行数据写入时,按照数据块编号,逐个完成数据块的写入。
一般地,客户端预先从主节点服务器获取了多个节点地址,以供需要时使用,本步骤中,客户端从获取的节点地址中为当前数据块的多个副本数据选取节点地址。
步骤402,客户端向节点地址对应的数据节点写入副本数据,在写入各数据节点的副本数据中添加设置的版本号,并添加上一数据块的地址集合和正确版本号。
举例说明,文件A包括5个数据块,分别为数据块0、数据块1、数据块2、数据块3和数据块4,如图5所示;完成数据块0的写入后,将数据块0多个副本数据的地址集合和正确版本号写入数据块1的多个副本数据中,具体可写入副本数据的头部;完成数据块1的写入后,将数据块1多个副本数据的地址集合和正确版本号V1写入数据块2的多个副本数据中;完成数据块2的写入后,将数据块2多个副本数据的地址集合和正确版本号V2写入数据块3的多个副本数据中;完成数据块3的写入后,将数据块3多个副本数据的地址集合和正确版本号V3写入数据块4的多个副本数据中;完成数据块4的写入后,由于数据块4为最后一个数据块,则通知主节点服务器在硬盘上记录数据块4多个副本数据的地址集合和正确版本号V4。关于最有一个数据块地址集合和正确版本号的记录,记载在步骤403中。
步骤403,如果副本数据在写入过程中发生损坏,则客户端增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中;将增大后的版本号作为当前数据块的正确版本号,判断当前数据块是否为最有一个数据块,如果是,将当前数据块的地址集合和正确版本号记录到下一数据块的各副本数据中,如果不是,则通知主节点服务器在硬盘上记录当前数据块多个副本数据的地址集合和正确版本号。
主节点服务器及其下属的多个数据节点为一个集群,主节点服务器的硬盘上存储了该集群的诸多重要属性信息;采用方式一,需要在主节点服务器硬盘上存储某文件的所有数据块副本数据的地址集合和正确版本号;而采用方式二,只需在主节点服务器硬盘上记录某文件的最后一数据块副本数据的地址集合和正确版本号,从而,大大节省主节点服务器的硬盘空间,提高了集群的容量。
采用方式二写入数据后,执行图2流程时,步骤201具体包括:
客户端向主节点服务器发送包含文件ID的信息获取请求;
主节点服务器从硬盘读取与文件ID对应的最后一个数据块多个副本数据的地址集合和正确版本号;并向各数据节点发送信息获取请求,接收数据节点反馈的除最后一个数据块外其他各数据块多个副本数据的地址集合和正确版本号,存储在内存中;
主节点服务器将与文件ID对应的所有数据块的地址集合和正确版本号反馈给客户端。
本发明中,不仅在主节点服务器记录数据块多个副本数据的地址集合,还记录多个副本数据的正确版本号;这样,客户端进行副本数据读取后,对读取的副本数据包含的版本号与正确版本号进行比较,如果一致,则确定为正确的副本数据,并进行保留,如果不一致,则确定为损坏的副本数据,丢掉这部分损坏的副本数据。这样,通过正确版本号对读取的副本数据进行判断,保证了数据块多副本数据的一致性。
参见图6,为本发明分布式文件系统的结构示意图,其包括客户端、主节点服务器和数据节点;
所述客户端,用于从主节点服务器获取数据块多个副本数据的地址集合和正确版本号;从与地址集合包含的各节点地址对应的数据节点读取副本数据;客户端还用于判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据;
所述主节点服务器,用于根据请求向客户端反馈数据块多个副本数据的地址集合和正确版本号;
所述数据节点,用于根据请求向客户端提供副本数据。
可选地,所述客户端包括获取单元、读取单元和判断单元,所述主节点服务器包括信息反馈单元,所述数据节点包括数据提供单元;
所述获取单元,用于从主节点服务器获取数据块多个副本数据的地址集合和正确版本号,将地址集合发送给读取单元,将正确版本号发送给判断单元;
所述读取单元,用于从与地址集合包含的各节点地址对应的数据节点读取副本数据,将副本数据包含的版本号发送给判断单元;
所述判断单元,用于判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据;
所述信息反馈单元,用于根据请求向客户端反馈数据块多个副本数据的地址集合和正确版本号;
所述数据提供单元,用于根据请求向客户端提供副本数据。
可选地,所述客户端还包括第一选取设置单元、第一写入单元和第一更新通知单元;
所述第一选取设置单元,用于为数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为数据块设置版本号;将选取的节点地址和设置的版本号发送给第一写入单元和第一更新通知单元;
所述第一写入单元,用于向节点地址对应的数据节点写入副本数据,并在写入各数据节点的副本数据中添加设置的版本号;
所述第一更新通知单元,用于判断出数据在写入过程中发生损坏,则增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中;并将增大后的版本号作为正确版本号,通知主节点服务器在硬盘上记录数据块多个副本数据的地址集合和正确版本号。
可选地,所述客户端包括第二选取设置单元、第二写入单元和第二更新通知单元;
所述第二选取设置单元,用于为当前数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为当前数据块设置版本号;将选取的节点地址和设置的版本号发送给第二写入单元和第二更新通知单元;
所述第二写入单元,用于向节点地址对应的数据节点写入副本数据,在写入各数据节点的副本数据中添加设置的版本号,并添加上一数据块的地址集合和正确版本号;
所述第二更新通知单元,用于判断出数据在写入过程中发生损坏,则增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中;将增大后的版本号作为当前数据块的正确版本号,判断当前数据块是否为最有一个数据块,如果是,将当前数据块的地址集合和正确版本号记录到下一数据块的各副本数据中,如果不是,则通知主节点服务器在硬盘上记录当前数据块多个副本数据的地址集合和正确版本号。
可选地,所述获取单元包括请求发送子单元和接收子单元,所述主节点服务器包括信息获取单元;
所述请求发送子单元,用于向信息获取单元发送包含文件ID的信息获取请求;
所述接收子单元,用于接收信息反馈单元发送的与文件ID对应的所有数据块的地址集合和正确版本号;
所述信息获取单元,用于接收请求发送子单元发送的信息获取请求,从硬盘读取与文件ID对应的最后一个数据块多个副本数据的地址集合和正确版本号;并向各数据节点发送信息获取请求,接收数据节点反馈的除最后一个数据块外其他各数据块多个副本数据的地址集合和正确版本号,存储在内存中;将与文件ID对应的所有数据块的地址集合和正确版本号发送给所述信息反馈单元;
所述信息反馈单元,用于将与文件ID对应的所有数据块的地址集合和正确版本号反馈给客户端。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (11)

1.一种分布式文件系统对多个副本数据进行处理的方法,其特征在于,该方法包括:
客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号;
客户端从与地址集合包含的各节点地址对应的数据节点读取副本数据;
客户端判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据。
2.如权利要求1所述的方法,其特征在于,所述客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号之前,该方法还包括:
客户端为数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为数据块设置版本号;
客户端向节点地址对应的数据节点写入副本数据,并在写入各数据节点的副本数据中添加设置的版本号;
如果副本数据在写入过程中发生损坏,则客户端增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中,并将增大后的版本号作为正确版本号,通知主节点服务器在硬盘上记录数据块多个副本数据的地址集合和正确版本号。
3.如权利要求2所述的方法,其特征在于,所述通知主节点服务器在硬盘记录数据块多个副本数据的地址集合和正确版本号之后,该方法还包括数据追加写入,具体地:
客户端从主节点服务器获取数据块的多个副本数据的地址集合和正确版本号;
客户端向与地址集合包含的各节点地址对应的数据节点,写入追加的数据;
如果数据在写入过程中发生损坏,则客户端增大从主节点服务器获取的版本号,将增大的版本号添加到写入数据节点的数据中;并将增大后的版本号作为最终的正确版本号,通知主节点服务器更新数据块多个副本数据的正确版本号。
4.如权利要求2所述的方法,其特征在于,所述客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号,具体包括:
客户端向主节点服务器发送包含文件ID的信息获取请求;
主节点服务器从硬盘读取与文件ID对应的各数据块多个副本数据的地址集合和正确版本号,将读取的地址集合和正确版本号反馈给客户端。
5.如权利要求1所述的方法,其特征在于,所述客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号之前,该方法还包括:
客户端为当前数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为当前数据块设置版本号;
客户端向节点地址对应的数据节点写入副本数据,在写入各数据节点的副本数据中添加设置的版本号,并添加上一数据块的地址集合和正确版本号;
如果副本数据在写入过程中发生损坏,则客户端增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中;将增大后的版本号作为当前数据块的正确版本号,判断当前数据块是否为最有一个数据块,如果是,将当前数据块的地址集合和正确版本号记录到下一数据块的各副本数据中,如果不是,则通知主节点服务器在硬盘上记录当前数据块多个副本数据的地址集合和正确版本号。
6.如权利要求5所述的方法,其特征在于,所述客户端从主节点服务器获取数据块多个副本数据的地址集合和正确版本号,具体包括:
客户端向主节点服务器发送包含文件ID的信息获取请求;
主节点服务器从硬盘读取与文件ID对应的最后一个数据块多个副本数据的地址集合和正确版本号;并向各数据节点发送信息获取请求,接收数据节点反馈的除最后一个数据块外其他各数据块多个副本数据的地址集合和正确版本号,存储在内存中;
主节点服务器将与文件ID对应的所有数据块的地址集合和正确版本号反馈给客户端。
7.一种分布式文件系统,其特征在于,该系统包括客户端、主节点服务器和数据节点;
所述客户端,用于从主节点服务器获取数据块多个副本数据的地址集合和正确版本号;从与地址集合包含的各节点地址对应的数据节点读取副本数据;客户端还用于判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据;
所述主节点服务器,用于根据请求向客户端反馈数据块多个副本数据的地址集合和正确版本号;
所述数据节点,用于根据请求向客户端提供副本数据。
8.如权利要求7所述的系统,其特征在于,所述客户端包括获取单元、读取单元和判断单元,所述主节点服务器包括信息反馈单元,所述数据节点包括数据提供单元;
所述获取单元,用于从主节点服务器获取数据块多个副本数据的地址集合和正确版本号,将地址集合发送给读取单元,将正确版本号发送给判断单元;
所述读取单元,用于从与地址集合包含的各节点地址对应的数据节点读取副本数据,将副本数据包含的版本号发送给判断单元;
所述判断单元,用于判断读取的副本数据包含的版本号与正确版本号是否一致,如果是,则保留读取的副本数据,否则丢掉读取的副本数据;
所述信息反馈单元,用于根据请求向客户端反馈数据块多个副本数据的地址集合和正确版本号;
所述数据提供单元,用于根据请求向客户端提供副本数据。
9.如权利要求8所述的系统,其特征在于,所述客户端还包括第一选取设置单元、第一写入单元和第一更新通知单元;
所述第一选取设置单元,用于为数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为数据块设置版本号;将选取的节点地址和设置的版本号发送给第一写入单元和第一更新通知单元;
所述第一写入单元,用于向节点地址对应的数据节点写入副本数据,并在写入各数据节点的副本数据中添加设置的版本号;
所述第一更新通知单元,用于判断出数据在写入过程中发生损坏,则增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中;并将增大后的版本号作为正确版本号,通知主节点服务器在硬盘上记录数据块多个副本数据的地址集合和正确版本号。
10.如权利要求8所述的系统,其特征在于,所述客户端包括第二选取设置单元、第二写入单元和第二更新通知单元;
所述第二选取设置单元,用于为当前数据块的多个副本数据分别选取节点地址,由选取的节点地址组成地址集合,并为当前数据块设置版本号;将选取的节点地址和设置的版本号发送给第二写入单元和第二更新通知单元;
所述第二写入单元,用于向节点地址对应的数据节点写入副本数据,在写入各数据节点的副本数据中添加设置的版本号,并添加上一数据块的地址集合和正确版本号;
所述第二更新通知单元,用于判断出数据在写入过程中发生损坏,则增大设置的版本号,将增大的版本号添加到写入各数据节点的副本数据中;将增大后的版本号作为当前数据块的正确版本号,判断当前数据块是否为最有一个数据块,如果是,将当前数据块的地址集合和正确版本号记录到下一数据块的各副本数据中,如果不是,则通知主节点服务器在硬盘上记录当前数据块多个副本数据的地址集合和正确版本号。
11.如权利要求10所述的系统,其特征在于,所述获取单元包括请求发送子单元和接收子单元,所述主节点服务器包括信息获取单元;
所述请求发送子单元,用于向信息获取单元发送包含文件ID的信息获取请求;
所述接收子单元,用于接收信息反馈单元发送的与文件ID对应的所有数据块的地址集合和正确版本号;
所述信息获取单元,用于接收请求发送子单元发送的信息获取请求,从硬盘读取与文件ID对应的最后一个数据块多个副本数据的地址集合和正确版本号;并向各数据节点发送信息获取请求,接收数据节点反馈的除最后一个数据块外其他各数据块多个副本数据的地址集合和正确版本号,存储在内存中;将与文件ID对应的所有数据块的地址集合和正确版本号发送给所述信息反馈单元;
所述信息反馈单元,用于将与文件ID对应的所有数据块的地址集合和正确版本号反馈给客户端。
CN201210381299.0A 2012-10-10 2012-10-10 分布式文件系统对多个副本数据进行处理的方法及该系统 Active CN103729352B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210381299.0A CN103729352B (zh) 2012-10-10 2012-10-10 分布式文件系统对多个副本数据进行处理的方法及该系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210381299.0A CN103729352B (zh) 2012-10-10 2012-10-10 分布式文件系统对多个副本数据进行处理的方法及该系统

Publications (2)

Publication Number Publication Date
CN103729352A true CN103729352A (zh) 2014-04-16
CN103729352B CN103729352B (zh) 2017-07-28

Family

ID=50453430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210381299.0A Active CN103729352B (zh) 2012-10-10 2012-10-10 分布式文件系统对多个副本数据进行处理的方法及该系统

Country Status (1)

Country Link
CN (1) CN103729352B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516230A (zh) * 2014-10-15 2016-04-20 深圳市腾讯计算机系统有限公司 一种数据处理方法及装置
CN106302625A (zh) * 2015-06-26 2017-01-04 阿里巴巴集团控股有限公司 数据更新方法、装置及相关系统
CN106662983A (zh) * 2015-12-31 2017-05-10 华为技术有限公司 分布式存储系统中的数据重建的方法、装置和系统
WO2017084563A1 (zh) * 2015-11-19 2017-05-26 华为技术有限公司 一种基于分布式系统的文件读取方法及装置
CN107423637A (zh) * 2017-07-31 2017-12-01 南京理工大学 支持云上电子病历数据可追踪的完整性审计方法
CN109558086A (zh) * 2018-12-03 2019-04-02 浪潮电子信息产业股份有限公司 一种数据读取方法、系统及相关组件
CN109739434A (zh) * 2018-12-03 2019-05-10 中科恒运股份有限公司 文件读取地址获取方法、文件读取方法和终端设备
CN110377577A (zh) * 2018-04-11 2019-10-25 北京嘀嘀无限科技发展有限公司 数据同步方法、装置、系统和计算机可读存储介质
CN110825309A (zh) * 2018-08-08 2020-02-21 华为技术有限公司 数据读取方法、装置及系统、分布式系统
CN114594914A (zh) * 2022-03-17 2022-06-07 阿里巴巴(中国)有限公司 用于分布式存储系统的控制方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161860A1 (en) * 2001-02-28 2002-10-31 Benjamin Godlin Method and system for differential distributed data file storage, management and access
CN101909068A (zh) * 2009-06-02 2010-12-08 华为技术有限公司 一种文件副本管理方法及装置、系统
CN101964820A (zh) * 2010-10-08 2011-02-02 中兴通讯股份有限公司 一种保持数据一致性的方法及系统
CN102646127A (zh) * 2012-02-29 2012-08-22 浪潮(北京)电子信息产业有限公司 分布式文件系统副本选择方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020161860A1 (en) * 2001-02-28 2002-10-31 Benjamin Godlin Method and system for differential distributed data file storage, management and access
CN101909068A (zh) * 2009-06-02 2010-12-08 华为技术有限公司 一种文件副本管理方法及装置、系统
CN101964820A (zh) * 2010-10-08 2011-02-02 中兴通讯股份有限公司 一种保持数据一致性的方法及系统
CN102646127A (zh) * 2012-02-29 2012-08-22 浪潮(北京)电子信息产业有限公司 分布式文件系统副本选择方法和装置

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516230B (zh) * 2014-10-15 2019-06-25 深圳市腾讯计算机系统有限公司 一种数据处理方法及装置
CN105516230A (zh) * 2014-10-15 2016-04-20 深圳市腾讯计算机系统有限公司 一种数据处理方法及装置
CN106302625A (zh) * 2015-06-26 2017-01-04 阿里巴巴集团控股有限公司 数据更新方法、装置及相关系统
CN106302625B (zh) * 2015-06-26 2019-10-25 阿里巴巴集团控股有限公司 数据更新方法、装置及相关系统
WO2017084563A1 (zh) * 2015-11-19 2017-05-26 华为技术有限公司 一种基于分布式系统的文件读取方法及装置
WO2017113276A1 (zh) * 2015-12-31 2017-07-06 华为技术有限公司 分布式存储系统中的数据重建的方法、装置和系统
US10387255B2 (en) 2015-12-31 2019-08-20 Huawei Technologies Co., Ltd. Data reconstruction method in distributed storage system, apparatus, and system
CN106662983A (zh) * 2015-12-31 2017-05-10 华为技术有限公司 分布式存储系统中的数据重建的方法、装置和系统
CN107423637A (zh) * 2017-07-31 2017-12-01 南京理工大学 支持云上电子病历数据可追踪的完整性审计方法
CN110377577A (zh) * 2018-04-11 2019-10-25 北京嘀嘀无限科技发展有限公司 数据同步方法、装置、系统和计算机可读存储介质
CN110377577B (zh) * 2018-04-11 2022-03-04 北京嘀嘀无限科技发展有限公司 数据同步方法、装置、系统和计算机可读存储介质
CN110825309A (zh) * 2018-08-08 2020-02-21 华为技术有限公司 数据读取方法、装置及系统、分布式系统
CN110825309B (zh) * 2018-08-08 2021-06-29 华为技术有限公司 数据读取方法、装置及系统、分布式系统
US11455117B2 (en) 2018-08-08 2022-09-27 Huawei Technologies Co., Ltd. Data reading method, apparatus, and system, avoiding version rollback issues in distributed system
CN109558086B (zh) * 2018-12-03 2019-10-18 浪潮电子信息产业股份有限公司 一种数据读取方法、系统及相关组件
CN109739434A (zh) * 2018-12-03 2019-05-10 中科恒运股份有限公司 文件读取地址获取方法、文件读取方法和终端设备
CN109558086A (zh) * 2018-12-03 2019-04-02 浪潮电子信息产业股份有限公司 一种数据读取方法、系统及相关组件
CN114594914A (zh) * 2022-03-17 2022-06-07 阿里巴巴(中国)有限公司 用于分布式存储系统的控制方法及系统
CN114594914B (zh) * 2022-03-17 2024-04-02 阿里巴巴(中国)有限公司 用于分布式存储系统的控制方法及系统

Also Published As

Publication number Publication date
CN103729352B (zh) 2017-07-28

Similar Documents

Publication Publication Date Title
CN103729352A (zh) 分布式文件系统对多个副本数据进行处理的方法及该系统
US20170308437A1 (en) Parity protection for data chunks in an object storage system
US7660956B1 (en) Save set bundling for staging
US7917803B2 (en) Data conflict resolution for solid-state memory devices
US10462443B2 (en) Systems, methods, and software for improved video data recovery effectiveness
WO2018098972A1 (zh) 一种日志恢复方法、存储装置和存储节点
CN103827843B (zh) 一种写数据方法、装置和系统
US9514008B2 (en) System and method for distributed processing of file volume
KR20110086114A (ko) 분산형 데이터 스토리지
CN103577500A (zh) 分布式文件系统进行数据处理的方法及该分布式文件系统
US10049024B2 (en) Data processing method, device, and system for storage unit
CN102033786A (zh) 一种对象存储系统中修复副本一致性的方法
US9501234B1 (en) System and method for incrementally performing full data backup
CN109726036B (zh) 一种存储系统中的数据重构方法和装置
CN110147203B (zh) 一种文件管理方法、装置、电子设备及存储介质
CN102023816A (zh) 一种对象存储系统的对象存放策略和访问方法
US7849355B2 (en) Distributed object sharing system and method thereof
CN114827178A (zh) 一种数据处理方法、装置、设备及可读存储介质
CN102314322A (zh) 一种基于raid阵列的数据处理方法和设备
CN111857603B (zh) 数据处理方法及相关装置
CN111813604B (zh) 一种故障存储设备的数据恢复方法、系统及相关装置
CN107402841B (zh) 大规模分布式文件系统数据修复方法及设备
US11487628B1 (en) System and method for rapidly transferring and recovering large data sets
CN102624537A (zh) 一种数据恢复系统及方法
CN115454717B (zh) 数据库实时备份方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180907

Address after: 100090 Beijing Haidian District Zhichun Road 49 No. 3 West 309

Patentee after: Tencent cloud computing (Beijing) limited liability company

Address before: 518044 East 403 room, Sai Ge science and Technology Park, Futian District Zhenxing Road, Shenzhen, Guangdong, China, 2

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.