CN109379448B - 一种文件分布式部署方法、装置、电子设备及存储介质 - Google Patents

一种文件分布式部署方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN109379448B
CN109379448B CN201811614222.7A CN201811614222A CN109379448B CN 109379448 B CN109379448 B CN 109379448B CN 201811614222 A CN201811614222 A CN 201811614222A CN 109379448 B CN109379448 B CN 109379448B
Authority
CN
China
Prior art keywords
deployment
file
task
sharing
nodes
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.)
Active
Application number
CN201811614222.7A
Other languages
English (en)
Other versions
CN109379448A (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.)
Shenzhen Onething Technology Co Ltd
Original Assignee
Shenzhen Onething Technology 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 Shenzhen Onething Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201811614222.7A priority Critical patent/CN109379448B/zh
Publication of CN109379448A publication Critical patent/CN109379448A/zh
Application granted granted Critical
Publication of CN109379448B publication Critical patent/CN109379448B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • 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/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users

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

本申请公开了一种文件分布式部署方法,调度中心仅需将子部署任务按共享节点的身份信息分配给对应的已登录的共享节点,得到与每个共享节点对应的待部署任务,之后则是由每个共享节点主动通过调度中心的固定IP地址在调度中心查找是否有与自身身份信息对应的待部署任务,以根据取回的待部署任务获取相应的文件分片。相比于由调度中心主动向共享节点进行任务推送的现有技术,本申请所提供的技术方案是由各共享节点主动进行任务查询,因此调度中心无需再维护IP地址与节点间的对应关系,减少了调度中心的工作量、降低了负载。本申请还同时公开了一种调度装置、电子设备及计算机可读存储介质,具有上述有益效果。

Description

