CN107181686A - 路由表的同步方法、装置及系统 - Google Patents

路由表的同步方法、装置及系统 Download PDF

Info

Publication number
CN107181686A
CN107181686A CN201610133755.8A CN201610133755A CN107181686A CN 107181686 A CN107181686 A CN 107181686A CN 201610133755 A CN201610133755 A CN 201610133755A CN 107181686 A CN107181686 A CN 107181686A
Authority
CN
China
Prior art keywords
routing table
data management
management group
file system
distributed 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.)
Granted
Application number
CN201610133755.8A
Other languages
English (en)
Other versions
CN107181686B (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.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201610133755.8A priority Critical patent/CN107181686B/zh
Priority to TW106104650A priority patent/TWI734744B/zh
Priority to PCT/CN2017/074630 priority patent/WO2017152768A1/zh
Publication of CN107181686A publication Critical patent/CN107181686A/zh
Priority to US16/125,471 priority patent/US10826817B2/en
Application granted granted Critical
Publication of CN107181686B publication Critical patent/CN107181686B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/18File system types
    • G06F16/182Distributed file systems
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种路由表的同步方法、装置及系统。其中,该方法包括:如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表;其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。本申请解决了现有技术中分布式文件系统中路由表为静态表,因此在分布式文件系统中的任意一个路由表发生变化时,会导致系统中的路由表不一致的技术问题。

Description

路由表的同步方法、装置及系统
技术领域
本申请涉及数据同步领域,具体而言,涉及一种路由表的同步方法、装置及系统。
背景技术
数据对于计算机和互联网的应用具有至关重要的作用,随着信息爆炸性增长的时代的到来,用户对于数据的存储量以及读写速率都有了越来越高的要求,传统的通过增加硬盘个数来拓展计算机文件系统的存储容量的方式,在容量大小、容量增长速度、数据读写速度以及数据安全方面都不能达到用户的需求,为此,现有的互联网行业多采用分布式文件系统来进行数据的存储和管理。
在互联网应用中,路由表可以存储于分布式文件系统的地址解析服务器中,并通过调度模块进行数据缓存,由于路由表作为存储路由器或其他互联网设备上存储的表,存储有达到特定网络中断的具体路径,路由器通过路由表存储的多个具体路径为经过路由器的每个数据包在存储的具体路径中查找最佳的传输路径。目前常用的存储于分布式文件系统中的路由表多为静态的路由表,不能随着实际传输路径的变化而进行修改,因此,导致当实际传输路径发生变化时,数据包不能正常传输。
针对现有技术中分布式文件系统中表为静态表,导致的任意一个数据管理组中的表发生更改时,其余数据管理组中的表不能同步进行更改的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种路由表的同步方法、装置及系统,以至少解决现有技术中分布式文件系统中表为静态表,导致的任意一个数据管理组中的表发生更改时,其余数据管理组中的表不能同步进行更改的技术问题。
根据本发明实施例的一个方面,提供了一种路由表的同步方法,该方法包括:如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表;其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。
根据本发明实施例的另一方面,还提供了一种路由表的同步装置,该装置包括:第一获取模块,用于如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;同步模块,用于将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表;其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。
根据本发明实施例的又一方面,还提供了一种路由表的同步系统,该系统包括:第一数据管理服务器,用于如果检测到本地存储的路由表被修改,获取修改后的路由表数据,并将修改后的路由表数据进行同步处理,其中,第一数据管理服务器为分布式文件系统中默认的第一数据管理组中包含的任意一个服务器;一个或多个第二数据管理服务器,与第一数据管理服务器具有通信关系,用于接收第一数据管理服务器同步的修改后的路由表数据,以更新第二数据管理组中的路由表,其中,第二数据管理服务器为分布式文件系统中非默认的第二数据管理组中包含的任意一个服务器。
此处需要说明的是,默认的第一数据管理组在路由表的同步方法中的主要用途在于检测分布式文件系统中的路由表的变更,即,分布式文件系统中的路由表是否被更改,并在检测到路由表发生更改的情况下,获取更改后的最新的路由表。然后将最新的路由表同步至其余的第二数据管理组中。在对分布式文件系统中的多个数据管理组的路由表更新之后,client端(用户终端)的接口可以分布式文件系统中的每个数据管理组的路由表进行确认,以确保每个数据管理组中的路由表都为最新的路由表。
由此,本申请提供的上述实施例的方案解决了现有技术中分布式文件系统中表为静态表,导致的任意一个数据管理组中的表发生更改时,其余数据管理组中的表不能同步进行更改的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例1的一种路由表的同步方法的计算机终端的硬件结构框图;
图2是根据本申请实施例1的一种可选的路由表同步方法的流程图;
图3是根据本申请实施例1的一种可选的路由表同步方法的示意图;
图4是根据本申请实施例1的请求终端向任意数据管理组发送路由表请求的示意图;
图5是根据本申请实施例1的一种可选的向数据管理组中发送路由表请求的流程图;
图6是根据本申请实施例1的一种可选的请求终端向数据存储服务器发送路由表请求的流程图;
图7是根据本申请实施例2的一种可选的路由表的同步装置的示意图;
图8是根据本申请实施例2的一种可选的路由表的同步装置的示意图;
图9是根据本申请实施例2的一种可选的路由表的同步装置的示意图;
图10是根据本申请实施例2的一种可选的路由表的同步装置的示意图;
图11是根据本申请实施例2的路由表的同步系统的结构示意图;以及
图12是根据本申请实施例2的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
Federation:将命名空间namespace进行分布式存储,使其构成一个系统集群,从而实现分布系统中的scalability。
Volume:在Federation系统中,在进行命名空间namespace分组后,表示每一组namespace的称谓。
MountTable,路由表,在盘古分布式文件系统中,可以将系统内部中不同目录下的数据放到不同的volume上的路由表。
Pangu Master:盘古分布式文件系统中所包含的数据管理组,数据管理组的结构为数据管理和数据存储的结构,数据管理组Master主要记录数据的属性meta信息,数据存储组主要用于数据data的存储。
PanguDefaultVolume:在盘古分布式文件存储系统中引入Federation的模式之后,可以实现在同一个服务器集群内中划分出多个数据管理组pangu master组,每一组数据管理服务器构成的数据管理组都可以对应为一个volume,其中有一组数据管理组为分布式文件系统默认的,也是唯一的主数据管理组PanguDefaultVolume。
实施例1
根据本申请实施例,还提供了一种基于分库分表的任务传输方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是根据本申请实施例1的一种路由表的同步方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的路由表的同步方法和装置对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的路由表的同步方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的路由表的同步方法。图2是根据本申请实施例1的一种可选的路由表的同步方法的流程图,如图2所示的方法可以包括如下步骤:
步骤S21,如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据。
在上述步骤中,默认的第一数据管理组可以是分布式文件系统中的任意一个数据管理组,在路由表的同步方法中,第一数据管理组用于实现将接收到的最新的路由表同步至分布式文件系统中部署的其他数据管理组。
在一种可选的实施例中,默认的第一数据管理组可以是分布式文件系统中存储最重要的数据的数据管理组,或数据存储量最大的数据管理组,但在实际应用中,具体讲分布式文件系统中的哪一个数据管理组作为默认的第一数据管理组,此处不做限定。
此处需要说明的是,默认的第一数据管理组在路由表的同步方法中的主要用途在于检测分布式文件系统中的路由表的变更,即,分布式文件系统中的路由表是否被更改,并在检测到路由表发生更改的情况下,获取更改后的最新的路由表。
此处还需要说明的是,在本申请涉及到的分布式文件系统中(例如盘古pangu分布式文件系统),通常可以通过将Federation(联盟)的模式引入来实现数据管理组的形成,即将Federation中采用的对数据的namespace(命名空间)进行分布式的划分模式引入数据管理组的模式,从而使其构成一个包含了一个或多个数据管理服务器构成的集合组,实现分布式系统中的存储模式。在分布式文件系统中通过Federation进行对namespace进行分组后,会构成多个master组,每一组都是一个数据管理组,而在上述分布式文件系统中的多个数据管理组中,有且仅有一个数据管理组为默认的第一数据管理组。
此处还需要说明的是,在分布式文件系统为Master/Chunk server的结构时,数据管理服务器Master用于存储分布式文件系统中的meta(标签)信息,即,数据的属性信息,例如:数据的索引、网页数据的标题、关键字等信息,Chunk server则提供数据的存储服务。在上述路由表的同步方法中,路由表存储于分布式文件系统的Master中,上述数据管理组为对Master进行分组后得到的多组数据管理组。
步骤S23,将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表。
其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。
在一种可选的实施例中,以分布式文件系统为阿里巴巴的盘古作为示例,盘古作为为阿里巴巴的云计算平台提供数据存储服务的分布式文件系统,包括多个数据管理组(例如,淘宝、淘点点、来往等),默认其中一个数据管理组作为PanguDefaultVolume(即默认第一数据管理组),该分布式文件系统中的其余数据管理组为第二数据管理组,例如,默认淘宝的数据管理组为第一数据管理组,则该分布式文件系统中的其余数据管理组(例如:淘点点、来往等)均为第二数据管理组;当路由表发生变更时,先由淘宝的数据管理组(默认的第一数据管理组)接收最新的路由表,在第一数据管理组获取到最新的路由表后,将最新的路由表同步至其余的第二数据管理组中,即,其余的数据管理组(第二数据管理组)中的路由表的修改均通过默认的第一数据管理组来完成。
在对分布式文件系统中的多个数据管理组的路由表更新之后,client端(用户终端)的接口可以分布式文件系统中的每个数据管理组的路由表进行确认,以确保每个数据管理组中的路由表都为最新的路由表。
图3是根据本申请实施例1的一种可选的路由表同步方法的示意图,结合图3所示,当路由表由于用户修改等因素发生变化时,分布式文件系统中的第一数据管理组首先接收修改后的新的路由表,然后将新的路由表同步至分布式文件系统中的其余的第二数据管理组。上述说明不限定实际应用中的第二数据管理组的数量,即,当分布式文件系统中有多个第二数据管理组时,都通过第一数据管理组进行同步新的路由表。
由此,本申请提供的上述实施例的方案解决了现有技术中分布式文件系统中表为静态表,导致的任意一个数据管理组中的表发生更改时,其余数据管理组中的表不能同步进行更改的技术问题。
在本申请上述实施例中,当分布式文件系统中部署新的第二数据管理组时,将新的第二数据管理组中的数据管理服务器注册至第一数据管理组上,并将第一数据管理组中的路由表同步至新的第二数据管理组中。
在上述步骤中,新的第二数据管理组是在原分布式文件系统中不存在数据管理组,在加入新的第二数据管理组后,为了使新的第二数据管理组能够同步第一数据管理组中的最新的路由表,首先将第二数据管理组中的数据管理服务器注册至默认的第一数据管理组上。
可选的,上述数据管理服务器可以是第二数据管理组中的任意一个数据管理服务器Master。
在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,预设默认的第一数据管理组为淘宝的数据管理组,若需要在盘古分布式文件系统中加入原分布式文件系统中没有的来往的数据管理组,先将来往的数据管理组的数据管理服务器注册至淘宝的数据管理组上,其中,上述数据管理服务器可以是来往的数据管理组的Master,将来往的数据管理服务器注册至淘宝的数据管理组后,保证了来往的数据管理组和淘宝的数据管理组的通信,使得来往的数据管理组成为该分布式文件系统中与其余第二数据管理组相同的第二数据管理组,此时方可对来往的数据管理组进行路由表同步的步骤,以使得来往的数据管理组中包含最新的路由表。
本申请上述实施例提供的方法解决了在新的数据管理组加入分布式文件系统后的路由表难以统一的技术问题。
在本申请上述实施例中,上述方法还包括如下步骤:
步骤S23,在分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之后,从路由表请求中获取请求终端中的路由表版本信息。
步骤S25,如果路由表版本信息与任意一个数据管理组中的路由表的版本信息不一致的情况下,任意一个数据管理组向请求终端返回本地存储的路由表,或者,请求终端通过访问分布式文件系统中部署的数据存储服务器来获取最新的路由表。
图4是根据本申请实施例1的请求终端向任意数据管理组发送路由表请求的示意图。结合图4所示,在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,预设默认的第一数据管理组为淘宝的数据管理组,请求终端向分布式文件系统中的任意一个数据管理组发送更新路由表的请求,任意一个数据管理组获取发起路由表请求的请求终端的路由表版本信息,在版本信息与接收到路由表请求的数据管理组中的路由表的版本信息不一致时,向请求终端发送存储的路由表。
在上述步骤中,路由表的版本信息可以是用于表示新路由表与旧路由表的信息,以使数据管理组来识别最新的路由表。
此处需要说明的是,上述任意数据管理组可以是在分布式文件系统随机选择的数据管理组,但在优选的情况下,任意一个数据管理组为分布式文件系统中的第一数据管理组,由于第一数据管理组是分布式文件系统中首个接收到最新路由表的数据管理组,因此为了保证请求终端接收到的路由表也为分布式文件系统中最新的路由表,优选的方法是上述任意一个数据管理组为分布式系统中的第一数据管理组。
在本申请上述实施例中,步骤S23,在从路由表请求中获取请求终端中的路由表版本信息之前,上述方法还包括:
步骤S231,根据路由表请求中携带的待操作的文件或目录的信息,确定待操作的文件或目录的权限。
步骤S233,如果权限为允许操作,则继续执行从路由表请求中获取请求终端中的路由表版本信息的步骤。
步骤S235,如果权限为禁止操作,则获取最新的路由表失败。
在上述步骤中,路由表中待操作的文件或目录可以是发起路由表请求的数据管理组的文件名或文件目录。
在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,请求终端向分布式文件系统中的第一数据管理组发送路由表请求,则第一数据管理组通过路由表中文件或者目录信息确定该请求终端是否有权限获取最新的路由表。
本申请上述步骤对获取分布式文件系统中的路由表的对象做了预设限定,使得具有获取最新路由表权限的请求终端才能从分布式文件系统中获得最新的路由表。
在另一种可选的实施例中,接收到路由表请求的数据管理组在获取到请求终端的路由表的版本后,经对比确认请求终端的路由表版本为最新的路由表版本,则可以认为请求终端的请求权限被篡改,因此向请求终端返回错误代码,请求终端在接收到错误代码后,会在预设时间进行重试请求,直至请求终端的路由表版本以不与接收路由表请求的数据管理组的路由表相同。
图5是根据本申请实施例1的一种可选的向数据管理组中发送路由表请求的流程图,包括如下步骤:
步骤S51,请求终端发起路由表请求。
在上述步骤中,请求终端向分布式文件系统中的任意数据管理组发送路由表请求。
步骤S52,确定待操作的文件或目录的权限。
在待操作的文件或目录有操作权限的情况下进入步骤S53,否则进入步骤S55。
步骤S53,判断请求终端与任意数据管理组的路由表是否一致。
在上述步骤中,如果请求终端与任意数据管理组的路由表一致,则进入步骤S55,否则进入步骤S54。
步骤S54,向请求终端发送路由表。
如果路由表版本信息与任意一个数据管理组中的路由表的版本信息不一致的情况下,任意一个数据管理组向请求终端返回本地存储的路由表,或者,请求终端通过访问分布式文件系统中部署的数据存储服务器来获取最新的路由表。
步骤S55,返回错误代码。
在请求终端没有获取最新路由表的情况下,接收到数据管理组返回的错误代码。
在本申请上述实施例中,在分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之前,方法还包括:
步骤S237,请求终端在调用访问接口之后,解析得到分布式文件系统中的每个数据管理组的访问信息。
步骤S239,请求终端向任意一个数据管理组发送路由表请求,其中,如果请求终端从任意一个数据管理组获取最新的路由表失败,则向分布式文件系统中的其他数据管理组发送路由表请求,直至获取最新的路由表。
具体的,在上述步骤中,上述访问接口可以是API接口,分布式文件系统中的每个数据管理组的访问信息可以是数据管理组的Master信息。
在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,用户调用API(Application Programming Interface,应用程序编程接口)后,利用阿里巴巴的address resolver(地址解析工具,例如:nuwa)解析出该分布式文件系统中所有数据管理组的地址信息(例如:tcp/ip地址),在解析出所有数据管理组的地址信息后,随机向其中的任意一个数据管理组发送请求获取路由表的请求,如果请求失败,则反复上述过程重试。
此处需要说明的是,在请求终端请求失败的情况下,需要判断当前时间是否在预设的时间范围内,如果当前时间在预设的时间范围内,则向其他数据管理组重新发起获取路由表的情况下,如果当前时间已经超时了预设的时间范围,则停止请求终端继续发送获取路由表的请求。
在本申请上述实施例中,步骤S237,在解析得到分布式文件系统中的每个数据管理组的访问信息之前,上述方法还包括:
步骤S2371,请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息。
步骤S2373,请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的每个数据管理组的访问信息的步骤。
在一种可选的实施例中,上述分布式文件系统是Master,Slave结构,上述数据存储服务器可以是chunk server,请求终端首先向chunk server发送路由表请求,当向chunk server请求失败,或chunk server中的路由表的版本信息不是最新版本时,请求终端向分布式文件系统中的任意一个数据管理组发送路由表请求。
在本申请上述实施例中,步骤S23,在分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之前,方法还包括:
步骤S25,请求终端在调用访问接口之后,解析得到分布式文件系统中默认的第一数据管理组的地址信息。
步骤S27,请求终端向第一数据管理组发送路由表请求,其中,如果请求终端从第一数据管理组获取最新的路由表失败,则向分布式文件系统中的其他任意一个或多个第二数据管理组发送路由表请求,直至获取最新的路由表。
在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,预设默认的第一数据管理组为淘宝的数据管理组,请求终端向淘宝的数据管理组发送更新路由表的请求,淘宝的数据管理组接收到路由表请求后,获取请求终端中的路由表的版本信息,在版本信息与接收到路由表请求的数据管理组中的路由表的版本信息不一致时,向请求终端发送存储的路由表。
在本申请上述实施例中,上述方法还包括:,在解析得到分布式文件系统中默认的第一数据管理组的地址信息之前,方法还包括:
步骤S251,请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息。
步骤S253请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的第一数据管理组的访问信息的步骤。
在一种可选的实施例中,上述分布式文件系统是Master,Slave结构,请求终端首先向Master发送路由表请求,当向Master请求失败返回的错误代码,路由表的版本信息不正确时,请求终端向分布式文件系统中的任意一个数据管理组发送路由表请求。
图6是根据本申请实施例1的一种可选的请求终端向数据存储服务器发送路由表请求的流程图,包括如下步骤:
S61,获取数据存储服务器的访问信息。
S62,向数据存储服务器发送路由表请求。
S63,请求是否失败。
S64,数据存储服务器中的路由表是否为最新路由表。
S65,向请求终端发送路由表。
S66,解析第一数据管理组的访问信息。
在本申请上述实施例中,上述方法还包括:在请求终端发起路由表请求的过程中,如果检测到第一数据管理组中的路由表被修改,则重新访问分布式文件系统中的任意一个数据管理组,来获取最新的路由表。
在请求终端发起路由表请求的过程中检测到第一数据管理组中的路由表被修改,如果继续访问分布式中的任意一个数据管理组,则获取得到的路由表可能部位最新的路由表,因此本申请上述步骤在请求终端发起路由表请求的过程中检测到第一数据管理组中的路由表被修改时,重新访问分布式文件系统中的任意数据管理组,以使得请求终端获取得到的是最新的路由表。
在本申请上述实施例中,上述方法还包括:分布式文件系统中部署的第一数据管理组以及第二数据管理组设置有读写请求门限,其中,读写请求门限用于表征对应的数据管理组中的数据管理服务器的最大访问次数,如果数据管理服务器的访问次数超过读写请求门限,则终止访问数据管理服务器。
在一种可选的实施例中,以线上生产集群AY75C及AY88B为例,当具有5000套数据管理服务器时,在均值的读写次数为1万次,峰值读写次数为10万的情况下,当Master为3台时,平均每台数据管理服务器最大需要承受3.3万次的读写次数,未超出第一数据管理组以及第二数据管理组设置有读写请求门限。
在本申请上述实施例中,上述方法还包括:对第一数据管理组中包含的数据管理服务器进行持久化处理,在第一数据管理组执行持久化处理完成之后,向至少一个第二数据管理组发送用于修改路由表的远程过程调用协议,使得第二数据管理组执行持久化处理。
在上述步骤中,对数据管理服务器进行持久化处理可以是将数据管理服务器终端数据保存至可永久存储的设备中。
此处需要说明的是,由于分布式文件系统中所有路由表的更新都依赖于第一数据管理组更新,因此第二数据管理组对第一数据管理组具有很大的依赖性,如果第二数据管理组发生故障,则需要依赖于第一数据管理组进行修复,如果第一数据管理组也发生故障,则需要在第一数据管理组修复完成后再依赖于第一数据管理组进行修复,从而使得第二数据管理组的修复进度迟缓,因此通过向第二数据管理组发送远程调用协议对第二数据管理组中的数据服务器进行持久化处理,从而当在第一数据管理组出现故障的情况下,第二数据管理组也发生故障时。由于第二数据管理组已经对路由表进行了持久化处理,因此第二数据管理组的恢复不依赖于第一数据管理组,进而提高了第二数据管理组的故障修复效率。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的基于分库分表的任务传输方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本申请实施例,还提供了一种路由表的同步装置,如图7所示,该装置包括:第一获取模块120和同步模块122。
第一获取模块120用于如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;同步模块122用于将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表;
其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。
在一种可选的实施例中,默认的第一数据管理组可以是分布式文件系统中存储最重要的数据的数据管理组,或数据存储量最大的数据管理组,但在实际应用中,具体将分布式文件系统中的哪一个数据管理组作为默认的第一数据管理组,此处不做限定。
此处需要说明的是,默认的第一数据管理组在路由表的同步方法中的主要用途在于检测分布式文件系统中的路由表的变更,即,分布式文件系统中的路由表是否被更改,并在检测到路由表发生更改的情况下,获取更改后的最新的路由表。
此处还需要说明的是,在分布式文件系统中,通常通过Federation(联盟)将数据的namespace(命名空间)进行分布式,从而使其构成一个联盟,进而实现分布式系统中的存储模式,在分布式文件系统通过Federation进行对namespace进行分组后,会构成多个master组,每一组都是一个数据管理组,而在上述分布式文件系统中的多个数据管理组中,有且仅有一个数据管理组为默认的第一数据管理组。
此处还需要说明的是,在分布式文件系统为Master/Chunk server的结构时,Master用于存储分布式文件系统中的meta(标签)信息,即,数据的属性信息,例如:数据的索引、网页数据的标题、关键字等信息,Chunk server则提供数据的存储服务。在上述路由表的同步方法中,路由表存储于分布式文件系统的Master中,上述数据管理组为对Master进行分组后得到的多组数据管理组。
在一种可选的实施例中,以分布式文件系统为阿里巴巴的盘古作为示例,盘古作为为阿里巴巴的云计算平台提供数据存储服务的分布式文件系统,包括多个数据管理组(例如,淘宝、淘点点、来往等),默认其中一个数据管理组作为PanguDefaultVolume(默认第一数据管理组),该分布式文件系统中的其余数据管理组为第二数据管理组,例如,默认淘宝的数据管理组为第一数据管理组,则该分布式文件系统中的其余数据管理组(例如:淘点点、来往等)均为第二数据管理组;当路由表发生变更时,先由淘宝的数据管理组(默认的第一数据管理组)接收最新的路由表,在第一数据管理组获取到最新的路由表后,将最新的路由表同步至其余的第二数据管理组中,即,其余的数据管理组(第二数据管理组)中的路由表的修改均通过默认的第一数据管理组来完成。
在对分布式文件系统中的多个数据管理组的路由表更新之后,client端(用户终端)的接口可以分布式文件系统中的每个数据管理组的路由表进行确认,以确保每个数据管理组中的路由表都为最新的路由表。
由此,本申请提供的上述实施例的方案解决了现有技术中分布式文件系统中表为静态表,导致的任意一个数据管理组中的表发生更改时,其余数据管理组中的表不能同步进行更改的技术问题。
在本申请上述实施例中,结合图8所示,上述装置还包括:注册模块80,
注册模块80用于当分布式文件系统中部署新的第二数据管理组时,将新的第二数据管理组中的数据管理服务器注册至第一数据管理组上,并将第一数据管理组中的路由表同步至新的第二数据管理组中。
在上述装置中,新的第二数据管理组是在原分布式文件系统中不存在数据管理组,在加入新的第二数据管理组后,为了使新的第二数据管理组能够同步第一数据管理组中的最新的路由表,首先将第二数据管理组中的数据管理服务器注册至默认的第一数据管理组上。
可选的,上述数据管理服务器可以是第二数据管理组的Master。
在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,预设默认的第一数据管理组为淘宝的数据管理组,若需要在盘古分布式文件系统中加入原分布式文件系统中没有的来往的数据管理组,先将来往的数据管理组的数据管理服务器注册至淘宝的数据管理组上,其中,上述数据管理服务器可以是来往的数据管理组的Master,将来往的数据管理服务器注册至淘宝的数据管理组后,保证了来往的数据管理组和淘宝的数据管理组的通信,使得来往的数据管理组成为该分布式文件系统中与其余第二数据管理组相同的第二数据管理组,此时方可对来往的数据管理组进行路由表同步的步骤,以使得来往的数据管理组中包含最新的路由表。
本申请上述实施例提供的方法解决了在新的数据管理组加入分布式文件系统后的路由表难以统一的技术问题。
本申请上述实施例中,结合图9所示,上述装置还包括:第二获取模块90和返回模块92,
第二获取模块90用于在分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之后,从路由表请求中获取请求终端中的路由表版本信息;返回模块92用于如果路由表版本信息与任意一个数据管理组中的路由表的版本信息不一致的情况下,任意一个数据管理组向请求终端返回本地存储的路由表,或者,请求终端通过访问分布式文件系统中部署的数据存储服务器来获取最新的路由表。
结合图4所示,在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,预设默认的第一数据管理组为淘宝的数据管理组,请求终端向分布式文件系统中的任意一个数据管理组发送更新路由表的请求,任意一个数据管理组获取发起路由表请求的请求终端的路由表版本信息,在版本信息与接收到路由表请求的数据管理组中的路由表的版本信息不一致时,向请求终端发送存储的路由表。
在上述装置中,路由表的版本信息可以是用于表示新路由表与旧路由表的信息,以使数据管理组来识别最新的路由表。
此处需要说明的是,上述任意数据管理组可以是在分布式文件系统随机选择的数据管理组,但在优选的情况下,任意一个数据管理组为分布式文件系统中的第一数据管理组,由于第一数据管理组是分布式文件系统中首个接收到最新路由表的数据管理组,因此为了保证请求终端接收到的路由表也为分布式文件系统中最新的路由表,优选的方法是上述任意一个数据管理组为分布式系统中的第一数据管理组。
在本申请上述实施例中,结合图10所示,上述述装置还包括:确定模块100、执行模块102和第三获取模块104。
确定模块100用于根据路由表请求中携带的待操作的文件或目录的信息,确定待操作的文件或目录的权限;执行模块102,用于如果权限为允许操作,则继续执行从路由表请求中获取请求终端中的路由表版本信息的步骤;第三获取模块104用于如果权限为禁止操作,则获取最新的路由表失败。
在本申请上述实施例中,分布式文件系统中部署的第一数据管理组以及第二数据管理组设置有读写请求门限,其中,读写请求门限用于表征对应的数据管理组中的数据管理服务器的最大访问次数,如果数据管理服务器的访问次数超过读写请求门限,则终止访问数据管理服务器。
在本申请上述实施例中,持久化处理模块,用于对第一数据管理组中包含的数据管理服务器进行持久化处理,并在第一数据管理组执行持久化处理完成之后,向至少一个第二数据管理组发送用于修改路由表的远程过程调用协议,使得第二数据管理组执行持久化处理。
在本申请上述实施例中,上述装置还包括:
解析模块用于请求终端在调用访问接口之后,解析得到分布式文件系统中默认的第一数据管理组的地址信息;第三发送模块请求终端向第一数据管理组发送路由表请求,其中,如果请求终端从第一数据管理组获取最新的路由表失败,则向分布式文件系统中的其他任意一个或多个第二数据管理组发送路由表请求,直至获取最新的路由表。
在本申请上述实施例中,上述装置还包括:
第二处理模块用于请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息;第四发送模块用于请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的第一数据管理组的访问信息的步骤。
本申请上述实施例中,上述装置还包括:
访问模块,用于在请求终端发起路由表请求的过程中,如果检测到第一数据管理组中的路由表被修改,则重新访问分布式文件系统中的任意一个数据管理组,来获取最新的路由表。
在本申请上述实施例中,上述分布式文件系统中部署的第一数据管理组以及第二数据管理组设置有读写请求门限,其中,读写请求门限用于表征对应的数据管理组中的数据管理服务器的最大访问次数,如果数据管理服务器的访问次数超过读写请求门限,则终止访问数据管理服务器。
在本申请上述实施例中,上述装置还包括:
持久化模块,用于对第一数据管理组中包含的数据管理服务器进行持久化处理,在第一数据管理组执行持久化处理完成之后,向至少一个第二数据管理组发送用于修改路由表的远程过程调用协议,使得第二数据管理组执行持久化处理。
实施例3
根据本申请实施例,还提供了一种路由表的同步系统,结合图11所示,该系统包括:第一数据管理服务器110和一个或多个第二数据管理服务器112,其中,
第一数据管理服务器110,用于如果检测到本地存储的路由表被修改,获取修改后的路由表数据,并将修改后的路由表数据进行同步处理,其中,第一数据管理服务器为分布式文件系统中默认的第一数据管理组中包含的任意一个服务器;
一个或多个第二数据管理服务器112,与第一数据管理服务器具有通信关系,用于接收第一数据管理服务器同步的修改后的路由表数据,以更新第二数据管理组中的路由表,其中,第二数据管理服务器为分布式文件系统中非默认的第二数据管理组中包含的任意一个服务器。
在一种可选的实施例中,默认的第一数据管理组可以是分布式文件系统中的任意一个数据管理组,在路由表的同步方法中,第一数据管理组用于实现将接收到的最新的路由表同步至分布式文件系统中部署的其他数据管理组。
此处还需要说明的是,在本申请涉及到的分布式文件系统中(例如盘古pangu分布式文件系统),通常可以通过将Federation(联盟)的模式引入来实现数据管理组的形成,即将Federation中采用的对数据的namespace(命名空间)进行分布式的划分模式引入数据管理组的模式,从而使其构成一个包含了一个或多个数据管理服务器构成的集合组,实现分布式系统中的存储模式。在分布式文件系统中通过Federation进行对namespace进行分组后,会构成多个master组,每一组都是一个数据管理组,而在上述分布式文件系统中的多个数据管理组中,有且仅有一个数据管理组为默认的第一数据管理组。
此处还需要说明的是,在分布式文件系统为Master/Chunk server的结构时,数据管理服务器Master用于存储分布式文件系统中的meta(标签)信息,即,数据的属性信息,例如:数据的索引、网页数据的标题、关键字等信息,Chunk server则提供数据的存储服务。在上述路由表的同步方法中,路由表存储于分布式文件系统的Master中,上述数据管理组为对Master进行分组后得到的多组数据管理组。
在一种可选的实施例中,以分布式文件系统为阿里巴巴的盘古作为示例,盘古作为为阿里巴巴的云计算平台提供数据存储服务的分布式文件系统,包括多个数据管理组(例如,淘宝、淘点点、来往等),默认其中一个数据管理组作为PanguDefaultVolume(默认第一数据管理组),该分布式文件系统中的其余数据管理组为第二数据管理组,例如,默认淘宝的数据管理组为第一数据管理组,则该分布式文件系统中的其余数据管理组(例如:淘点点、来往等)均为第二数据管理组;当淘宝的数据管理组(默认的第一数据管理组)检测到本地存储的路由表被修改,则淘宝的数据管理组接收最新的路由表,并将接收到的最新的路由表同步至其余的第二数据管理组中,其余的第二数据管理组接收淘宝的数据管理组同步的修改后的路由表,以使存储在一个或多个第二数据管理组本地的路由表变更为修改后的路由表,即,其余的数据管理组(第二数据管理组)中的路由表的修改均通过默认的第一数据管理组来完成。
在对分布式文件系统中的多个数据管理组的路由表更新之后,client端(用户终端)的接口可以分布式文件系统中的每个数据管理组的路由表进行确认,以确保每个数据管理组中的路由表都为最新的路由表。
结合图3所示,当路由表由于用户修改等因素发生变化时,分布式文件系统中的第一数据管理组首先接收修改后的路由表,然后将修改后的路由表同步至分布式文件系统中的其余的第二数据管理组。上述实施例不限定实际应用中的第二数据管理组的数量,即,当分布式文件系统中有多个第二数据管理组时,都通过第一数据管理组进行同步新的路由表。
由此,本申请提供的上述实施例的方案解决了现有技术中分布式文件系统中表为静态表,导致的任意一个数据管理组中的表发生更改时,其余数据管理组中的表不能同步进行更改的技术问题。
在本申请上述实施例中,上述系统还可以包括:请求终端,与第一数据管理服务器和一个或多个第二数据管理服务器具有通信关系,用于向分布式文件系统中的任意一个数据管理组发送路由表请求,并接收任意一个数据管理组返回的路由表,或者,请求终端通过访问分布式文件系统中部署的数据存储服务器来获取最新的路由表。
在上述系统中,当请求终端向分布式文件系统中的任意一个数据管理组发送路由表请求时,接收路由表请求的数据管理组可以获取路由表请求中的路由表版本信息,当路由表请求中的路由表版本信息与接收路由表请求的数据管理组的路由表版本信息不一致时,接收路由表请求的数据管理组向请求终端反馈本地存储的路由表。
在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,预设默认的第一数据管理组为淘宝的数据管理组,请求终端向分布式文件系统中的任意一个数据管理组发送更新路由表的请求,任意一个数据管理组获取发起路由表请求的请求终端的路由表版本信息,在版本信息与接收到路由表请求的数据管理组中的路由表的版本信息不一致时,向请求终端发送存储的路由表。
在上述实施例中,路由表的版本信息可以是用于表示新路由表与旧路由表的信息,以使数据管理组来识别最新的路由表。
此处需要说明的是,上述任意数据管理组可以是在分布式文件系统随机选择的数据管理组,但在由于第一数据管理组是分布式文件系统中首个接收到最新路由表的数据管理组,因此为了保证请求终端接收到的路由表也为分布式文件系统中最新的路由表,优选的方法是上述任意一个数据管理组为分布式系统中的第一数据管理组。
在本申请上述实施例中,请求终端还用于在调用访问接口之后,解析得到分布式文件系统中的每个数据管理组的访问信息,并向任意一个数据管理组发送路由表请求;其中,如果请求终端从任意一个数据管理组获取最新的路由表失败,则向分布式文件系统中的其他数据管理组发送路由表请求,直至获取最新的路由表。
具体的,在上述系统中,上述访问接口可以是API(Application ProgrammingInterface,应用程序编程接口)接口,分布式文件系统中的每个数据管理组的访问信息可以是数据管理组的Master信息。
在本申请上述实施例中,请求终端还用于在无法解析得到分布式文件系统中的任意一个数据管理组的访问信息的情况下,解析得到分布式文件系统中部署的数据存储服务器的访问信息,并向数据存储服务器发送路由表请求;其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端开始解析分布式文件系统中的每个数据管理组的访问信息。
在一种可选的实施例中,上述分布式文件系统是Master,Slave结构,上述任意一个数据管理组可以是Master,上述数据存储服务器可以是chunk server,当请求终端在无法解析Maste的访问信息的情况下,解析chunk server的访问信息,并向chunk server发送路由表请求。
在本申请上述实施例中,请求终端还用于在调用访问接口之后,解析得到分布式文件系统中默认的第一数据管理组的地址信息,并向第一数据管理组发送路由表请求;其中,如果请求终端从第一数据管理组获取最新的路由表失败,则向分布式文件系统中的其他任意一个或多个第二数据管理组发送路由表请求,直至获取最新的路由表。
在一种可选的实施例中,仍以上述分布式文件系统为阿里巴巴的盘古作为示例,用户调用API后,利用阿里巴巴的address resolver(地址解析工具,例如:nuwa)解析出该分布式文件系统中所有数据管理组的地址信息(例如:tcp/ip地址),在解析出所有数据管理组的地址信息后,随机向其中的任意一个数据管理组发送请求获取路由表的请求,如果请求失败,则反复上述过程重试,直至成功获取到最新的路由表。
此处需要说明的是,在请求终端请求失败的情况下,需要判断当前时间是否在预设的时间范围内,如果当前时间在预设的时间范围内,则向其他数据管理组重新发起获取路由表的情况下,如果当前时间已经超时了预设的时间范围,则停止请求终端继续发送获取路由表的请求。
在本申请上述实施例中,请求终端还用于在无法解析得到分布式文件系统中默认的第一数据管理组的访问信息的情况下,解析得到分布式文件系统中部署的数据存储服务器的访问信息,并向数据存储服务器发送路由表请求;其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端开始解析分布式文件系统中的第一数据管理组的访问信息。
在一种可选的实施例中,上述分布式文件系统是Master,Slave结构,上述默认的第一数据管理组可以是默认的第一数据管理组中的Master,上述数据存储服务器可以是chunk server,当请求终端在无法解析Maste的访问信息的情况下,解析chunk server的访问信息,并向chunk server发送路由表请求。
在本申请上述实施例中请求终端还用于在发起路由表请求的过程中,如果检测到第一数据管理组中的路由表被修改,则重新访问分布式文件系统中的任意一个数据管理组,来获取最新的路由表。
在请求终端发起路由表请求的过程中检测到第一数据管理组中的路由表被修改,如果继续访问分布式文件系统中的任意一个数据管理组,则获取得到的路由表可能部位最新的路由表,因此本申请上述步骤在请求终端发起路由表请求的过程中检测到第一数据管理组中的路由表被修改时,重新访问分布式文件系统中的任意数据管理组,以使得请求终端获取得到的是最新的路由表。
实施例4
本申请的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行路由表的同步方法中以下步骤的程序代码:如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表;其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。
可选地,图12是根据本申请实施例的一种计算机终端的结构框图。如图12所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器1201、存储器1203、传输装置1205、请求终端1207以及数据存储服务器1209。
其中,存储器可用于存储软件程序以及模块,如本申请实施例中的路由表的同步方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的路由表的同步方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表;其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。
可选的,上述处理器还可以执行如下步骤的程序代码:当路由表的同步方法分布式文件系统中部署新的第二数据管理组时,将路由表的同步方法新的第二数据管理组中的数据管理服务器注册至路由表的同步方法第一数据管理组上,并将路由表的同步方法第一数据管理组中的路由表同步至路由表的同步方法新的第二数据管理组中。
可选的,上述处理器还可以执行如下步骤的程序代码:在路由表的同步方法分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之后,从路由表的同步方法路由表请求中获取路由表的同步方法请求终端中的路由表版本信息;如果路由表的同步方法路由表版本信息与路由表的同步方法任意一个数据管理组中的路由表的版本信息不一致的情况下,路由表的同步方法任意一个数据管理组向路由表的同步方法请求终端返回本地存储的路由表,或者,路由表的同步方法请求终端通过访问路由表的同步方法分布式文件系统中部署的数据存储服务器来获取最新的路由表。
可选的,上述处理器还可以执行如下步骤的程序代码:根据路由表的同步方法路由表请求中携带的待操作的文件或目录的信息,确定路由表的同步方法待操作的文件或目录的权限;如果路由表的同步方法权限为允许操作,则继续执行从路由表的同步方法路由表请求中获取路由表的同步方法请求终端中的路由表版本信息的步骤;如果路由表的同步方法权限为禁止操作,则获取路由表的同步方法最新的路由表失败。
可选的,上述处理器还可以执行如下步骤的程序代码:路由表的同步方法请求终端在调用访问接口之后,解析得到路由表的同步方法分布式文件系统中的每个数据管理组的访问信息;路由表的同步方法请求终端向路由表的同步方法任意一个数据管理组发送路由表的同步方法路由表请求,其中,如果路由表的同步方法请求终端从路由表的同步方法任意一个数据管理组获取路由表的同步方法最新的路由表失败,则向路由表的同步方法分布式文件系统中的其他数据管理组发送路由表的同步方法路由表请求,直至获取路由表的同步方法最新的路由表。
可选的,上述处理器还可以执行如下步骤的程序代码:请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息;请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的每个数据管理组的访问信息的步骤。
可选的,上述处理器还可以执行如下步骤的程序代码:在分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之前,方法还包括:请求终端在调用访问接口之后,解析得到分布式文件系统中默认的第一数据管理组的地址信息;请求终端向第一数据管理组发送路由表请求,其中,如果请求终端从第一数据管理组获取最新的路由表失败,则向分布式文件系统中的其他任意一个或多个第二数据管理组发送路由表请求,直至获取最新的路由表。
可选的,上述处理器还可以执行如下步骤的程序代码:在解析得到分布式文件系统中默认的第一数据管理组的地址信息之前,方法还包括:请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息;请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的第一数据管理组的访问信息的步骤。
可选的,上述处理器还可以执行如下步骤的程序代码:请求终端发起路由表的同步方法路由表请求的过程中,如果检测到路由表的同步方法第一数据管理组中的路由表被修改,则重新访问路由表的同步方法分布式文件系统中的任意一个数据管理组,来获取路由表的同步方法最新的路由表。
可选的,上述处理器还可以执行如下步骤的程序代码:路由表的同步方法布式文件系统中部署的路由表的同步方法第一数据管理组以及路由表的同步方法第二数据管理组设置有读写请求门限,其中,路由表的同步方法读写请求门限用于表征对应的数据管理组中的数据管理服务器的最大访问次数,如果路由表的同步方法数据管理服务器的访问次数超过路由表的同步方法读写请求门限,则终止访问路由表的同步方法数据管理服务器。
可选的,上述处理器还可以执行如下步骤的程序代码:第一数据管理组中包含的数据管理服务器进行持久化处理,在路由表的同步方法第一数据管理组执行持久化处理完成之后,向至少一个路由表的同步方法第二数据管理组发送用于修改路由表的远程过程调用协议,使得路由表的同步方法第二数据管理组执行持久化处理。
由此,本申请提供的上述实施例的方案解决了现有技术中分布式文件系统中表为静态表,导致的任意一个数据管理组中的表发生更改时,其余数据管理组中的表不能同步进行更改的技术问题。
本领域普通技术人员可以理解,图12所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图12其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图12中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图12所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
实施例5
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的基于分库分表的任务传输方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;将修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新非默认的第二数据管理组中的路由表;其中,分布式文件系统中部署唯一的第一数据管理组以及至少一个第二数据管理组。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:当路由表的同步方法分布式文件系统中部署新的第二数据管理组时,将路由表的同步方法新的第二数据管理组中的数据管理服务器注册至路由表的同步方法第一数据管理组上,并将路由表的同步方法第一数据管理组中的路由表同步至路由表的同步方法新的第二数据管理组中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在路由表的同步方法分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之后,从路由表的同步方法路由表请求中获取路由表的同步方法请求终端中的路由表版本信息;如果路由表的同步方法路由表版本信息与路由表的同步方法任意一个数据管理组中的路由表的版本信息不一致的情况下,路由表的同步方法任意一个数据管理组向路由表的同步方法请求终端返回本地存储的路由表,或者,路由表的同步方法请求终端通过访问路由表的同步方法分布式文件系统中部署的数据存储服务器来获取最新的路由表。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:根据路由表的同步方法路由表请求中携带的待操作的文件或目录的信息,确定路由表的同步方法待操作的文件或目录的权限;如果路由表的同步方法权限为允许操作,则继续执行从路由表的同步方法路由表请求中获取路由表的同步方法请求终端中的路由表版本信息的步骤;如果路由表的同步方法权限为禁止操作,则获取路由表的同步方法最新的路由表失败。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:路由表的同步方法请求终端在调用访问接口之后,解析得到路由表的同步方法分布式文件系统中的每个数据管理组的访问信息;路由表的同步方法请求终端向路由表的同步方法任意一个数据管理组发送路由表的同步方法路由表请求,其中,如果路由表的同步方法请求终端从路由表的同步方法任意一个数据管理组获取路由表的同步方法最新的路由表失败,则向路由表的同步方法分布式文件系统中的其他数据管理组发送路由表的同步方法路由表请求,直至获取路由表的同步方法最新的路由表。
可选地,在本实施例中,存储介质被设置为存储:请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息;请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的每个数据管理组的访问信息的步骤。
可选地,在本实施例中,存储介质被设置为存储:在分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之前,方法还包括:请求终端在调用访问接口之后,解析得到分布式文件系统中默认的第一数据管理组的地址信息;请求终端向第一数据管理组发送路由表请求,其中,如果请求终端从第一数据管理组获取最新的路由表失败,则向分布式文件系统中的其他任意一个或多个第二数据管理组发送路由表请求,直至获取最新的路由表。
可选地,在本实施例中,存储介质被设置为存储:请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息;请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的每个数据管理组的访问信息的步骤。
可选地,在本实施例中,存储介质被设置为存储:在分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之前,方法还包括:请求终端在调用访问接口之后,解析得到分布式文件系统中默认的第一数据管理组的地址信息;请求终端向第一数据管理组发送路由表请求,其中,如果请求终端从第一数据管理组获取最新的路由表失败,则向分布式文件系统中的其他任意一个或多个第二数据管理组发送路由表请求,直至获取最新的路由表。
可选地,在本实施例中,存储介质被设置为存储:在解析得到分布式文件系统中默认的第一数据管理组的地址信息之前,方法还包括:请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息;请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的第一数据管理组的访问信息的步骤。
可选地,在本实施例中,存储介质被设置为存储:请求终端解析得到分布式文件系统中部署的数据存储服务器的访问信息;请求终端向数据存储服务器发送路由表请求,其中,如果请求终端从数据存储服务器获取最新的路由表失败,或者数据存储服务器中存储的路由表不是最新的路由表,则请求终端进入解析分布式文件系统中的第一数据管理组的访问信息的步骤。
可选地,在本实施例中,存储介质被设置为存储:在路由表的同步方法请求终端发起路由表的同步方法路由表请求的过程中,如果检测到路由表的同步方法第一数据管理组中的路由表被修改,则重新访问路由表的同步方法分布式文件系统中的任意一个数据管理组,来获取路由表的同步方法最新的路由表。
可选地,在本实施例中,存储介质被设置为存储:路由表的同步方法分布式文件系统中部署的路由表的同步方法第一数据管理组以及路由表的同步方法第二数据管理组设置有读写请求门限,其中,路由表的同步方法读写请求门限用于表征对应的数据管理组中的数据管理服务器的最大访问次数,如果路由表的同步方法数据管理服务器的访问次数超过路由表的同步方法读写请求门限,则终止访问路由表的同步方法数据管理服务器。
可选地,在本实施例中,存储介质被设置为存储:对路由表的同步方法第一数据管理组中包含的数据管理服务器进行持久化处理,在路由表的同步方法第一数据管理组执行持久化处理完成之后,向至少一个路由表的同步方法第二数据管理组发送用于修改路由表的远程过程调用协议,使得路由表的同步方法第二数据管理组执行持久化处理。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (24)

1.一种路由表的同步方法,其特征在于,包括:
如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;
将所述修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新所述非默认的第二数据管理组中的路由表;
其中,分布式文件系统中部署唯一的所述第一数据管理组以及至少一个所述第二数据管理组。
2.根据权利要求1所述的方法,其特征在于,当所述分布式文件系统中部署新的第二数据管理组时,将所述新的第二数据管理组中的数据管理服务器注册至所述第一数据管理组上,并将所述第一数据管理组中的路由表同步至所述新的第二数据管理组中。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
在所述分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之后,从所述路由表请求中获取所述请求终端中的路由表版本信息;
在所述路由表版本信息与所述任意一个数据管理组中的路由表的版本信息不一致的情况下,所述任意一个数据管理组向所述请求终端返回本地存储的路由表,或者,所述请求终端通过访问所述分布式文件系统中部署的数据存储服务器来获取最新的路由表。
4.根据权利要求3所述的方法,其特征在于,在从所述路由表请求中获取所述请求终端中的路由表版本信息之前,所述方法还包括:
根据所述路由表请求中携带的待操作的文件或目录的信息,确定所述待操作的文件或目录的权限;
如果所述权限为允许操作,则继续执行从所述路由表请求中获取所述请求终端中的路由表版本信息的步骤;
如果所述权限为禁止操作,则获取所述最新的路由表失败。
5.根据权利要求3所述的方法,其特征在于,在所述分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之前,所述方法还包括:
所述请求终端在调用访问接口之后,解析得到所述分布式文件系统中的每个数据管理组的访问信息;
所述请求终端向所述任意一个数据管理组发送所述路由表请求,其中,如果所述请求终端从所述任意一个数据管理组获取所述最新的路由表失败,则向所述分布式文件系统中的其他数据管理组发送所述路由表请求,直至获取所述最新的路由表。
6.根据权利要求5所述的方法,其特征在于,在解析得到所述分布式文件系统中的每个数据管理组的访问信息之前,所述方法还包括:
所述请求终端解析得到所述分布式文件系统中部署的所述数据存储服务器的访问信息;
所述请求终端向所述数据存储服务器发送所述路由表请求,其中,如果所述请求终端从所述数据存储服务器获取所述最新的路由表失败,或者所述数据存储服务器中存储的路由表不是所述最新的路由表,则所述请求终端进入解析所述分布式文件系统中的每个数据管理组的访问信息的步骤。
7.根据权利要求3所述的方法,其特征在于,在所述分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之前,所述方法还包括:
所述请求终端在调用访问接口之后,解析得到所述分布式文件系统中所述默认的第一数据管理组的地址信息;
所述请求终端向所述第一数据管理组发送所述路由表请求,
其中,如果所述请求终端从所述第一数据管理组获取所述最新的路由表失败,则向所述分布式文件系统中的其他任意一个或多个第二数据管理组发送所述路由表请求,直至获取所述最新的路由表。
8.根据权利要求7所述的方法,其特征在于,在解析得到所述分布式文件系统中所述默认的第一数据管理组的地址信息之前,所述方法还包括:
所述请求终端解析得到所述分布式文件系统中部署的所述数据存储服务器的访问信息;
所述请求终端向所述数据存储服务器发送所述路由表请求,其中,如果所述请求终端从所述数据存储服务器获取所述最新的路由表失败,或者所述数据存储服务器中存储的路由表不是所述最新的路由表,则所述请求终端进入解析所述分布式文件系统中的所述第一数据管理组的访问信息的步骤。
9.根据权利要求3所述的方法,其特征在于,在所述请求终端发起所述路由表请求的过程中,如果检测到所述第一数据管理组中的路由表被修改,则重新访问所述分布式文件系统中的任意一个数据管理组或所述第一数据管理组,来获取所述最新的路由表。
10.根据权利要求1所述的方法,其特征在于,所述分布式文件系统中部署的所述第一数据管理组以及所述第二数据管理组设置有读写请求门限,其中,所述读写请求门限用于表征对应的数据管理组中的数据管理服务器的最大访问次数,如果所述数据管理服务器的访问次数超过所述读写请求门限,则终止访问所述数据管理服务器。
11.根据权利要求1所述的方法,其特征在于,对所述第一数据管理组中包含的数据管理服务器进行持久化处理,在所述第一数据管理组执行持久化处理完成之后,向至少一个所述第二数据管理组发送用于修改路由表的远程过程调用协议,使得所述第二数据管理组执行持久化处理。
12.一种路由表的同步装置,其特征在于,包括:
第一获取模块,用于如果检测到默认的第一数据管理组中的路由表被修改,获取修改后的路由表数据;
同步模块,用于将所述修改后的路由表数据同步至其他任意一个或多个非默认的第二数据管理组,以更新所述非默认的第二数据管理组中的路由表;
其中,分布式文件系统中部署唯一的所述第一数据管理组以及至少一个所述第二数据管理组。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括:
注册模块,用于当所述分布式文件系统中部署新的第二数据管理组时,将所述新的第二数据管理组中的数据管理服务器注册至所述第一数据管理组上,并将所述第一数据管理组中的路由表同步至所述新的第二数据管理组中。
14.根据权利要求12或13所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于在所述分布式文件系统中的任意一个数据管理组接收到请求终端发起的路由表请求之后,从所述路由表请求中获取所述请求终端中的路由表版本信息;
返回模块,用于如果所述路由表版本信息与所述任意一个数据管理组中的路由表的版本信息不一致的情况下,所述任意一个数据管理组向所述请求终端返回本地存储的路由表,或者,所述请求终端通过访问所述分布式文件系统中部署的数据存储服务器来获取最新的路由表。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括:
确定模块,用于根据所述路由表请求中携带的待操作的文件或目录的信息,确定所述待操作的文件或目录的权限;
执行模块,用于如果所述权限为允许操作,则继续执行从所述路由表请求中获取所述请求终端中的路由表版本信息的步骤;
第三获取模块,用于如果所述权限为禁止操作,则获取所述最新的路由表失败。
16.根据权利要求12所述的装置,其特征在于,所述分布式文件系统中部署的所述第一数据管理组以及所述第二数据管理组设置有读写请求门限,其中,所述读写请求门限用于表征对应的数据管理组中的数据管理服务器的最大访问次数,如果所述数据管理服务器的访问次数超过所述读写请求门限,则终止访问所述数据管理服务器。
17.根据权利要求12所述的装置,其特征在于,所述装置还包括:
持久化处理模块,用于对所述第一数据管理组中包含的数据管理服务器进行持久化处理,并在所述第一数据管理组执行持久化处理完成之后,向至少一个所述第二数据管理组发送用于修改路由表的远程过程调用协议,使得所述第二数据管理组执行持久化处理。
18.一种路由表的同步系统,其特征在于,包括:
第一数据管理服务器,用于如果检测到本地存储的路由表被修改,获取修改后的路由表数据,并将所述修改后的路由表数据进行同步处理,其中,所述第一数据管理服务器为分布式文件系统中默认的第一数据管理组中包含的任意一个服务器;
一个或多个第二数据管理服务器,与所述第一数据管理服务器具有通信关系,用于接收所述第一数据管理服务器同步的所述修改后的路由表数据,以更新所述第二数据管理组中的路由表,其中,所述第二数据管理服务器为所述分布式文件系统中非默认的第二数据管理组中包含的任意一个服务器。
19.根据权利要求18所述的系统,其特征在于,所述系统还包括:
请求终端,与所述第一数据管理服务器和所述一个或多个第二数据管理服务器具有通信关系,用于向所述分布式文件系统中的任意一个数据管理组发送路由表请求,并接收所述任意一个数据管理组返回的路由表,或者,所述请求终端通过访问所述分布式文件系统中部署的数据存储服务器来获取最新的路由表。
20.根据权利要求19所述的系统,其特征在于,
所述请求终端还用于在调用访问接口之后,解析得到所述分布式文件系统中的每个数据管理组的访问信息,并向所述任意一个数据管理组发送所述路由表请求;
其中,如果所述请求终端从所述任意一个数据管理组获取所述最新的路由表失败,则向所述分布式文件系统中的其他数据管理组发送所述路由表请求,直至获取所述最新的路由表。
21.根据权利要求20所述的系统,其特征在于,
所述请求终端还用于在无法解析得到所述分布式文件系统中的任意一个数据管理组的访问信息的情况下,解析得到所述分布式文件系统中部署的所述数据存储服务器的访问信息,并向所述数据存储服务器发送所述路由表请求;
其中,如果所述请求终端从所述数据存储服务器获取所述最新的路由表失败,或者所述数据存储服务器中存储的路由表不是所述最新的路由表,则所述请求终端开始解析所述分布式文件系统中的每个数据管理组的访问信息。
22.根据权利要求19所述的系统,其特征在于,
所述请求终端还用于在调用访问接口之后,解析得到所述分布式文件系统中所述默认的第一数据管理组的地址信息,并向所述第一数据管理组发送所述路由表请求;
其中,如果所述请求终端从所述第一数据管理组获取所述最新的路由表失败,则向所述分布式文件系统中的其他任意一个或多个第二数据管理组发送所述路由表请求,直至获取所述最新的路由表。
23.根据权利要求22所述的系统,其特征在于,
所述请求终端还用于在无法解析得到所述分布式文件系统中所述默认的第一数据管理组的访问信息的情况下,解析得到所述分布式文件系统中部署的所述数据存储服务器的访问信息,并向所述数据存储服务器发送所述路由表请求;
其中,如果所述请求终端从所述数据存储服务器获取所述最新的路由表失败,或者所述数据存储服务器中存储的路由表不是所述最新的路由表,则所述请求终端开始解析所述分布式文件系统中的所述第一数据管理组的访问信息。
24.根据权利要求19所述的系统,其特征在于,
所述请求终端还用于在发起所述路由表请求的过程中,如果检测到所述第一数据管理组中的路由表被修改,则重新访问所述分布式文件系统中的任意一个数据管理组,来获取所述最新的路由表。
CN201610133755.8A 2016-03-09 2016-03-09 路由表的同步方法、装置及系统 Active CN107181686B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201610133755.8A CN107181686B (zh) 2016-03-09 2016-03-09 路由表的同步方法、装置及系统
TW106104650A TWI734744B (zh) 2016-03-09 2017-02-13 路由表的同步方法、裝置及系統
PCT/CN2017/074630 WO2017152768A1 (zh) 2016-03-09 2017-02-23 路由表的同步方法、装置及系统
US16/125,471 US10826817B2 (en) 2016-03-09 2018-09-07 Routing table synchronization method, apparatus, and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610133755.8A CN107181686B (zh) 2016-03-09 2016-03-09 路由表的同步方法、装置及系统

Publications (2)

Publication Number Publication Date
CN107181686A true CN107181686A (zh) 2017-09-19
CN107181686B CN107181686B (zh) 2020-06-23

Family

ID=59790033

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610133755.8A Active CN107181686B (zh) 2016-03-09 2016-03-09 路由表的同步方法、装置及系统

Country Status (4)

Country Link
US (1) US10826817B2 (zh)
CN (1) CN107181686B (zh)
TW (1) TWI734744B (zh)
WO (1) WO2017152768A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107682261A (zh) * 2017-10-24 2018-02-09 新华三技术有限公司 流量转发方法及装置
CN110071870A (zh) * 2018-01-24 2019-07-30 苏宁云商集团股份有限公司 基于Alluxio的多HDFS集群的路由方法及装置
CN111431805A (zh) * 2020-03-27 2020-07-17 上海天好信息技术股份有限公司 一种物联网多路信号复用的同步策略方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107181686B (zh) 2016-03-09 2020-06-23 阿里巴巴集团控股有限公司 路由表的同步方法、装置及系统
US10630571B1 (en) * 2017-11-16 2020-04-21 Amazon Technologies, Inc. Fault-tolerant request routing
US10411990B2 (en) * 2017-12-18 2019-09-10 At&T Intellectual Property I, L.P. Routing stability in hybrid software-defined networking networks
CN109885550B (zh) * 2018-12-28 2022-09-13 安徽维德工业自动化有限公司 一种基于全联通路由层的文件存储系统
US11704033B1 (en) * 2021-09-30 2023-07-18 Amazon Technologies, Inc. Request routing management for a distributed storage system
CN114650251B (zh) * 2022-03-18 2024-02-20 北京百度网讯科技有限公司 路由表构建方法、装置、设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1731400A (zh) * 2005-08-16 2006-02-08 杭州华为三康技术有限公司 分布式系统中数据查询的方法及板间数据同步的方法
US20130124912A1 (en) * 2011-11-15 2013-05-16 International Business Machines Corporation Synchronizing a distributed communication system using diagnostic heartbeating
CN103139081A (zh) * 2011-11-28 2013-06-05 中兴通讯股份有限公司 分布式哈希表路由表更新方法及节点
CN103259824A (zh) * 2012-02-21 2013-08-21 深圳市腾讯计算机系统有限公司 分布式数据存储系统中数据路由的同步方法和装置
CN104253748A (zh) * 2014-09-24 2014-12-31 大唐移动通信设备有限公司 基于分布式架构的路由方法和系统
CN104468364A (zh) * 2013-09-18 2015-03-25 华为技术有限公司 路由同步方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004013215A (ja) * 2002-06-03 2004-01-15 Hitachi Ltd ストレージシステム、ストレージサブシステム、および、それらを含む情報処理システム
CN104050249B (zh) * 2011-12-31 2018-03-30 北京奇虎科技有限公司 分布式查询引擎系统和方法及元数据服务器
US10135732B2 (en) * 2012-12-31 2018-11-20 Juniper Networks, Inc. Remotely updating routing tables
CN104283906B (zh) * 2013-07-02 2018-06-19 华为技术有限公司 分布式存储系统、集群节点及其区间管理方法
CN107181686B (zh) 2016-03-09 2020-06-23 阿里巴巴集团控股有限公司 路由表的同步方法、装置及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1731400A (zh) * 2005-08-16 2006-02-08 杭州华为三康技术有限公司 分布式系统中数据查询的方法及板间数据同步的方法
US20130124912A1 (en) * 2011-11-15 2013-05-16 International Business Machines Corporation Synchronizing a distributed communication system using diagnostic heartbeating
CN103139081A (zh) * 2011-11-28 2013-06-05 中兴通讯股份有限公司 分布式哈希表路由表更新方法及节点
CN103259824A (zh) * 2012-02-21 2013-08-21 深圳市腾讯计算机系统有限公司 分布式数据存储系统中数据路由的同步方法和装置
CN104468364A (zh) * 2013-09-18 2015-03-25 华为技术有限公司 路由同步方法及装置
CN104253748A (zh) * 2014-09-24 2014-12-31 大唐移动通信设备有限公司 基于分布式架构的路由方法和系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107682261A (zh) * 2017-10-24 2018-02-09 新华三技术有限公司 流量转发方法及装置
CN110071870A (zh) * 2018-01-24 2019-07-30 苏宁云商集团股份有限公司 基于Alluxio的多HDFS集群的路由方法及装置
CN111431805A (zh) * 2020-03-27 2020-07-17 上海天好信息技术股份有限公司 一种物联网多路信号复用的同步策略方法
CN111431805B (zh) * 2020-03-27 2021-01-12 上海天好信息技术股份有限公司 一种物联网多路信号复用的同步策略方法

Also Published As

Publication number Publication date
WO2017152768A1 (zh) 2017-09-14
TW201735586A (zh) 2017-10-01
TWI734744B (zh) 2021-08-01
US20180367441A1 (en) 2018-12-20
US10826817B2 (en) 2020-11-03
CN107181686B (zh) 2020-06-23

Similar Documents

Publication Publication Date Title
CN107181686A (zh) 路由表的同步方法、装置及系统
CN103856569B (zh) 一种同步域名系统资源信息的方法及设备
CN103873451B (zh) 一种数据同步的方法、设备和系统
CN103685590B (zh) 获取ip地址的方法及系统
CN106790112A (zh) 一种集成轻量级区块链的节点操作系统及数据更新的方法
EP2696555B1 (en) Method and system for identifying storage device
CN108989430B (zh) 负载均衡方法、装置及存储介质
CN105468660B (zh) 分布式文件系统的读方法、客户端设备及分布式文件系统
CN106713391A (zh) 一种session信息的共享方法和共享系统
WO2009111965A1 (zh) 一种数据同步的方法、设备及系统
CN112737856B (zh) 链路追踪方法和装置、存储介质及电子装置
CN109729183A (zh) 请求处理方法、装置、设备及存储介质
CN105592162A (zh) 基于多类型文件的上传方法及系统
CN111901705A (zh) 一种olt设备的omci功能虚拟化系统
CN104636368B (zh) 数据检索方法、装置及服务器
CN102299814B (zh) 一种snmp代理上管理信息库的升级方法和系统
CN112711612A (zh) 数据处理方法、装置和存储介质及电子装置
CN108683631A (zh) 一种防止扫描权限文件的方法和系统
CN102594874B (zh) 一种同步处理方法和装置
CN105471955A (zh) 分布式文件系统的写方法、客户端设备及分布式文件系统
CN108737586A (zh) 一种域名查询服务的灾备切换方法和装置
CN107180034A (zh) MySQL数据库的集群系统
CN108089968A (zh) 一种宿主机监控虚拟机数据库状态的方法
CN110083504B (zh) 分布式任务的运行状态监控方法及装置
CN107046474A (zh) 一种服务集群

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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210728

Address after: No.12 Zhuantang science and technology economic block, Xihu District, Hangzhou City, Zhejiang Province

Patentee after: ALIYUN COMPUTING Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.