CN105959420A - 多客户端元数据同步更新方法及*** - Google Patents

多客户端元数据同步更新方法及*** Download PDF

Info

Publication number
CN105959420A
CN105959420A CN201610561399.XA CN201610561399A CN105959420A CN 105959420 A CN105959420 A CN 105959420A CN 201610561399 A CN201610561399 A CN 201610561399A CN 105959420 A CN105959420 A CN 105959420A
Authority
CN
China
Prior art keywords
client
file attribute
data server
meta data
file
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
CN201610561399.XA
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.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry 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 Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201610561399.XA priority Critical patent/CN105959420A/zh
Publication of CN105959420A publication Critical patent/CN105959420A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种多客户端元数据同步更新方法,包括:获取元数据服务器中的会话列表,会话列表为元数据服务器与多个客户端建立的连接列表;发送文件属性修改请求至元数据服务器,根据文件属性修改请求对储存在元数据服务器中的文件属性信息进行修改;判断是否修改成功,若修改成功,则生成本地修改命令;根据本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令;根据会话列表向多个客户端同时发送文件属性更新命令,分别对多个客户端本地缓存进行更新。实现了元数据服务器以及多个客户端中的文件属性信息修改同步性,提高多客户端的文件属性信息修改的准确率。本申请还公开一种多客户端元数据同步更新***。

Description