一种文件分布式部署方法、装置、电子设备及存储介质
技术领域
本申请涉及分布式存储技术领域,特别涉及一种文件分布式部署方法、装置、电子设备及计算机可读存储介质。
背景技术
分布式存储***,是将数据分散存储在多***立的设备上。传统的网络存储***采用集中的存储服务器存放所有数据,存储服务器成为***性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储***采用可扩展的***结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了***的可靠性、可用性和存取效率,还易于扩展。
现有分布式存储***往往将拥有较强数据存储能力的服务器作为节点分布在各地,总体来说节点数量较少,且由于作为节点的服务器会存储极大量的数据,通常会保持24小时在线,因此每个此类节点都会拥有固定的公网IP,也就是说调度重点只需要保存一次这些节点的公网IP即可通过保存的IP地址与每个节点进行文件的分布式部署。
由于分布式存储***的发展,出现了小型化的存储节点(后文将统一称为共享节点),相较于传统拥有较强数据存储能力的服务器,其存储能力较弱,且极度分散,但同时由于其小型化的特性,能够轻易的被普通用户置于各式可联网场景下,数量可轻易升至十万甚至百万。由于现今用户家中往往会存在多台可联网设备,因此广泛采用动态IP,也就是说每台可联网设备在不同联网时间将通过不同的IP地址连接至公网,也就是调度中心需要不断的更新IP地址与共享节点间的对应关系,才能够正确的共享节点进行文件的分布式部署,增加了调度中心的工作量和负载。
发明内容
本申请的目的在于提供一种文件分布式部署方法、调度装置、电子设备以及计算机可读存储介质,旨在解决现有调度中心在沿用传统方式(即调度中心主动推送式)与数量众多的共享节点进行文件分布式部署时,需要频繁更新IP地址与共享节点间的对应关系所带来的额外工作量和负载的问题。
为实现上述目的,本申请提供了一种文件分布式部署方法,该方法包括:
接收文件部署任务,并将所述文件部署任务分解成多个子部署任务;
将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,得到与每个所述共享节点对应的待部署任务;
接收各所述共享节点发来的任务查询请求,根据所述任务查询请求中包含的共享节点的身份信息向对应的共享节点返回相应的待部署任务,以使接收到待部署任务的共享节点根据所述待部署任务获取对应的文件分片。
可选的,在将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点前,还包括:
接收通过预设路径发来的心跳连接请求,并根据包含于所述心跳连接请求中的身份信息将对应的共享节点的连接状态记录为已登陆。
可选的,将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,包括:
根据所述预设冗余规则确定每个所述子部署任务的目标部署数量;
为不同属性的各共享节点均分配所述第一数量的相同子部署任务;其中,所述共享节点的属性包括所述共享节点的所属区域和/或所属运营商,属性种类数×第一数量=所述目标部署数量。
可选的,该文件分布式部署方法还包括:
根据相同属性的各共享节点的状态参数挑选数量与所述第一数量一致的目标同属性共享节点;其中,所述状态参数包括网络带宽、网络质量、剩余存储空间中的至少一项;
将各所述子部署任务分配给各所述目标同属性共享节点。
可选的,该文件分布式部署方法还包括:
当分布在当前的已登录的共享节点中的相同文件分片的数量小于与所述预设冗余规则对应的数量时,增发与相应文件分片对应的待部署任务。
为实现上述目的,本申请还提供了一种调度装置,该装置包括:
部署任务分解单元,用于接收文件部署任务,并将所述文件部署任务分解成多个子部署任务;
子部署任务分配单元,用于将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,得到与每个所述共享节点对应的待部署任务;
待部署任务下发单元,用于接收各所述共享节点发来的任务查询请求,根据所述任务查询请求中包含的共享节点的身份信息向对应的共享节点返回相应的待部署任务,以使接收到待部署任务的共享节点根据所述待部署任务获取对应的文件分片。
可选的,该调度装置还包括:
连接状态记录单元,用于接收通过预设路径发来的心跳连接请求,并根据包含于所述心跳连接请求中的身份信息将对应的共享节点的连接状态记录为已登陆。
可选的,所述子部署任务分配单元包括:
目标部署数量确定子单元,用于根据所述预设冗余规则确定每个所述子部署任务的目标部署数量;
按属性均匀分配子单元,用于为不同属性的各共享节点均分配所述第一数量的相同子部署任务;其中,所述共享节点的属性包括所述共享节点的所属区域和/或所属运营商,属性种类数×第一数量=所述目标部署数量。
可选的,该调度装置还包括:
目标同属性共享节点挑选单元,用于根据相同属性的各共享节点的状态参数挑选数量与所述第一数量一致的目标同属性共享节点;其中,所述状态参数包括网络带宽、网络质量、剩余存储空间中的至少一项;
目标同属性共享节点分配单元,用于将各所述子部署任务分配给各所述目标同属性共享节点。
可选的,该调度装置还包括:
待部署任务增发单元,用于当分布在当前的已登录的共享节点中的相同文件分片的数量小于与所述预设冗余规则对应的数量时,增发与相应文件分片对应的待部署任务。
为实现上述目的,本申请还进一步提供了一种电子设备,所述电子设备包括存储器、处理器、总线以及执行机构,所述存储器上存储有可在所述处理器上运行的文件分布式部署程序,所述文件分布式部署程序被所述总线传输至所述处理器,并在被所述处理器执行时控制所述执行机构实现如上述内容所描述的文件分布式部署方法。
为实现上述目的,本申请还进一步提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有目标数据获取程序,所述目标数据获取程序可被一个或者多个处理器执行,以实现如上述内容所描述的文件分布式部署方法。
显然,应用本申请所提供方案的调度中心仅需将子部署任务按共享节点的身份信息分配给对应的已登录的共享节点,得到与每个共享节点对应的待部署任务,之后则是由每个共享节点主动通过调度中心的固定IP地址在调度中心查找是否有与自身身份信息对应的待部署任务,以根据取回的待部署任务获取相应的文件分片。区别于传统由调度中心通过记录的IP地址主动向对应共享节点下发子部署任务的现有技术(即调度中心主动推送式),本申请所提供的技术方案是由各共享节点主动进行任务查询,因此调度中心无需再维护IP地址与节点间的对应关系,减少了调度中心的工作量、降低了负载。本申请同时还提供了一种文件分布式部署装置、电子设备及计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种文件分布式部署方法的流程图;
图2为本申请实施例提供的文件分布式部署方法中一种将各子部署任务分配给各共享节点的方法的流程图;
图3为本申请实施例提供的一种调度中心与共享节点间进行文件分布式部署的时序图;
图4为本申请实施例提供的一种文件分布式部署方法的逻辑示意图;
图5为本申请实施例提供的一种调度装置的结构示意图;
图6为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
实施例一
请参见图1,图1为本申请实施例提供的一种文件分布式部署方法的流程图,其包括以下步骤:
S101:接收文件部署任务,并将文件部署任务分解成多个子部署任务;
调度中心首先接收来自更上层下发的文件部署任务,此时接收到的文件部署任务是完整的,对应完整的待部署文件。由于本申请应用于由数量巨大的共享节点组成的分布式存储网络场景下,本步骤旨在通过将完整的文件部署任务分解为多个子部署,并通过后续步骤将各子部署任务分配给不同的共享节点的方式来实现文件的分布式部署,通过此种方式不仅能够同时从多个共享节点拉取文件分片,还能够实现较好的容量均衡。
其中,完整的文件部署任务的部署对象是完整的文件,每个子部署任务的部署对象应为该完整的文件的一部分,即对应于部署任务的分解,完整的文件也会被拆分为相同数量的文件分片。具体的,将一个完整的文件部署任务分解为多个子部署任务时可基于多种方式,可以选用固定的文件块大小作为最下拆分单位,相应的,与这个文件块对应的子部署任务与其它子部署任务应具有相同的头部识别数据和不同的数据偏移地址,以便使用不同的数据偏移地址在相应的寄存器中找到完整文件中的目标文件块。当然,每个文件块的大小并不是固定的,在根据具体应用场景中存在的影响因素灵活选择文件块的大小。进一步的,每个文件块的大小在实际应用场景支持的情况下也可以是不同的,但相较于固定大小的文件块管理难度更大,但不同大小的文件块更加能够适应不同共享节点不同的剩余存储空间。
S102:将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,得到与每个共享节点对应的待部署任务;
在S101的基础上,本步骤旨在将各子部署任务分配给已登陆的各共享节点,得到与每个共享节点对应的待部署任务,然后等待各共享节点主动来调度中心查询是否有与自己对应的待部署任务。
其中,预设冗余规则是指作为一个完整文件的每个文件分片的分发数量,即通过将每个文件分片同时分发给多个共享节点的方式来保证用户在请求该完整文件时,一定能够从已登录的共享节点中取回构成该完整文件的文件分片。举个例子,假设一个20MB大小的视频文件,按照4MB的分片大小被拆分为5个同样大小的文件分片,为了尽可能的保证每个文件分片都能够被用户取到,可以设定将每个文件分片都分发给10个不同的共享节点,假定这10个共享节点在用户想要拉取该文件分片时都处于工作状态,那么用户就可以任选其中一个共享节点得到该文件分片。当然,冗余规则对应的相同文件分片的分发数量也可以设置为诸如2或3等较小的数,但由于共享节点通常会被设置在每个用户的家中,其是否处于工作状态取决于用户的行为,并不能够保证其处于24小时运行状态,出于对共享节点工作状态的不稳定性考虑,通常会将该冗余规则对应的相同文件分片的分发数量设置的较大一些。
为了确定当前已登录的共享节点,调度中心还可以接收每个共享节点通过预设路径发来的心跳连接请求,并根据包含于心跳连接请求中的身份信息将对应的共享节点的连接状态记录为已登陆。
区别于没有固定IP地址的共享节点,调度中心不会轻易改变且通常持续的处于工作状态,因此其通常拥有固定的IP地址,调度中心的IP地址可以预先写在每个共享节点的存储器中,以便于共享节点可以直接根据存储器中的存放调度中心IP地址的路径向调度中心发送心跳连接请求,以使得接收到该心跳连接请求的调度中心能够确定当前处于已登录状态的共享节点。
同时,针对共享节点工作状态的不稳定性,在导致某一时刻已登录的共享节点中相同文件分片的数量小于预设冗余规则对应的数量时,可以将该文件分片增发给相应数量的新共享节点(即未存储该文件分片的共享节点);在导致某一时刻已登录的共享节点中相同文件分片的数量大于预设冗余规则对应的数量时,也可以适当的删去部分共享节点中存储的该文件分片,节省不必要的存储空间。
需要说明的是,本步骤只是由调度中心根据每个已登录的共享节点的身份信息(因为每个共享节点都会有其唯一的身份识别信息,而基于动态IP的情况,其每次与调度中心建立心跳连接时通常会使用不同的IP地址)确定要将每个子部署任务发给哪些共享节点,进而得到与每个共享节点对应的待部署任务,而不是直接根据该共享节点的IP地址向其下发对应的子部署任务,这是做无需维护IP地址与共享节点间的对应关系,也防止了由调度中心进行主动推送出现的共享节点不匹配问题(即由于IP地址的动态变化导致的调度中心将原先应发送给A共享节点的子部署任务发给了B共享节点)。
进一步的,由于共享节点的特性,其会广泛分布在全世界各个地区,根据所拥有的用户所在地区网络服务的质量和用户的主观意愿,每个共享节点所处的工作状态和属性往往不一,例如所属网络运营商所提供的网络服务的质量、带宽大小等等,因此为了尽可能的使用户拥有更好的访问体验,还可以在分发每个相同的文件分片时考虑到各个共享节点的不同属性,即将各共享节点根据其所属的属性进行分类,对每一类共享节点均分发相应数量的相同文件分片,以尽可能的做到均匀分布。在每一类相同属性的共享节点中,还可以进一步的根据其工作状态的好坏来选取一些优选的目标共享节点,以尽可能的分布均匀、用户体验更佳。
S103:接收各共享节点发来的任务查询请求,根据任务查询请求中包含的共享节点的身份信息向对应的共享节点返回相应的待部署任务,以使接收到待部署任务的共享节点根据待部署任务获取对应的文件分片。
在S102的基础上,本步骤旨在由调度中心接收各共享节点发来的任务查询请求,调度中心根据包含于每个任务查询请求中的身份信息确定发来该任务查询请求的共享节点,并在存储有各待部署任务的空间中查询是否有与该共享节点对应的待部署任务,若有则响应于该任务查询请求,将相应的待部署任务原路返回至该共享节点,收到该待部署任务的共享节点也可以根据该待部署任务从源文件服务器或其它存储有对应文件分片的共享节点中拉取该文件分片,最终实现文件的分布式部署。
基于上述技术方案,调度中心仅需将子部署任务按共享节点的身份信息分配给对应的已登录的共享节点,得到与每个共享节点对应的待部署任务,之后则是由每个共享节点主动通过调度中心的固定IP地址在调度中心查找是否有与自身身份信息对应的待部署任务,以根据取回的待部署任务获取相应的文件分片。区别于传统由调度中心通过记录的IP地址主动向对应共享节点下发子部署任务的现有技术(即调度中心主动推送式),本申请所提供的技术方案是由各共享节点主动进行任务查询,因此调度中心无需再维护IP地址与节点间的对应关系,减少了调度中心的工作量、降低了负载。
实施例二
请参见图2,图2为本申请实施例提供的文件分布式部署方法中一种将各子部署任务分配给各共享节点的方法的流程图,本实施例针对实施例一中的S102,给出了一种按照各共享节点所属属性进行分类以增加相同文件分片分布均匀度的方法,包括如下步骤:
S201:根据预设冗余规则确定每个子部署任务的目标部署数量;
本步骤旨在根据预设冗余规则确定每个子部署任务的目标部署数量,沿用上述给出的例子,当预设冗余规则设定为10时,意味着构成完整文件的5个文件分片都需要分配给10个共享节点,也就是说一共要部署5×10=50个文件分片在各共享节点中。
S202:为不同属性的各共享节点均分配第一数量的相同子部署任务;
在S201的基础上,本步骤旨在为不同属性的各共享节点均分配目标部署数量的相同子部署任务,也就是说首先按照每个共享节点所属的属性将其划分不同的属性组,向每个属性组的共享节点均分配相同数量(第一数量)的子部署任务,以使得不同属性的共享节点中存储有相同数量的相同文件分片,实现文件分片的均匀分布。
其中,共享节点的属性可以包括共享节点的所属区域和/或所属运营商,以国内的三大网络运营商电信、联通、移动为例,就可以将各共享节点所处区域下使用的网络运营商分为三类,假定每个相同文件分片的在预设冗余规则向下应分发12份,因此可以在这三家网络运营商使用人数大体相同的情况下,向每个网络运营商下的共享节点均分发4份,使得总数满足12。所属区域(例如哪个省、市、县、自治区等等)也是同理,在此不再赘述。
S203:根据相同属性的各共享节点的状态参数挑选数量与第一数量一致的目标同属性共享节点;
在S202对不同属性的共享节点完成文件分片的均匀分布的基础上,本步骤旨在对每一类相同属性的共享节点进行子部署任务分配时,根据各共享节点的状态参数对应的工作状态好坏来挑选部分共享节点进行分配,以通过将子部署任务尽可能的分配给工作状态更佳的共享节点的方式来提升用户的访问体验。
其中,状态参数可以包括网络带宽、网络质量、剩余存储空间中的至少一项,当然可以根据实际情况增加额外的可以表征工作状态的参数,进一步的,还可以同时根据多种参数,并采用加权计算法来得到一个较为综合的评估参数来进行同一尺度下的评估。
S204:将各子部署任务分配给各目标同属性共享节点。
实施例三
请参见图3,图3为本申请实施例提供的一种调度中心与共享节点间进行文件分布式部署的时序图,区别于前两个站在调度中心角度来对本申请所提供方案进行的描述,本实施例将通过包含两个执行主体的时序图方式来更佳清晰的描述各共享节点与调度中心间的交互过程:
1、文件部署任务:
调度中心接收更上层发来的文件部署任务,期望通过调度中心将与该文件部署任务对应的文件部署在由共享节点组成的分布式存储网络中。
2、任务分解:
调度中心将对应完整文件的文件部署任务分解为多个子部署任务,每个子部署任务对应构成该完整文件的一个文件分片。
3、任务分配:
调度中心按照预设冗余规则将每个子部署任务分配给已登录的各共享节点,得到与每个共享节点对应的待部署任务;
其中,各待部署任务可以存储在调度中心的任务存储池或任务分发集群中,已登录的共享节点的身份信息、属性信息、状态参数等信息则可以由信息管理集群来进行存储和管理。
4、任务查询请求:
共享节点向调度中心主动发送包含自身身份信息的任务查询请求,以查得与自身匹配的待部署任务;
5、待部署任务:
调度中心根据收到的任务查询请求在存储有各待部署任务的存储池或任务分发集群中查询与共享节点对应的待部署任务,并原路返回;
6、拉取文件分片:
共享节点收到调度中心返回的待部署任务,根据待部署任务从存储有目标文件分片的源文件服务器或其它共享节点中拉取该目标文件分片。
7、完成部署:
共享节点将拉取来的目标文件分片存储在自身,完成本共享节点的文件部署任务。
进一步的,还可以在部署完整后向调度中心返回完成信息,以使得调度中心根据该完整信息确定部署工作的进展。
上述过程还可以参见如图4所示的另一种表现形式,其中,节点调度管理集群、任务分发集群、节点信息管理集群可作为调度中心的三个组成部分,P2P(Peer To Peer,点对点)下载是指一个共享节点直接从另一个共享节点拉取文件分片的方式。
因为情况复杂,无法一一列举进行阐述,本领域技术人员应能意识到根据本申请提供的基本方法原理结合实际情况可以存在很多的例子,在不付出足够的创造性劳动下,应均在本申请的保护范围内。
实施例四
请参见图5,图5为本申请实施例提供的一种调度装置的结构示意图,该调度装置可以包括:
部署任务分解单元100,用于接收文件部署任务,并将文件部署任务分解成多个子部署任务;
子部署任务分配单元200,用于将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,得到与每个共享节点对应的待部署任务;
待部署任务下发单元300,用于接收各共享节点发来的任务查询请求,根据任务查询请求中包含的共享节点的身份信息向对应的共享节点下发相应的待部署任务,以使接收到待部署任务的共享节点根据待部署任务获取对应的文件分片。
进一步的,该调度装置还可以包括:
连接状态记录单元,用于接收通过预设路径发来的心跳连接请求,并根据包含于心跳连接请求中的身份信息将对应的共享节点的连接状态记录为已登陆。
其中,该子部署任务分配单元200可以包括:
目标部署数量确定子单元,用于根据冗余规则确定每个子部署任务的目标部署数量;
按属性均匀分配子单元,用于为不同属性的各共享节点均分配第一数量的相同子部署任务;其中,共享节点的属性包括共享节点的所属区域和/或所属运营商,属性种类数×第一数量=目标部署数量。
进一步的,该调度装置还可以包括:
目标同属性共享节点挑选单元,用于根据相同属性的各共享节点的状态参数挑选数量与第一数量一致的目标同属性共享节点;其中,状态参数包括网络带宽、网络质量、剩余存储空间中的至少一项;
目标同属性共享节点分配单元,用于将各子部署任务分配给各目标同属性共享节点。
更进一步的,该调度装置还可以包括:
待部署任务增发单元,用于当分布在当前的已登录的共享节点中的相同文件分片的数量小于与预设冗余规则对应的数量时,增发与相应文件分片对应的待部署任务。
本实施例作为与方法实施例对应的***实施例存在,具有与方法实施例相同的有益效果,此处不再一一赘述。
实施例五
在上文中已通过一些实施例对如何通过如何实现文件的分布式部署进行了详细的描述,本申请还提供一种与该方法对应的实体硬件装置,此部分内容原理与方案部分相对应,实现原理的部分此处不再赘述,以下将对该实体硬件装置的硬件组成进行描述,请参见图6,图6为本申请实施例提供的一种电子设备的结构示意图:
该电子设备400包括存储器410、处理器420以及总线430,存储器410上存储有可在处理器420上运行的文件分布式部署程序,该文件分布式部署程序通过总线430被传输至处理器420,并在被处理器420执行时可实现如上述实施例所描述的文件分布式部署方法的各步骤。
其中,存储器410至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器410在一些实施例中可以是该电子设备400的内部存储单元,例如电子设备400的硬盘。存储器410在另一些实施例中也可以是该电子设备400的外部存储设备,例如电子设备400上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器410还可以同时由内部存储单元和外部存储设备同时组成。进一步的,存储器410不仅可以用于存储安装于电子设备400中的各种应用软件和各类数据,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器420在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器410中存储的程序代码或处理数据,例如执行文件分布式部署的程序等。
总线430可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条双向中空指示线表示,但并不表示仅有一根总线或一种类型的总线。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例中所给出的方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (8)

