CN113312328B - 控制方法、数据处理方法、数据访问方法及计算设备 - Google Patents
控制方法、数据处理方法、数据访问方法及计算设备 Download PDFInfo
- Publication number
- CN113312328B CN113312328B CN202110858898.6A CN202110858898A CN113312328B CN 113312328 B CN113312328 B CN 113312328B CN 202110858898 A CN202110858898 A CN 202110858898A CN 113312328 B CN113312328 B CN 113312328B
- Authority
- CN
- China
- Prior art keywords
- access
- target
- data node
- target data
- node
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 238000004590 computer program Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- VQLYBLABXAHUDN-UHFFFAOYSA-N bis(4-fluorophenyl)-methyl-(1,2,4-triazol-1-ylmethyl)silane;methyl n-(1h-benzimidazol-2-yl)carbamate Chemical compound C1=CC=C2NC(NC(=O)OC)=NC2=C1.C=1C=C(F)C=CC=1[Si](C=1C=CC(F)=CC=1)(C)CN1C=NC=N1 VQLYBLABXAHUDN-UHFFFAOYSA-N 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/176—Support for shared access to files; File sharing support
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种控制方法、数据处理方法、数据访问方法及计算设备。其中,确定支持访问外部存储系统的目标数据节点;根据所述外部存储系统的存储容量,确定每个目标数据节点的目标访问数量;通知每个目标数据节点各自对应的目标访问数量;其中,每个数据节点用于根据各自对应的目标访问数量控制对所述外部存储系统的访问;根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量,并根据确定结果,通知每个目标数据节点更新各自对应的目标访问数量。本申请实施例提供的技术方案,缓解了外部存储系统的访问压力。
Description
技术领域
本申请实施例涉及数据处理技术领域,尤其涉及一种控制方法、数据处理方法、数据访问方法及计算设备。
背景技术
分布式文件系统(Distributed File System,DFS)利用多台计算机协同解决单台计算机所不能解决的计算以及存储等问题。分布式文件系统主要是用于数据存储,数据资源以文件形式存放在物理机器的存储设备上。其中,分布式文件系统主要由中心节点及与中心节点连接的各个数据节点构成,一个文件通常被分割成一个或多个数据块,并按照一定策略分布在不同数据节点中,数据节点主要负责存储数据,中心节点负责对数据节点进行统筹管理,以及客户端对数据的访问。客户端请求访问数据时,以请求读取数据为例,客户端会向中心节点询问从哪个数据节点读取数据,中心节点向客户端反馈节点信息之后,客户端再向对应的数据节点发起数据访问请求,数据节点即可以响应该数据访问请求,查找相应数据返回给客户端。
数据通常存储在数据节点的本地存储系统中,而为了扩大存储容量等目的,目前的分布式文件系统通常可以接入外部存储系统,数据节点可以将数据存储在本地存储系统或者外部存储系统中。
由于引入了外部存储系统,若同时访问外部存储系统的数据节点较多,或者某个数据节点频繁访问外部存储系统,将造成外部存储系统的访问压力较大。
发明内容
本申请实施例提供一种控制方法、数据处理方法、数据访问方法及计算设备,用以解决外部存储系统的访问压力大的技术问题。
第一方面,本申请实施例中提供了一种控制的方法,应用于中心节点,所述方法包括:
确定支持访问外部存储系统的目标数据节点;
根据所述外部存储系统的存储容量,确定每个目标数据节点的目标访问数量;
通知每个目标数据节点各自对应的目标访问数量;其中,每个数据节点用于根据各自对应的目标访问数量控制对所述外部存储系统的访问;
根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量,并根据确定结果,通知每个目标数据节点更新各自对应的目标访问数量。
可选地,所述根据所述外部存储系统的存储容量,确定每个目标数据节点的目标访问数量包括:
根据所述外部存储系统的存储容量,计算所述外部存储系统对应的总访问数量;
确定当前支持访问所述外部存储系统的目标数据节点的节点总数量;
根据所述总访问数量以及所述节点总数量,计算每个目标数据节点对应的目标访问数量。
可选地,所述根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量包括:
确定距离上一次目标访问数量确定时刻的目标时间间隔;
确定在所述目标时间间隔内生成的新增访问数量;
根据每个目标数据节点的访问数量消耗情况、所述节点总数量、所述总访问数量以及所述新增访问数量,重新计算每个目标数据节点的目标访问数量。
可选地,还包括:
接收到任意目标数据节点按照预定时间间隔发送的请求消息,生成重计算指令;
确定所述请求消息中携带的所述目标数据节点的访问消耗数量,所述访问消耗数量为两次所述请求消息之间的消耗数量;
所述根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量包括:
响应于所述重计算指令,根据每个目标数据节点的访问消耗数量,重新确定每个目标数据节点的目标访问数量。
可选地,还包括:
根据不同数据节点的节点状态,重新确定支持访问外部存储系统的目标数据节点。
第二方面,本申请实施例提供了一种数据处理方法,应用于数据节点,所述方法包括:
接收中心节点分配的目标访问数量,所述目标访问数量为所述中心节点根据外部存储系统的存储容量所确定;
若响应针对外部存储系统的数据访问请求的情况下,更新所述目标访问数量;
按照所述中心节点通知的确定结果,更新所述目标访问数量,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新确定的目标访问数量。
第三方面,本申请实施例提供了一种数据访问方法,包括:
接收数据访问请求;
若所述数据访问请求针对外部存储系统,按照目标访问数量,确定是否响应所述数据访问请求,所述目标访问数量为中心节点根据所述外部存储系统的存储容量所确定,并根据所述中心节点通知的确定结果进行更新,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新计算的目标访问数量。
可选地,所述按照目标访问数量,确定是否响应所述数据访问请求包括:
检查目标访问数量是否为零;
若否,响应所述数据访问请求,并更新所述目标访问数量;
若是,继续执行检查所述目标访问数量是否为零的操作。
可选地,响应所述数据访问请求之后,所述方法还包括:
统计访问消耗数量;
若所述目标访问数量不为零,所述方法还包括:
判断所述访问消耗数量是否小于最大访问数量;
若是,响应所述数据访问请求;
若否,继续执行检查是否存在目标访问数量的操作。
第四方面,本申请实施例提供了一种计算设备,包括处理组件以及存储组件;
所述存储组件存储一个或多个计算机指令;所述一个或多个计算机指令用以被所述处理组件调用执行,以实现第一方面所述的控制方法,或第二方面所述的数据处理方法,或第三方面所述的数据访问方法。
第五方面,本申请实施例提供了一种计算机存储介质,存储计算机程序,所述计算机程序被计算机执行时实现如第一方面所述的控制方法,或第二方面所述的数据处理方法,或第三方面所述的数据访问方法。
第六方面,本申请实施例提供了一种计算机程序产品,包括计算机程序,所述计算机程序被计算机执行时实现如第一方面所述的控制方法,或第二方面所述的数据处理方法,或第三方面所述的数据访问方法。
本申请实施例中,中心节点确定支持访问外部存储系统的目标数据节点;根据所述外部存储系统的存储容量,确定每个目标数据节点的目标访问数量;通知每个目标数据节点各自对应的目标访问数量;其中,每个数据节点用于根据各自对应的目标访问数量控制对所述外部存储系统的访问; 根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量,并根据确定结果,通知每个目标数据节点更新各自对应的剩余访问数量。本申请实施例提供的技术方案,通过结合外部存储系统的存储容量,约束每个目标数据节点对外部存储系统的访问数量,以控制对外部存储系统的访问总量,从而缓解了外部存储系统的访问压力。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请提供的一种控制系统一个实施例的架构示意图;
图2示出了本申请提供的一种控制方法一个实施例的流程图;
图3示出了本申请提供的一种数据处理方法一个实施例的流程图;
图4示出了本申请提供的一种数据访问方法一个实施例的流程图;
图5示出了本申请实施例在一个实际应用中的一种场景交互示意图;
图6示出了本申请提供的一种控制装置一个实施例的结构示意图;
图7示出了本申请提供的一种数据处理装置一个实施例的结构示意图;
图8示出了本申请提供的一种数据访问装置一个实施例的结构示意图;
图9示出了本申请提供的一种计算设备一个实施例的结构示意图;
图10示出了本申请提供的另一种计算设备一个实施例的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
为了便于理解本申请技术方案,下面对本申请实施例中可能出现的技术术语首先进行解释说明:
分布式文件系统(Distributed File System,简称DFS):是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点(可简单地理解为一台计算机)相连;或是若干不同的逻辑磁盘分区或卷标组合在一起而形成的完整的有层次的文件系统。
其中,适用本申请技术方案的分布式文件系统例如可以包括:Google 文件系统(简称GFS)、Hadoop分布式文件系统(简称HDFS)、Lustre文件系统(简称Lustre)、Ceph文件系统(简称Ceph)、Lindorm HDFS等。不同的分布式文件系统适用于不同的领域,它们都不是系统级的分布式文件系统,而是应用级的分布式文件存储服务。其中,HDFS是由Apache基金会管理的一个开源的分布式文件系统,是指被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。其中,HDFS集群有两类节点,并以管理者-工作者模式运行,即一个NameNode(管理者)和多个DataNode(工作者),在HDFS中,中文节点意即为Namenode,数据节点意即为DataNode。
而Lindorm HDFS是阿里云提供的一种云原生存储,面向公共云基础存储设施(如云盘、云盘、数据库文件存储(Database File Storage,简称DBFS)、对象存储服务(ObjectStorage Service,简称OSS))设计、兼容HDFS协议的分布式存储系统,并同时支持运行在本地盘环境,以满足部分专有云、专属大客户的需求,向Lindorm多模引擎和外部计算系统提供统一的、与环境无关的标准接口。
HDFS采用了基于Master/Slave(主/从)架构的分布式文件系统,一个HDFS集群包含一个单独的Master节点和多个Slave节点服务器,这里的一个单独的Master节点的含义是HDFS系统中只存在一个逻辑上的Master组件。一个逻辑的Master节点可以包括两台物理主机,即两台Master服务器、多台Slave服务器。一台Master服务器组成单NameNode集群,两台Master服务器组成双NameNode集群,并且同时被多个客户端访问,所有的这些机器通常都是普通的Linux机器,运行着用户级别(user-level)的服务进程。
存储引擎:如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。
中心节点:在HDFS中意即为Namenode,用于管理文件系统命名空间的主服务器和管理客户端对文件的访问,如打开,关闭和重命名文件和目录。主要负责管理文件目录、文件和数据块的对应关系以及数据块和DataNode的对应关系、维护目录树、接管用户的请求。例如,将文件的元数据保存在一个文件目录树中,或者在磁盘上保存为:镜像文件和编辑日志,或者保存DataNode的数据信息的文件,在系统启动的时候读入内存。
数据节点:在HDFS中意即为DataNode,用于管理连接到它们运行的节点的存储,主要负责处理来自文件系统客户端的读写请求。
客户端(Client):是指与服务器相对应,为客户提供本地服务的程序。在本申请中,用户通过客户端(Client)与HDFS进行通讯交互,即用户通过与NameNode和DataNode交互来访问整个文件系统,HDFS对外开放文件命名空间并允许用户数据以文件形式存储。
容量型存储:是指一种存储类型,相比其他存储类型例如高效型与性能型,容量型存储在存储成本上可以做到其他存储类型的30% 甚至更低, 更加适合海量数据且低频使用的场景,在分布式文件系统中引入外部存储系统,即构成了容量型存储。
外部存储系统:相对于数据节点的本地存储系统而言,本地存储系统可以是指本地物理机器中的内存以及中央处理器(central processing unit,简称CPU)缓存等,外部存储系统是指除内存及CPU缓存以外的储存系统,此类储存系统一般断电后仍然能保存数据。常见的外部存储系统例如可以包括硬盘、软盘、光盘、U盘等,此外还可以采用云存储方式实现,例如外部存储系统可以为云盘、DBFS、OSS等。
外部存储系统为云存储系统时,云存储系统通常通过租用方式使用,一旦访问压力较大,也会导致租用费用过高。
为了缓解外部存储系统的访问压力以及费用压力等,发明人经过一系列研究提出了本申请的技术方案,在本申请实施例中,中心节点确定支持访问外部存储系统的目标数据节点;根据所述外部存储系统的存储容量,确定每个目标数据节点的目标访问数量;通知每个目标数据节点各自对应的目标访问数量;其中,每个数据节点用于根据各自对应的目标访问数量控制对所述外部存储系统的访问;根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量,并根据确定结果,通知每个目标数据节点更新各自对应的剩余访问数量。本申请实施例提供的技术方案,通过有效控制目标数据节点的访问数量从而缓解了外部存储系统的访问压力以及收费压力。
本申请实施例可以适用于如图1所示的控制系统中,如图1所示,作为一种示例,该控制系统可以包括客户端1、多个数据节点2、中心节点3以及外部存储系统4,中心节点3以及该多个数据节点2即构成了分布式文件系统。其中,多个数据节点2可包括目标数据节点A、目标数据节点B等等。
其中,用户5可以通过客户端1向分布式文件系统请求获取目标数据,经由中心节点3的相应处理,假设确定目标数据位于图1中数据节点A中,即通知客户端1数据向数据节点A发起数据访问请求。
数据节点A接收到数据访问请求之后,会判定请求获取的目标数据位于本地存储系统(图中未示出)或者外部存储系统4,进而再从相应存储系统中读取目标数据,并返回给客户端1。
为了降低对外部存储系统的访问压力,本申请实施例中,中心节点3可以首先确定支持访问外部存储系统4的目标数据节点(例如图1中目标数据节点A和目标数据节点B),根据所述外部存储系统4的存储容量,确定每个目标数据节点的目标访问数量;通知每个目标数据节点各自对应的目标访问数量;其中,每个目标数据节点可以根据各自对应的目标访问数量控制对所述外部存储系统的访问;中心节点3还会根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量,并根据确定结果,通知每个目标数据节点更新各自对应的目标访问数量,使得数据节点A能够基于自身节点的目标访问数量确定是否响应该数据访问请求。
通过基于上述控制系统,本申请实施例中,通过结合外部存储系统的访问容量,约束每个目标数据节点的目标访问数量,并根据目标数据节点的访问数量消耗情况,对目标数据节点的目标访问数量进行更新,保证对外部存储系统的访问在可控范围内,从而可以有效缓解外部存储系统的访问压力,保证外部存储系统的访问稳定性,在外部存储系统为云存储系统时,也可以降低费用压力。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图2为本申请提供的一种控制方法一个实施例的流程图,该方法应用于中心节点,该方法可以包括以下几个步骤:
101:确定支持访问外部存储系统的目标数据节点。
中心节点启动之后,即可以执行本实施例的技术方案。
而数据节点启动之后,可以向中心节点发送注册请求,注册请求中可以携带访问标识,该访问标识可以指示是否支持访问外部存储系统,使得中心节点接收到任意数据节点的注册请求,根据请求中的访问标识,确定是否为目标数据节点。
在该步骤中,中心节点能够控制哪些数据节点支持访问外部存储系统,以及哪些数据节点支持访问本地存储系统,在本申请中,将支持访问外部存储系统的数据节点确定为目标数据节点。
本申请实施例中,确定支持访问外部存储系统的目标数据节点的方式可包括设置权限、赋予标识等多种方式。例如,作为一种可选的方案,中心节点通过对数据节点设置标识的方式,使得具有该标识的数据节点能够支持访问外部存储系统,因此将被赋予标识的数据节点确定为目标数据节点。作为另一种可选的方案,中心节点可通过设置权限的方式,对部分数据节点设置可访问外部存储系统的权限,并将被赋予权限的部分数据节点确定为目标数据节点。此外还可以通过其他方式确定支持访问外部存储系统的目标数据节点,本申请实施例对此不做限定。
102:根据所述外部存储系统的存储容量,确定每个目标数据节点的目标访问数量。
在该步骤中,目标访问数量可以采用Token(令牌)数量表示,可理解为目标数据节点可访问外部存储系统的次数,为了方便描述,下述一个或多个实施例在多以Token数量代表目标访问数量进行描述。
本申请实施例中,作为一种可能实现的方案,步骤102可具体包括:根据所述外部存储系统的存储容量,计算所述外部存储系统对应的总访问数量;确定当前支持访问所述外部存储系统的目标数据节点的节点总数量;根据所述总访问数量以及所述节点总数量,计算每个目标数据节点对应的目标访问数量。
在实际应用中,例如,中心节点在启动时,会根据外部存储系统的存储容量计算出一共可以使用的访问外部存储系统的次数。例如,中心节点预先配置参数为:每1GB的存储容量产生的Token数量为30次,其中,30次即为目标数据节点可以使用的访问外部存储系统的总次数,再基于目标数据节点的数量动态分配每个目标数据节点的目标访问数量。
作为一种可选方案,动态分配可包括平均分配,例如目标数据节点数量为6个时,则平均每个目标数据节点所分配到的Token数量(目标访问数量)为5次。
作为另一种可选方案,动态分配可包括基于每个目标数据节点的历史访问次数消耗情况,动态调整每个目标数据节点的目标访问数量。例如在上一次分配Token数量时,每个目标数据节点所分配到的Token数量(目标访问数量)为5次,其中,某一目标数据节点A全部使用了所分配的目标访问数量,而其他的目标数据节点并未使用或者仅使用部分所分配的目标访问数量,因此中心节点动态调整目标数据节点A的目标访问数量为7次,而对于其他的目标数据节点相应减少目标访问数量,使得使用的访问外部存储系统的总次数不变即可。
需要说明的是,除了上述可能实现的方案之外,还可以通过其他方案确定每个目标数据节点的目标访问数量,本申请对此不做限定。
本实施例中,中心节点通过结合外部存储系统的存储容量,约束每个目标数据节点对外部存储系统的访问数量,并基于后续目标数据节点的访问数量消耗情况,有效控制目标数据节点访问外部存储系统的访问数量,从而避免了客户端通过目标数据节点无限次访问外部存储系统,从而造成外部存储系统的访问压力大的问题。
进一步地,在步骤101之后还包括:根据不同数据节点的节点状态,重新确定支持访问外部存储系统的目标数据节点。
在该步骤中,节点状态可包括异常状态、退出状态、加入状态。其中,当中心节点获取不到数据节点反馈消息,则表明该数据节点处于异常状态。其中,数据节点产生异常的原因很多种,例如可以是数据节点进程异常。当中心节点删除某一数据节点时,则表明该数据节点处于退出状态。当中心节点接收到某一数据节点的注册请求时,则表明该数据节点处于加入状态。
可选地,当某一数据节点的节点状态包括加入状态时,“根据不同数据节点的节点状态,重新确定支持访问外部存储系统的目标数据节点”的过程可包括:接收到该数据节点的注册请求,根据请求中的标识,确定是否为目标数据节点。此外,还包括接收到任意数据节点的注册请求,生成重计算指令。
需要说明的是,当某一数据节点向中心节点发生注册请求之后,中心节点通过赋予标识等方式对该数据节点设置对应标识,从而使得该数据节点能够作为支持访问外部存储系统的目标数据节点。进一步地,在重新确定支持访问外部存储系统的目标数据节点时,可通过标识中表明该数据节点是否具有外部存储系统访问权限,因此在上述步骤可根据请求中的标识,确定是否为目标数据节点。
103:通知每个目标数据节点各自对应的目标访问数量;其中,每个数据节点用于根据各自对应的目标访问数量控制对所述外部存储系统的访问。
在该步骤中,中心节点可通过发送控制命令的方式,向每个目标数据节点发送各自对应的目标访问数量,以使得每个目标数据节点获取并存储自身节点的目标访问数量,并根据各自对应的目标访问数量控制对所述外部存储系统的访问。
本实施例中,作为一种可能的实现方式,步骤103可具体包括:向每个目标数据节点发送控制命令;所述控制命令包括每个目标数据节点对应的目标访问数量以及最大访问数量;所述最大访问数量用于在每个目标数据节点的目标访问数量全部消耗之后,按照所述最大访问数量控制对外部存储系统的访问。
需要说明的是,最大访问数量为目标数据节点所发送的两次请求消息之间的最大访问数量,通过设置最大访问数量来进一步保证降低访问压力。
在实际应用中,可根据所述外部存储系统的存储容量灵活设置最大访问数量。例如,通知某一目标数据节点A对应的目标访问数量为5次,当该目标数据节点接收到数据访问请求且确定出所述数据访问请求为针对外部存储系统的数据访问请求的情况下,目标数据节点A消耗自身节点的目标访问数量从外部存储系统中获取该数据访问请求对应的数据,同时目标访问数量相应减少。当目标数据节点A的目标访问数量为0、最大访问数量为1时,目标数据节点A仍可以消耗最大访问数量从外部存储系统中获取该数据访问请求对应的数据,同时最大访问数量相应减少。当目标数据节点A的目标访问数量为0且最大访问数量为0时,目标数据节点进入等待状态,即暂不对所述外部存储系统的访问,并等待中心节点重新给目标数量节点A分配目标访问数量,本实施例中,通过通知每个目标数据节点各自对应的目标访问数量,从而避免了客户端通过目标数据节点无限次访问外部存储系统,从而造成外部存储系统的访问压力大的问题。
104:根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量,并根据确定结果,通知每个目标数据节点更新各自对应的剩余访问数量。
本实施例中,作为一种可能的实现方案,确定每个目标数据节点的访问数量消耗情况的过程可包括:确定所述请求消息中携带的所述目标数据节点的访问消耗数量,所述访问消耗数量为所述目标数据节点在所述请求消息发送间隔期间所消耗的访问消耗数量。本实施例通过获取每个目标数据节点的请求消息中的访问消耗数量,从而确定出每个目标数据节点的访问数量消耗情况。
在实际应用中,例如,预设时间间隔可以为1分钟。每个目标数据节点均可以每间隔1分钟向中心节点发送一次心跳消息,其中,每次所发生的心跳消息中携带目标数据节点的当前的访问消耗总量,以使得中心节点在接收到该心跳消息后,生成重计算指令,并响应于重计算指令,根据每个目标数据节点的访问消耗数量,重新确定各个目标数据节点的目标访问数量。
需要说明的是,心跳消息中所携带的目标数据节点在心跳消息发送间隔期间所消耗Token的访问消耗数量。例如,目标数据节点在第二次向中心节点发生心跳消息时,该心跳消息携带目标数据节点的访问消耗数量为3次,而这3次并非是目标数据节点总共消耗的访问消耗数量,而是目标数据节点发送第一次心跳消息和第二次心跳消息间隔期间所消耗Token的访问消耗数量。
进一步地,在确定出每个目标数据节点的访问数量消耗情况之后,作为一种可选方案,本申请可通过响应于所述重计算指令,根据每个目标数据节点的访问消耗数量,重新确定每个目标数据节点的目标访问数量。
在该方案中,例如,目标数据节点A的访问消耗数量为4次,剩余的目标访问数量为1次,则根据外部存储系统的存储容量重新确定目标数据节点A的目标访问数量。
作为另一种可选方案,本申请还可以通过确定距离上一次目标访问数量确定时刻的目标时间间隔;确定在所述目标时间间隔内生成的新增访问数量;根据每个目标数据节点的访问数量消耗情况、所述节点总数量、所述总访问数量以及所述新增访问数量,重新计算每个目标数据节点的目标访问数量。
在该方案中,“确定在所述目标时间间隔内生成的新增访问数量”的过程可包括:按照所述目标时间间隔对应的预定比例系数,确定所述存储容量的可访问容量;基于所述可访问容量,生成对应的新增访问数量;或者,按照预定生成速率以及所述目标时间间隔,生成新增访问数量。
例如,确定距离上一次目标访问数量确定时刻为10s,即目标时间间隔为10s时,确定在10s内生成的新增访问数量。具体地,可通过10s对应的预设比例系统,确定所述存储容量的可访问容量,并基于所述可访问容量,生成对应的新增访问数量为10个。或者,预定生成速率为每1s产生1个新增访问数量,也就是说,每间隔1s,可新增1个Token,因此10s内所生成新增访问数量=10*1=10个,即10s内,可新增10个Token。
进一步地,在该方案中,在确定出新增访问数量之后,可根据每个目标数据节点的访问数量消耗情况、所述节点总数量、所述总访问数量以及当前新增访问数量,重新计算每个目标数据节点的目标访问数量。
例如,作为一种可能的实现方式,可将总访问数量与所述新增访问数量相加,获得当前访问总量;将当前访问总量减去各个目标数据节点的访问消耗数量,获得剩余访问数量;根据剩余访问数量以及所述节点总数量,重新计算每个目标数据节点目标访问数量。
在该实现方式中,例如,目标数据节点包括目标数据节点A和目标数据节点B,目标数据节点A的目标访问数量为5个,目标数据节点A的访问消耗数量5个,目标数据节点B的目标访问数量为6个,目标数据节点B的访问消耗数量为3个,节点总数量为2个,总访问数量为11次,新增访问数量为25个,基于上述这些参数可计算出,目标数据节点A和目标数据节点B的总访问数量消耗为8个,当前访问总量=11+25=36次,剩余访问数量=36-(5+3)=28次,按照平均分配原则,可重新计算出目标数据节点A的目标访问数量=14次,目标数据节点B的目标访问数量=14次。按照动态分配原则,由于目标数据节点A对于目标访问数量的需求量较大,可适当增加目标数据节点A的目标访问数量,例如可重新计算出目标数据节点A的目标访问数量=18次,目标数据节点B的目标访问数量=10次。
进一步地,本申请实施例还提供了一种数据处理方法一个实施例的流程图,如图3中所示,该方法应用于目标数据节点,该方法可以包括以下几个步骤:
201:接收中心节点分配的目标访问数量,所述目标访问数量为所述中心节点根据外部存储系统的存储容量所确定。
本实施例中,作为一种可能的实现方案,可通过接收中心节点发送的控制命令,确定所述控制命令中包括的目标访问数量以及最大访问数量;保存所述目标访问数量以及所述最大访问数量。可通过上述方式接收中心节点分配的目标访问数量,除此之外还可以通过其他方式获取中心节点分配的目标访问数量,本申请实施例对此不作限定。
目标访问数量的具体确定方式可以详见图1所示实施例中所述,此处不再赘述。
202:若响应针对外部存储系统的数据访问请求的情况下,更新所述目标访问数量。
本实施例中,目标数据节点确定所述数据访问请求是否为针对外部存储系统的数据访问请求的方式,可基于数据访问请求中所携带的请求数据的标识确定出数据存储在本地存储系统还是外部存储系统,从而确定出所述数据访问请求是否为针对外部存储系统的数据访问请求。当确定出所述数据访问请求为针对外部存储系统的数据访问请求之后,目标数据节点响应该数据访问请求,并减少自身节点的目标访问数量,例如,每响应一次数据访问请求则减少一次自身节点的目标访问数量。
需要说明的是,用户基于客户端向服务端发送数据访问请求,客户端并不晓得该数据访问请求对应的数据存储在本地存储系统还是外部存储系统,而目标数据节点在获取该数据访问请求中可基于所请求数据对应的标识确定出请求对应的数据存储在本地存储系统还是外部存储系统,再从对应的存储系统中获取请求对应的数据。
203:按照所述中心节点通知的确定结果,更新所述目标访问数量,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新确定的目标访问数量。
本实施例中,作为一种可能的实现方案,步骤203中“按照所述中心节点通知的确定结果,更新所述剩余访问数量”的过程可具体包括:接收中心节点发送的更新命令,所述更新命令中包括重新计算的目标访问数量及最大访问数量;按照重新计算的目标访问数量及最大访问数量,更新已保存的目标访问数量及最大访问数量。
在实际应用中,目标数据节点可将已保存的目标访问数量及最大访问数量更新为更新命令中的重新计算的目标访问数量及最大访问数量。目标数据节点可通过自身的存储器保存更新的目标访问数量及最大访问数量。除此之外目标数据节点还可以包括其他的存储方式,本申请对此不作限定。
此外,本申请实施例还提供了一种数据访问方法一个实施例的流程图,如图4中所示,该方法可以包括以下几个步骤:
301:接收数据访问请求。
302:若所述数据访问请求针对外部存储系统,按照目标访问数量,确定是否响应所述数据访问请求,所述目标访问数量为中心节点根据所述外部存储系统的存储容量所确定,并根据所述中心节点通知的确定结果进行更新,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新计算的目标访问数量。
本实施例中,作为一种可能的实现方案,步骤302中“按照目标访问数量,确定是否响应所述数据访问请求”的过程可包括:检查目标访问数量是否为零;若否,响应所述数据访问请求,并更新所述目标访问数量;若是,继续执行检查所述目标访问数量是否为零的操作。
在实际应用中,例如,当目标数据节点的目标访问数量大于1时,确定出目标数据节点能够响应所述数据访问请求,并在响应所述数据访问请求之后,更新所述目标访问数量,其中,更新目标访问数量的方式可以是每响应一次数据访问请求则减少一次自身节点的目标访问数量。当目标数据节点的目标访问数量等于0时,确定出目标数据节点不能够响应所述数据访问请求,则进入等待,继续执行检查所述目标访问数量是否为零,直至检测到目标访问数量不为零时,再次响应该数据访问请求。
进一步地,作为一种可选的方案,还可以设定若超出预定时间未响应所述数据访问请求,反馈请求失败消息。通过向客户端反馈请求失败消息,避免了客户端等待时间越长造成用户体验效率差的问题。
进一步地,作为一种可选的方案,在响应所述数据访问请求之后,还可以统计访问消耗数量;若所述目标访问数量不为零,判断所述访问消耗数量是否小于最大访问数量;若是,响应所述数据访问请求,并更新所述最大访问数量;若否,继续执行检查是否存在目标访问数量的操作。
在实际应用中,例如,以最大访问数量为2次,目标数据节点A在响应所述数据访问请求之后,统计目标数据节点A的访问消耗数量为1次,若此时目标数据节点A的目标访问数量为0,而此最大访问数量为2次,因此可以通过最大访问数量来响应所述数据访问请求,并更新所述最大访问数量。若目标数据节点的目标访问数量等于0且最大访问数量也等于0时,确定出目标数据节点不能够响应所述数据访问请求,则进入等待,继续执行检查所述目标访问数量是否为零,直至检测到目标访问数量不为零时,再次响应该数据访问请求。
为了便于理解本申请技术方案,下面以图5所示的场景交互示意图对本申请技术方案进行介绍,如图5中所示,该场景中可以包括用户51、客户端52、分布式文件系统53以及外部存储系统54,其中,分布式文件系统53中包含中心节点531和多个数据节点。
中心节点531启动之后,可以首先基于任意数据节点发送的注册请求,确定支持访问外部存储系统的目标数据节点532(图5中为了便于说明,仅示出了一个数据节点作为目标数据节点),该过程可以持续进行,并可以根据不同数据节点的节点状态,如退出、异常、加入等,重新确定支持访问外部存储系统的目标数据节点。
中心节点531根据外部存储系统54的存储容量,可以首先计算外部存储系统的总访问数量,并根据当前支持外部存储系统的目标数据节点的节点总数量,计算每个目标数据节点对应的Token数量(目标访问数量),可选地,Token数量可以采用总访问数量除以节点总数量得到的平均访问数量,每个目标数据节点的Token数量相同。
中心节点531可以向目标数据节点532发送控制命令,以通知目标数据节点532存储其对应的Token数量。
实际应用中,客户端52可以基于用户51的相应请求或者相应任务的计算需求等,从分布式文件系统中请求获取某个文件,客户端52可以首先询问中心节点531从哪个数据节点读取文件,中心节点531可以向客户端52反馈请求获取的文件所在的数据节点,以及在该数据节点中对应的数据块ID(标识);客户端52即可以基于该数据块ID,向对应的数据节点发送数据访问请求。
假设目标数据节点532接收到客户端52发送的数据访问请求,若请求访问的数据块位于本地存储系统,则可以直接从本地存储系统读取对应的数据块,若请求访问的数据块位于外部存储系统54,目标数据节点532即会根据该Token数量,控制对所述外部存储系统54的访问,每访问一次外部存储系统54,Token数量相应减1直至为0时,则暂停对外部存储系统54的访问。换句话说,当Token数量大于1时,目标数据节点532响应该数据访问请求,基于数据访问请求中携带的数据块ID从外部存储系统54中获取对应的数据块,并将数据块给客户端52,完成读操作,并更新自身节点的Token数量;当Token数量为0时,目标访问数量不能够响应该数据访问请求,则暂停处理该数据访问请求。
客户端52可以基于读取数据块生成用户51所需的文件,并将该文件反馈至用户51。
而为了保证访问持续有效进行,保证实际访问数量较多的数据节点能够正常运行等,中心节点531例如还可以按照预定产生速率,产生新增访问数量。
目标数据节点532可以定期向中心节点531发送请求消息,该请求消息例如可以为心跳消息,心跳消息中可以携带目标数据节点532在心跳消息发送间隔期间所消耗Token的访问消耗数量。
从而中心节点531每接收到一个心跳消息之后,即可以重新计算一次Token数量,可以具体根据每个目标数据节点的访问消耗数量、两次Token数量计算间隔之间产生的新增访问数量,以及总访问数量,重新计算每个目标数据节点的Token数量,具体计算方式可以详见前文所述,此处不再赘述。
中心节点531可以再次向目标数据节点发送控制命令,控制命令中携带重新计算获得的Token数量,目标数据节点即可以根据该重新计算获得的Token数量,更新其剩余的Token数量。
目标数据节点532中的Token数量非0之后,之前暂停处理的数据访问请求会继续处理。当然若该数据访问请求访问超时,则可以向客户端52反馈请求失败消息,以便于客户端52可以重新发送数据访问请求等。
在上述场景中,目标数据节点532仅为示例,在实际应用中,中心节点需要控制多个目标数据节点,因此中心节点531通过结合外部存储系统的存储容量,约束多个目标数据节点对外部存储系统的访问数量,以控制对外部存储系统的访问总量,从而缓解了外部存储系统的访问压力。
图6为本申请提供的一种控制装置一个实施例的结构示意图,可以包括:
第一确定模块601,用于确定支持访问外部存储系统的目标数据节点。
第二确定模块602,用于根据所述外部存储系统的存储容量,确定每个目标数据节点的目标访问数量。
通知模块603,用于通知每个目标数据节点各自对应的目标访问数量;其中,每个数据节点用于根据各自对应的目标访问数量控制对所述外部存储系统的访问。
第二确定模块602还用于根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量;
通知模块603还用于根据确定结果,通知每个目标数据节点更新各自对应的剩余访问数量。
在某些实施例中,第二确定模块602可以具体是根据所述外部存储系统的存储容量,计算所述外部存储系统对应的总访问数量;确定当前支持访问所述外部存储系统的目标数据节点的节点总数量;根据所述总访问数量以及所述节点总数量,计算每个目标数据节点对应的目标访问数量。
在某些实施例中,第二确定模块602可以具体是确定距离上一次目标访问数量确定时刻的目标时间间隔;确定在所述目标时间间隔内生成的新增访问数量;根据每个目标数据节点的访问数量消耗情况、所述节点总数量、所述总访问数量以及所述新增访问数量,重新计算每个目标数据节点的目标访问数量。
在某些实施例中,第二确定模块602可以具体是接收到任意目标数据节点按照预设时间间隔发送的请求消息,生成重计算指令;确定所述请求消息中携带的所述目标数据节点的访问消耗数量,所述访问消耗数量为所述目标数据节点在所述请求消息发送间隔期间所消耗的访问消耗数量;响应于所述重计算指令,根据每个目标数据节点的访问消耗数量,重新确定各个目标数据节点的目标访问数量。
在某些实施例中,第二确定模块602可以具体是根据不同数据节点的节点状态,重新确定支持访问外部存储系统的目标数据节点。
图6所述的控制装置可以执行图3所示实施例所述的控制方法,其实现原理和技术效果不再赘述。对于上述实施例中的控制装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图7为本申请提供的一种数据处理装置一个实施例的结构示意图,可以包括:
第一接收模块701,用于接收中心节点分配的目标访问数量,所述目标访问数量为所述中心节点根据外部存储系统的存储容量所确定;
第一更新模块702,用于若响应针对外部存储系统的数据访问请求的情况下,更新所述目标访问数量;
第一更新模块702还用于按照所述中心节点通知的确定结果,更新所述目标访问数量,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新确定的目标访问数量。
对于上述实施例中的数据处理装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8为本申请提供的一种数据访问装置一个实施例的结构示意图,可以包括:
第二接收模块801,用于接收数据访问请求;
第三确定模块802,用于若所述数据访问请求针对外部存储系统,按照目标访问数量,确定是否响应所述数据访问请求,所述目标访问数量为中心节点根据所述外部存储系统的存储容量所确定,并根据所述中心节点通知的确定结果进行更新,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新计算的目标访问数量。
在某些实施例中,该装置还包括第二更新模块803,第二更新模块803可以具体是检查目标访问数量是否为零;若否,响应所述数据访问请求,并更新所述目标访问数量;若是,继续执行检查所述目标访问数量是否为零的操作。
在某些实施例中,第二更新模块803可以具体是统计访问消耗数量;若所述目标访问数量不为零,判断所述访问消耗数量是否小于最大访问数量;若是,响应所述数据访问请求;若否,继续执行检查是否存在目标访问数量的操作。
对于上述实施例中的数据访问装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
在一个可能的设计中,图6所示实施例的控制装置可以实现为一计算设备,实际应用中,该计算设备可以实现为前文所述的中心节点,如图9中所示,该计算设备可以包括存储组件901以及处理组件902;
存储组件901中存储有一条或多条计算机指令,其中,一条或多条计算机指令供处理组件902调用执行,以实现图2所示的控制方法。
其中, 处理组件902可以包括一个或多个处理器来执行计算机指令,以完成上述的方法中的全部或部分步骤。当然处理组件也可以为一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。在本申请实施例中,处理组件902用于确定目标数据节点、每个目标数据节点的目标访问数量以及通知每个目标数据节点各自对应的目标访问数量。
存储组件901被配置为存储各种类型的数据以支持在终端的操作。存储组件可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘,在实际应用中,该存储组件901例如可以为图1中所示的外部存储系统。
此外,本申请实施例还提供了一种计算设备,实际应用中,该计算设备可以实现为前文所述的数据节点,如图10中所示,该计算设备可以包括存储组件1001以及处理组件1002;
存储组件1001中存储有一条或多条计算机指令,其中,一条或多条计算机指令供处理组件1002调用执行,以实现图3所示的数据处理方法或图4所示的数据访问方法。
当然,计算设备必然还可以包括其他部件,例如输入/输出接口、通信组件等。输入/输出接口为处理组件和外围接口模块之间提供接口,上述外围接口模块可以是输出设备、输入设备等。通信组件被配置为便于计算设备和其他设备之间有线或无线方式的通信等。
此外,本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被计算机执行时可以实现上述图2所示的控制方法;
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被计算机执行时实现上述图2所示的控制方法;
本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被计算机执行时可以实现上述图3所示的数据处理方法;
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被计算机执行时实现上述图3所示的数据处理方法;
本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被计算机执行时可以实现上述图4所示的数据访问方法;
本申请实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被计算机执行时实现上述图4所示的数据访问方法。
需要说明的是,上述计算设备可以是硬件,也可以是软件。当计算设备为硬件时,可以实现成多个服务器或终端设备组成的分布式集群,也可以实现成单个服务器或单个终端设备。当计算设备体现为软件时,可以安装在上述所列举的硬件设备中。其可以实现成例如用来提供分布式服务的多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (13)
1.一种控制方法,应用于中心节点,所述方法包括:
确定支持访问外部存储系统的目标数据节点;
根据所述外部存储系统的存储容量以及目标数据节点的节点总数量,确定每个目标数据节点的目标访问数量,所述目标访问数量为目标数据节点可访问外部存储系统的次数;
通知每个目标数据节点各自对应的目标访问数量;其中,每个数据节点用于根据各自对应的目标访问数量控制对所述外部存储系统的访问;
根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量,并根据确定结果,通知每个目标数据节点更新各自对应的目标访问数量,所述访问数量消耗情况携带在每个目标数据节点发送的请求消息中,为每个目标数据节点在请求消息发送间隔所消耗的访问消耗数量。
2.根据权利要求1所述的方法,所述根据所述外部存储系统的存储容量以及目标数据节点的节点总数量,确定每个目标数据节点的目标访问数量包括:
根据所述外部存储系统的存储容量,计算所述外部存储系统对应的总访问数量;
确定当前支持访问所述外部存储系统的目标数据节点的节点总数量;
根据所述总访问数量以及所述节点总数量,计算每个目标数据节点对应的目标访问数量。
3.根据权利要求2所述的方法,所述根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量包括:
确定距离上一次目标访问数量确定时刻的目标时间间隔;
确定在所述目标时间间隔内生成的新增访问数量;
根据每个目标数据节点的访问数量消耗情况、所述节点总数量、所述总访问数量以及所述新增访问数量,重新计算每个目标数据节点的目标访问数量。
4.根据权利要求3所述的方法,所述根据每个目标数据节点的访问数量消耗情况、所述节点总数量、所述总访问数量以及所述新增访问数量,重新计算每个目标数据节点的目标访问数量包括:
将总访问数量与所述新增访问数量相加,获得当前访问总量;
将当前访问总量减去各个目标数据节点的访问消耗数量,获得剩余访问数量;
根据剩余访问数量以及所述节点总数量,重新计算每个目标数据节点目标访问数量。
5.根据权利要求3所述的方法,所述确定在所述目标时间间隔内生成的新增访问数量包括:
按照所述目标时间间隔对应的预定比例系数,确定所述存储容量的可访问容量;基于所述可访问容量,生成对应的新增访问数量;
或者,
按照预定生成速率以及所述目标时间间隔,生成新增访问数量。
6.根据权利要求1所述的方法,还包括:
接收到任意目标数据节点按照预定时间间隔发送的请求消息,生成重计算指令;
确定所述请求消息中携带的所述目标数据节点的访问消耗数量,所述访问消耗数量为所述目标数据节点在所述请求消息发送间隔期间所消耗的访问消耗数量;
所述根据每个目标数据节点的访问数量消耗情况,重新确定每个目标数据节点的目标访问数量包括:
响应于所述重计算指令,根据每个目标数据节点的访问消耗数量,重新确定每个目标数据节点的目标访问数量。
7.根据权利要求2所述的方法,还包括:
根据不同数据节点的节点状态,重新确定支持访问外部存储系统的目标数据节点。
8.一种数据处理方法,应用于数据节点,所述方法包括:
接收中心节点分配的目标访问数量,所述目标访问数量为所述中心节点根据外部存储系统的存储容量以及目标数据节点的节点总数量所确定,所述目标访问数量为目标数据节点可访问外部存储系统的次数;
若响应针对外部存储系统的数据访问请求的情况下,更新所述目标访问数量;
按照所述中心节点通知的确定结果,更新所述目标访问数量,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新确定的目标访问数量,所述访问数量消耗情况携带在每个目标数据节点发送的请求消息中,为每个目标数据节点在请求消息发送间隔所消耗的访问消耗数量。
9.一种数据访问方法,包括:
接收数据访问请求;
若所述数据访问请求针对外部存储系统,按照目标访问数量,确定是否响应所述数据访问请求,所述目标访问数量为中心节点根据所述外部存储系统的存储容量以及目标数据节点的节点总数量所确定,并根据所述中心节点通知的确定结果进行更新,所述确定结果包括所述中心节点根据每个目标数据节点的访问数量消耗情况,重新计算的目标访问数量,所述目标访问数量为目标数据节点可访问外部存储系统的次数,所述访问数量消耗情况携带在每个目标数据节点发送的请求消息中,为每个目标数据节点在请求消息发送间隔所消耗的访问消耗数量。
10.根据权利要求9所述的方法,所述按照目标访问数量,确定是否响应所述数据访问请求包括:
检查目标访问数量是否为零;
若否,响应所述数据访问请求,并更新所述目标访问数量;
若是,继续执行检查所述目标访问数量是否为零的操作。
11.根据权利要求10所述的方法,响应所述数据访问请求之后,所述方法还包括:
统计访问消耗数量;
若所述目标访问数量不为零,所述方法还包括:
判断所述访问消耗数量是否小于最大访问数量;
若是,响应所述数据访问请求;
若否,继续执行检查是否存在目标访问数量的操作。
12.一种计算设备,包括处理组件以及存储组件;
所述存储组件存储一个或多个计算机指令;所述一个或多个计算机指令用以被所述处理组件调用执行,以实现如权利要求1~7任一项所述的控制方法,或如权利要求8所述的数据处理方法,或如权利要求9~11任一项所述的数据访问方法。
13.一种计算机存储介质,存储计算机程序,所述计算机程序被计算机执行时实现如权利要求 1~7任一项所述的控制方法,或如权利要求8所述的数据处理方法,或如权利要求9~11任一项所述的数据访问方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110858898.6A CN113312328B (zh) | 2021-07-28 | 2021-07-28 | 控制方法、数据处理方法、数据访问方法及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110858898.6A CN113312328B (zh) | 2021-07-28 | 2021-07-28 | 控制方法、数据处理方法、数据访问方法及计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113312328A CN113312328A (zh) | 2021-08-27 |
CN113312328B true CN113312328B (zh) | 2022-01-25 |
Family
ID=77381800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110858898.6A Active CN113312328B (zh) | 2021-07-28 | 2021-07-28 | 控制方法、数据处理方法、数据访问方法及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113312328B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115037954B (zh) * | 2022-05-18 | 2024-06-07 | 阿里云计算有限公司 | 访问直播的控制方法、装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106101212A (zh) * | 2016-06-08 | 2016-11-09 | 四川新环佳科技发展有限公司 | 云平台下的大数据访问方法 |
CN109361733A (zh) * | 2018-09-14 | 2019-02-19 | 新华三技术有限公司成都分公司 | 服务质量控制方法及装置 |
CN111562881A (zh) * | 2019-02-14 | 2020-08-21 | 株式会社日立制作所 | 多存储节点系统和多存储节点系统的容量管理方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913885B (zh) * | 2020-08-07 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 日志处理方法、装置、计算机可读存储介质及设备 |
CN112087401B (zh) * | 2020-09-10 | 2024-05-28 | 北京星辰天合科技股份有限公司 | 分布式存储中实现服务质量的方法和装置 |
-
2021
- 2021-07-28 CN CN202110858898.6A patent/CN113312328B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106101212A (zh) * | 2016-06-08 | 2016-11-09 | 四川新环佳科技发展有限公司 | 云平台下的大数据访问方法 |
CN109361733A (zh) * | 2018-09-14 | 2019-02-19 | 新华三技术有限公司成都分公司 | 服务质量控制方法及装置 |
CN111562881A (zh) * | 2019-02-14 | 2020-08-21 | 株式会社日立制作所 | 多存储节点系统和多存储节点系统的容量管理方法 |
Non-Patent Citations (1)
Title |
---|
基于RCFile的无线传感器网络数据存储与查询优化策略;樊卫北;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20150315;第25-37页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113312328A (zh) | 2021-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6033805B2 (ja) | 分散リソース管理のためのバランスしたコンシステント・ハッシュ | |
US10235047B2 (en) | Memory management method, apparatus, and system | |
CN109299190B (zh) | 分布式存储系统中处理对象的元数据的方法及装置 | |
CN113037794B (zh) | 计算资源配置调度方法、装置及系统 | |
EP3951607A1 (en) | Data reading method, data writing method, and server | |
CN105159775A (zh) | 基于负载均衡器的云计算数据中心的管理系统和管理方法 | |
EP3739440A1 (en) | Distributed storage system, data processing method and storage node | |
US20200042608A1 (en) | Distributed file system load balancing based on available node capacity | |
CN108900626B (zh) | 一种云环境下数据存储方法、装置及系统 | |
US10715472B2 (en) | System and method for unit-of-order routing | |
CN106302640A (zh) | 数据请求处理方法及装置 | |
CN112600761A (zh) | 一种资源分配的方法、装置及存储介质 | |
CN103561092B (zh) | 私有云环境下管理资源的方法及装置 | |
JP2017138895A (ja) | 仮想化環境管理システムおよび仮想化環境管理方法 | |
CN105760391B (zh) | 数据动态重分布的方法、数据节点、名字节点及系统 | |
CN113312328B (zh) | 控制方法、数据处理方法、数据访问方法及计算设备 | |
WO2023029610A1 (zh) | 数据访问方法、装置及存储介质 | |
CN113055448B (zh) | 一种元数据管理方法及装置 | |
CN111064643B (zh) | 一种节点服务器及其数据交互方法和相关装置 | |
CN114610740B (zh) | 医疗数据平台的数据版本管理方法及装置 | |
CN113687910A (zh) | 一种集群内usb设备管理方法、装置、设备及存储介质 | |
KR20160073904A (ko) | 클라우드 컴퓨팅 시스템의 자원 관리 방법 | |
CN111209118A (zh) | 确定资源余量的方法、装置、存储介质和电子设备 | |
US10887429B1 (en) | Processing multi-protocol redirection links | |
JP6568232B2 (ja) | 計算機システム、及び、装置の管理方法 |
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 |