多客户端元数据同步更新方法及***
技术领域
本发明涉及数据存储技术领域,更具体地说,涉及一种多客户端元数据同步更新方法,还涉及一种多客户端元数据同步更新***。
背景技术
当前的大规模存储***中,往往通过客户端访问存储服务器上的文件***,客户端对一个文件的首次访问会从元数据服务器(MDS,保存所有文件的属性信息)获取文件的元数据信息,保存到客户端的本地cache中,对该文件的后续访问直接使用本地cache中的元数据。
对于单一客户端的应用场景,在客户端上修改文件的访问权限时,会向MDS发起修改请求,MDS修改成功后反馈至客户端,客户端再修改自己本地缓存的权限信息。修改之后,下一次客户端对文件***中的文件进行访问时,只需要检查客户端本地缓存的权限信息即可。
然而,对于多客户端的应用场景,每个客户端拥有各自独立的元数据缓存,在其中一个客户端上修改某个文件的访问权限时,只有MDS和发起修改请求的客户端上的元数据会更新,其它客户端访问同一个文件时,依旧会使用各自本地缓存的旧的元数据来判断访问权限,导致访问出错。
因此,如何使得多客户端同步更新本地缓存的元数据是本领域技术人员急需要解决的技术问题。
发明内容
为解决上述技术问题,本发明提供一种多客户端元数据同步更新方法,使得多客户端同步更新本地缓存的元数据。
为实现上述目的,本发明提供如下技术方案:
一种多客户端元数据同步更新方法,包括:
获取元数据服务器中的会话列表,所述会话列表为所述元数据服务器与多个客户端建立的连接列表;
发送文件属性修改请求至所述元数据服务器,根据所述文件属性修改请求对储存在所述元数据服务器中的文件属性信息进行修改;
判断是否修改成功,若修改成功,则生成本地修改命令;
根据所述本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令;
根据所述会话列表向多个客户端同时发送所述文件属性更新命令,分别对多个客户端本地缓存进行更新。
优选的,在上述多客户端元数据同步更新方法中,所述获取元数据服务器中的会话列表之前,还包括:
将文件***挂载于本地目录中,使得所述本地目录中的所述多个客户端能够访问所述文件***;
将所述多个客户端与元数据服务器与进行连接。
优选的,在上述多客户端元数据同步更新方法中,所述文件属性信息为访问权限信息。
本发明还提供了一种多客户端元数据同步更新***,包括:
会话列表获取模块,用于获取元数据服务器中的会话列表,所述会话列表为所述元数据服务器与多个客户端建立的连接列表;
发送请求模块,用于发送文件属性修改请求至所述元数据服务器;
服务器修改模块,用于根据所述文件属性修改请求对储存在所述元数据服务器中的文件属性信息进行修改;
判断模块,用于判断是否修改成功,若修改成功,则生成本地修改命令;
本地修改模块,用于根据所述本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令;
更新模块,用于根据所述会话列表向多个客户端同时发送所述文件属性更新命令,分别对多个客户端本地缓存进行更新。
优选的,上述多客户端元数据同步更新***中,还包括:
访问模块,用于将文件***挂载于本地目录中,使得所述本地目录中的所述多个客户端能够访问所述文件***;
连接模块,用于将所述多个客户端与元数据服务器与进行连接。
优选的,上述多客户端元数据同步更新***中,所述元数据服务器包括集中式元数据服务器以及分散式元数据服务器。
从上述技术方案可以看出,本发明所提供的一种多客户端元数据同步更新方法,获取元数据服务器中的会话列表,所述会话列表为所述元数据服务器与多个客户端建立的连接列表;发送文件属性修改请求至所述元数据服务器,根据所述文件属性修改请求对储存在所述元数据服务器中的文件属性信息进行修改;判断是否修改成功,若修改成功,则生成本地修改命令;根据所述本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令;根据所述会话列表向多个客户端同时发送所述文件属性更新命令,分别对多个客户端本地缓存进行更新。
由于元数据服务器与客户端建立了连接,客户端从元数据服务器中获取了元数据服务器与多个客户端建立的连接列表,即会话列表,当有一个客户端的本地缓存中的文件属性信息被修改,那么这个客户端将根据会话列表向其它客户端发出更新命令,其它客户端也对各自的本地缓存中的文件属性信息进行修改,同时,由于在对客户端本地缓存中的文件属性信息进行修改时,首先需要对与其建立连接的元数据服务器进行修改,因此,本申请实现了元数据服务器以及多个客户端中的文件属性信息修改的同步性,提高了工作效率,以及多客户端的文件属性信息修改的准确率。
本发明还提供了一种多客户端元数据同步更新***,实现了元数据服务器以及多个客户端中的文件属性信息修改的同步性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种多客户端元数据同步更新方法示意图;
图2为本发明提供的一种多客户端元数据同步更新***示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明提供的一种多客户端元数据同步更新方法示意图。
在一种具体的实施方式中,提供了一种多客户端元数据同步更新方法,主要包括以下步骤:
步骤S1:获取元数据服务器中的会话列表,所述会话列表为所述元数据服务器与多个客户端建立的连接列表。元数据服务器保存了所有客户端的会话连接,形成了会话列表。某一客户端获取了会话列表,便于后续对其他客户端发送命令。
步骤S2:发送文件属性修改请求至所述元数据服务器,根据所述文件属性修改请求对储存在所述元数据服务器中的文件属性信息进行修改。
文件属性修改请求可以为访问权限的修改请求等,要求元数据服务器按照文件属性修改请求进行修改,元数据服务器接收文件属性修改请求后,对储存在所述元数据服务器中的文件属性信息进行修改。
步骤S3:判断是否修改成功,若修改成功,则生成本地修改命令;
具体的,元数据服务器收到客户端的文件属性修改请求,修改元数据服务器上保存的相关文件属性,之后向发起请求的客户端返回修改结果信息,客户端收到响应后根据修改结果信息判断是否修改本地缓存中的文件属性信息。具体的,元数据服务器将修改结果信息返回成功则生成本地修改命令,根据本地修改命令修改本地缓存中的文件属性信息,否则不修改。
步骤S4:根据所述本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令。
对储存在所述元数据服务器中的文件属性信息进行修改完成后,将修改完成的结果反馈至客户端,如果结果为修改成功则生成本地修改命令,客户端接收到本地修改命令,并对客户端本地缓存中的文件属性信息进行相应的修改。
步骤S5:根据所述会话列表向多个客户端同时发送所述文件属性更新命令,分别对多个客户端本地缓存进行更新。
由于会话列表为所述元数据服务器与多个客户端建立的连接列表,如果元数据服务器成功修改了文件属性信息,则根据会话列表,客户端向所有其它客户端发起文件属性更新命令,文件属性更新命令的内容为更新的文件属性信息,其它客户端收到文件属性更新命令后,将旧的文件属性信息替换为修改后的文件属性信息,达到各自更新客户端本地缓存中的对应的文件属性信息,达到了所有客户端本地缓存中的文件属性信息和元数据服务器中的文件属性信息保持同步修改更新。
由于元数据服务器与客户端建立了连接,客户端从元数据服务器中获取了元数据服务器与多个客户端建立的连接列表,即会话列表,当有一个客户端的本地缓存中的文件属性信息被修改,那么这个客户端将根据会话列表向其它客户端发出更新命令,其它客户端也对各自的本地缓存中的文件属性信息进行修改,同时,由于在对客户端本地缓存中的文件属性信息进行修改时,首先需要对与其建立连接的元数据服务器进行修改,因此,本申请实现了元数据服务器以及多个客户端中的文件属性信息修改的同步性,提高了工作效率,以及多客户端的文件属性信息修改的准确率。
进一步的,所述获取元数据服务器中的会话列表之前,还包括:
将文件***挂载于本地目录中,使得所述本地目录中的所述多个客户端能够访问所述文件***;
将所述多个客户端与元数据服务器与进行连接。
在多个客户端的应用场景下,客户端访问存储服务器上的文件***需要先挂载到本地目录,挂载的过程中客户端和元数据服务器建立连接。
更进一步的,所述文件属性信息为访问权限信息。
元数据服务器为提供信息定位的资讯,包括信息的描述,比如数据的大小,使用权限等,因此,在元数据服务器中的文件属性信息可以为数据的大小或者访问权限信息等。
请参考图2,图2为本发明提供的一种多客户端元数据同步更新***示意图。
在另一种具体的实施方式中,本发明还提供了一种多客户端元数据同步更新***,包括:
会话列表获取模块06,用于获取元数据服务器中的会话列表,所述会话列表为所述元数据服务器与多个客户端建立的连接列表;
发送请求模块01,用于发送文件属性修改请求至所述元数据服务器;
服务器修改模块02,用于根据所述文件属性修改请求对储存在所述元数据服务器中的文件属性信息进行修改;
判断模块03,用于判断是否修改成功,若修改成功,则生成本地修改命令;
本地修改模块04,用于根据所述本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令;
更新模块05,用于根据所述会话列表向多个客户端同时发送所述文件属性更新命令,分别对多个客户端本地缓存进行更新。会话列表获取模块06与更新模块05相连,将会话列表发送至更新模块05中。
进一步的,上述多客户端元数据同步更新***中,还包括:
访问模块,用于将文件***挂载于本地目录中,使得所述本地目录中的所述多个客户端能够访问所述文件***;
连接模块,用于将所述多个客户端与元数据服务器与进行连接。
更进一步的,上述基于文件***的多客户端元数据同步更新***中,所述元数据服务器包括集中式元数据服务器以及分散式元数据服务器。集中式的元数据服务器就是在存储网络中只有一个元数据服务器节点,所有的元数据信息都汇聚在此,结构简单,传输数据速度快。分散式元数据服务器有多个元数据服务器节点,节点之间可以就相互拷贝元数据信息,壳存储大量元数据信息。具体根据需要选用任意一种服务器。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (6)