1.一种文件分布式部署方法,其特征在于,包括:
接收文件部署任务,并将所述文件部署任务分解成多个子部署任务;
将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,得到与每个所述共享节点对应的待部署任务;其中,预设冗余规则为一个完整文件的每个文件分片的分发数量;
接收各所述共享节点发来的任务查询请求,根据所述任务查询请求中包含的共享节点的身份信息向对应的共享节点返回相应的待部署任务,以使接收到待部署任务的共享节点根据所述待部署任务获取对应的文件分片;
所述将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,包括:根据所述预设冗余规则确定每个所述子部署任务的目标部署数量;为不同属性的各共享节点均分配第一数量的相同子部署任务;其中,所述共享节点的属性包括所述共享节点的所属区域和/或所属运营商,属性种类数×第一数量=所述目标部署数量。
2.根据权利要求1所述的文件分布式部署方法,其特征在于,在将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点前,还包括:
接收通过预设路径发来的心跳连接请求,并根据包含于所述心跳连接请求中的身份信息将对应的共享节点的连接状态记录为已登陆。
3.根据权利要求1所述的文件分布式部署方法,其特征在于,还包括:
根据相同属性的各共享节点的状态参数挑选数量与所述第一数量一致的目标同属性共享节点;其中,所述状态参数包括网络带宽、网络质量、剩余存储空间中的至少一项;
将各所述子部署任务分配给各所述目标同属性共享节点。
4.根据权利要求1至3任一项所述的文件分布式部署方法,其特征在于,还包括:
当分布在当前的已登录的共享节点中的相同文件分片的数量小于与所述预设冗余规则对应的数量时,增发与相应文件分片对应的待部署任务。
5.一种调度装置,其特征在于,包括:
部署任务分解单元,用于接收文件部署任务,并将所述文件部署任务分解成多个子部署任务;
子部署任务分配单元,用于将与预设冗余规则对应数量的各子部署任务分配给已登陆的各共享节点,得到与每个所述共享节点对应的待部署任务;其中,预设冗余规则是指作为一个完整文件的每个文件分片的分发数量;
待部署任务下发单元,用于接收各所述共享节点发来的任务查询请求,根据所述任务查询请求中包含的共享节点的身份信息向对应的共享节点返回相应的待部署任务,以使接收到待部署任务的共享节点根据所述待部署任务获取对应的文件分片;
所述子部署任务分配单元包括:目标部署数量确定子单元,用于根据所述预设冗余规则确定每个所述子部署任务的目标部署数量;按属性均匀分配子单元,用于为不同属性的各共享节点均分配第一数量的相同子部署任务;其中,所述共享节点的属性包括所述共享节点的所属区域和/或所属运营商,属性种类数×第一数量=所述目标部署数量。
6.根据权利要求5所述的调度装置,其特征在于,还包括:
目标同属性共享节点挑选单元,用于根据相同属性的各共享节点的状态参数挑选数量与所述第一数量一致的目标同属性共享节点;其中,所述状态参数包括网络带宽、网络质量、剩余存储空间中的至少一项;
目标同属性共享节点分配单元,用于将各所述子部署任务分配给各所述目标同属性共享节点。
7.一种电子设备,其特征在于,所述电子设备包括存储器、处理器以及总线,所述存储器上存储有可在所述处理器上运行的文件分布式部署程序,所述文件分布式部署程序被所述总线传输至所述处理器,并在被所述处理器执行时可实现如权利要求1至4任一项所述的文件分布式部署方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有预安装程序,所述预安装程序可被一个或者多个处理器执行,以实现如权利要求1至4中任一项所述的文件分布式部署方法。
CN201811614222.7A 2018-12-27 2018-12-27 一种文件分布式部署方法、装置、电子设备及存储介质 Active CN109379448B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811614222.7A CN109379448B (zh) 2018-12-27 2018-12-27 一种文件分布式部署方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811614222.7A CN109379448B (zh) 2018-12-27 2018-12-27 一种文件分布式部署方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN109379448A CN109379448A (zh) 2019-02-22
CN109379448B true CN109379448B (zh) 2022-06-10

Family

ID=65371997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811614222.7A Active CN109379448B (zh) 2018-12-27 2018-12-27 一种文件分布式部署方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN109379448B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981780A (zh) * 2019-03-27 2019-07-05 深圳市网心科技有限公司 一种调度方法、节点设备、调度***及存储介质
CN110008181A (zh) * 2019-04-08 2019-07-12 深圳市网心科技有限公司 文件查询方法及装置、计算机装置及存储介质
CN110377407A (zh) * 2019-06-19 2019-10-25 北京威努特技术有限公司 一种扫描任务调度方法、装置、存储介质及设备
CN110365783B (zh) * 2019-07-18 2022-10-21 深圳市网心科技有限公司 文件部署方法及装置、网络节点及存储介质
CN112035420B (zh) * 2020-09-03 2023-03-14 西北工业大学 数据共享方法、共享设备和***
CN113190344B (zh) * 2021-03-26 2023-12-15 中国科学院软件研究所 一种面向软件定义卫星的神经网络动态重构部署的方法以及装置
CN113282423B (zh) * 2021-07-14 2021-11-16 中电金信软件有限公司 部署方法、***及计算机可读存储介质
CN114741370A (zh) * 2022-04-16 2022-07-12 即刻雾联科技(北京)有限公司 一种边缘设备资源整合方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026490A (zh) * 2007-01-26 2007-08-29 华为技术有限公司 实现业务分发与同步的设备、***及方法
CN101291245A (zh) * 2007-04-16 2008-10-22 阿里巴巴集团控股有限公司 一种分布式处理方法、***及其装置
CN102510524A (zh) * 2011-10-26 2012-06-20 国家广播电影电视总局广播科学研究院 广播电视网的管控***
CN106201694A (zh) * 2016-07-13 2016-12-07 北京农信互联科技有限公司 一种分布式***下执行定时任务的配置方法及***
CN107239329A (zh) * 2016-03-29 2017-10-10 西门子公司 云环境下统一资源调度方法及***
CN108304255A (zh) * 2017-12-29 2018-07-20 北京城市网邻信息技术有限公司 分布式任务调度方法及装置、电子设备及可读存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101026490A (zh) * 2007-01-26 2007-08-29 华为技术有限公司 实现业务分发与同步的设备、***及方法
CN101291245A (zh) * 2007-04-16 2008-10-22 阿里巴巴集团控股有限公司 一种分布式处理方法、***及其装置
CN102510524A (zh) * 2011-10-26 2012-06-20 国家广播电影电视总局广播科学研究院 广播电视网的管控***
CN107239329A (zh) * 2016-03-29 2017-10-10 西门子公司 云环境下统一资源调度方法及***
CN106201694A (zh) * 2016-07-13 2016-12-07 北京农信互联科技有限公司 一种分布式***下执行定时任务的配置方法及***
CN108304255A (zh) * 2017-12-29 2018-07-20 北京城市网邻信息技术有限公司 分布式任务调度方法及装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN109379448A (zh) 2019-02-22