1.一种多客户端元数据同步更新方法,其特征在于,包括:
获取元数据服务器中的会话列表,所述会话列表为所述元数据服务器与多个客户端建立的连接列表;
发送文件属性修改请求至所述元数据服务器,根据所述文件属性修改请求对储存在所述元数据服务器中的文件属性信息进行修改;
判断是否修改成功,若修改成功,则生成本地修改命令;
根据所述本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令;
根据所述会话列表向多个客户端同时发送所述文件属性更新命令,分别对多个客户端本地缓存进行更新。
2.如权利要求1所述的方法,其特征在于,所述获取元数据服务器中的会话列表之前,还包括:
将文件***挂载于本地目录中,使得所述本地目录中的所述多个客户端能够访问所述文件***;
将所述多个客户端与元数据服务器与进行连接。
3.如权利要求1或2所述的方法,其特征在于,所述文件属性信息为访问权限信息。
4.一种多客户端元数据同步更新***,其特征在于,包括:
会话列表获取模块,用于获取元数据服务器中的会话列表,所述会话列表为所述元数据服务器与多个客户端建立的连接列表;
发送请求模块,用于发送文件属性修改请求至所述元数据服务器;
服务器修改模块,用于根据所述文件属性修改请求对储存在所述元数据服务器中的文件属性信息进行修改;
判断模块,用于判断是否修改成功,若修改成功,则生成本地修改命令;
本地修改模块,用于根据所述本地修改命令对客户端本地缓存中的文件属性信息进行相应的修改,同时生成文件属性更新命令;
更新模块,用于根据所述会话列表向多个客户端同时发送所述文件属性更新命令,分别对多个客户端本地缓存进行更新。
5.如权利要求4所述的***,其特征在于,还包括:
访问模块,用于将文件***挂载于本地目录中,使得所述本地目录中的所述多个客户端能够访问所述文件***;
连接模块,用于将所述多个客户端与元数据服务器与进行连接。
6.如权利要求5所述的***,其特征在于,所述元数据服务器包括集中式元数据服务器以及分散式元数据服务器。
CN201610561399.XA 2016-07-15 2016-07-15 多客户端元数据同步更新方法及*** Pending CN105959420A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610561399.XA CN105959420A (zh) 2016-07-15 2016-07-15 多客户端元数据同步更新方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610561399.XA CN105959420A (zh) 2016-07-15 2016-07-15 多客户端元数据同步更新方法及***