Similar Documents

Publication Publication Date Title
CN109379448B (zh) 一种文件分布式部署方法、装置、电子设备及存储介质
CN106936899B (zh) 分布式统计分析***的配置方法及分布式统计分析***
CN110888858B (zh) 数据库的操作方法和装置、存储介质、电子装置
KR20120018178A (ko) 객체 저장부들의 네트워크상의 스웜-기반의 동기화
WO2021227999A1 (zh) 云计算服务***和方法
JP5503678B2 (ja) ホスト提供システム及びホスト提供方法
CN110196843B (zh) 一种基于容器集群的文件分发方法及容器集群
CN109992373B (zh) 资源调度方法、信息管理方法和装置及任务部署***
US8666958B2 (en) Approaches to reducing lock communications in a shared disk database
CN112579622A (zh) 业务数据的处理方法、装置及设备
WO2014183417A1 (zh) 管理内存的方法、装置和***
WO2024066828A1 (zh) 一种数据处理方法、装置、设备、计算机可读存储介质及计算机程序产品
WO2017095820A1 (en) Methods and devices for acquiring data using virtual machine and host machine
CN110740155B (zh) 分布式***中的请求处理方法及装置
CN113630457B (zh) 任务调度方法、装置、计算机设备和存储介质
CN116069493A (zh) 一种数据处理方法、装置、设备以及可读存储介质
CN112988377B (zh) 用于云服务的资源分配方法、***和介质
JP2009157437A (ja) 分散記憶システム
CN111274022B (zh) 服务器资源分配方法和***
CN110798358A (zh) 分布式服务标识方法、装置、计算机可读介质及电子设备
CN105282203A (zh) 一种集中目录式p2p网络的建立方法和设备
CN103686224A (zh) 基于分布式锁的转码任务获取的方法和***
CN107332679B (zh) 一种无中心信息同步方法及装置
CN111444062A (zh) 管理云数据库的主节点和从节点的方法及装置
CN104537081A (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