Publications (1)

Publication Number Publication Date
CN105959420A true CN105959420A (zh) 2016-09-21

Family

ID=56900849

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610561399.XA Pending CN105959420A (zh) 2016-07-15 2016-07-15 多客户端元数据同步更新方法及***

Country Status (1)

Country Link
CN (1) CN105959420A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106845259A (zh) * 2017-02-28 2017-06-13 郑州云海信息技术有限公司 一种分布式文件读写权限设置方法
CN109033363A (zh) * 2018-07-26 2018-12-18 广东浪潮大数据研究有限公司 一种响应客户端请求的方法、装置及设备
CN109857747A (zh) * 2018-12-18 2019-06-07 百度在线网络技术(北京)有限公司 数据同步更新方法、***和计算机设备
CN111125038A (zh) * 2019-12-31 2020-05-08 成都驰通数码***有限公司 一种基于云存储的智能数据同步方法及其***
CN112286890A (zh) * 2020-09-02 2021-01-29 北京意匠文枢科技有限公司 一种同步目标文档的修订信息的方法与设备
CN116938961A (zh) * 2023-09-15 2023-10-24 北京趋动智能科技有限公司 用于数据同步的***、方法及数据读取方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051925A (zh) * 2006-04-04 2007-10-10 腾讯科技(深圳)有限公司 一种实现网络通讯录数据同步的方法
CN101888393A (zh) * 2009-05-13 2010-11-17 上海首恒电子科技有限公司 网络环境下基于构件中间件平台的非一致协同***及方法
CN103095687A (zh) * 2012-12-19 2013-05-08 华为技术有限公司 元数据处理方法及装置
CN103152398A (zh) * 2013-02-07 2013-06-12 中国科学院计算技术研究所 一种多终端文件间的文件同步方法及***
CN103491055A (zh) * 2012-06-12 2014-01-01 中兴通讯股份有限公司 一种在多个客户端间同步信息的方法、客户端和服务器

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101051925A (zh) * 2006-04-04 2007-10-10 腾讯科技(深圳)有限公司 一种实现网络通讯录数据同步的方法
CN101888393A (zh) * 2009-05-13 2010-11-17 上海首恒电子科技有限公司 网络环境下基于构件中间件平台的非一致协同***及方法
CN103491055A (zh) * 2012-06-12 2014-01-01 中兴通讯股份有限公司 一种在多个客户端间同步信息的方法、客户端和服务器
CN103095687A (zh) * 2012-12-19 2013-05-08 华为技术有限公司 元数据处理方法及装置
CN103152398A (zh) * 2013-02-07 2013-06-12 中国科学院计算技术研究所 一种多终端文件间的文件同步方法及***

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106845259A (zh) * 2017-02-28 2017-06-13 郑州云海信息技术有限公司 一种分布式文件读写权限设置方法
CN109033363A (zh) * 2018-07-26 2018-12-18 广东浪潮大数据研究有限公司 一种响应客户端请求的方法、装置及设备
CN109857747A (zh) * 2018-12-18 2019-06-07 百度在线网络技术(北京)有限公司 数据同步更新方法、***和计算机设备
CN111125038A (zh) * 2019-12-31 2020-05-08 成都驰通数码***有限公司 一种基于云存储的智能数据同步方法及其***
CN111125038B (zh) * 2019-12-31 2023-04-07 成都驰通数码***有限公司 一种基于云存储的智能数据同步方法及其***
CN112286890A (zh) * 2020-09-02 2021-01-29 北京意匠文枢科技有限公司 一种同步目标文档的修订信息的方法与设备
CN116938961A (zh) * 2023-09-15 2023-10-24 北京趋动智能科技有限公司 用于数据同步的***、方法及数据读取方法
CN116938961B (zh) * 2023-09-15 2024-03-01 北京趋动智能科技有限公司 用于数据同步的***、方法及数据读取方法

Similar Documents

Publication Publication Date Title
CN105959420A (zh) 多客户端元数据同步更新方法及***
EP3490224B1 (en) Data synchronization method and system
CN101741911B (zh) 基于多副本协同的写操作方法、***及节点
CN102333029B (zh) 一种服务器集群***中的路由方法
TWI220713B (en) System and method for synchronizing documents between multi-nodes
CN105099761B (zh) 一种集中管理客户端的配置信息的方法和***
CN106357539B (zh) 一种数据获取方法和设备
CN105684377A (zh) 一种创建支持mpp数据库中的可重读隔离级别的分布式事务管理器的***和方法
CN106657314A (zh) 跨数据中心数据同步***及方法
CN103297529A (zh) 基于时间戳的树型结构数据同步方法
CN109639773B (zh) 一种动态构建的分布式数据集群控制***及其方法
CN105208060B (zh) 业务数据同步方法、装置及***
US20160323238A1 (en) Ip management method, client and server
US11226982B2 (en) Synchronization of offline instances
US9401957B2 (en) System and method for synchronization between servers
CN104104739A (zh) 一种云存储***元数据服务集群的数据同步方法
CN106095911A (zh) 搜索***及数据同步方法
CN110213156B (zh) 一种跨中心群组即时通信方法和***
CN105338095A (zh) 一种会话数据处理方法和装置
CN102082800A (zh) 一种用户请求处理的方法和服务器
CN106713391A (zh) 一种session信息的共享方法和共享***
CN115599870A (zh) 基于消息队列的存量数据与增量数据融合的数据同步方法
CN107451853A (zh) 一种红包实时派发的方法、装置、***及存储介质
CN105007193A (zh) 一种多层信息处理方法、***及集群管理节点
CN103986789A (zh) 一种实现基于nfs的hadoop ha集群中nfs节点双机冗余的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160921

RJ01 Rejection of invention patent application after publication