CN110231915A - 数据管理方法、系统、装置、计算机设备及存储介质 - Google Patents

数据管理方法、系统、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN110231915A
CN110231915A CN201910455447.0A CN201910455447A CN110231915A CN 110231915 A CN110231915 A CN 110231915A CN 201910455447 A CN201910455447 A CN 201910455447A CN 110231915 A CN110231915 A CN 110231915A
Authority
CN
China
Prior art keywords
node
auxiliary
data
candidate
numerical value
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
CN201910455447.0A
Other languages
English (en)
Other versions
CN110231915B (zh
Inventor
徐子晨
黄嘉诚
高剑林
陈伟
邸欣晨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Nanchang University
Original Assignee
Tencent Technology Shenzhen Co Ltd
Nanchang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd, Nanchang University filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910455447.0A priority Critical patent/CN110231915B/zh
Publication of CN110231915A publication Critical patent/CN110231915A/zh
Application granted granted Critical
Publication of CN110231915B publication Critical patent/CN110231915B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请涉及一种数据管理方法、系统、装置、计算机设备及存储介质,该方法包括:通过集群中的主节点接收当前的数据处理请求;当数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。本申请的方案,能够提高数据管理效率。

Description

数据管理方法、系统、装置、计算机设备及存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种数据管理方法、系统、装置、计算机设备及存储介质。
背景技术
随着科学技术的飞速发展,大量先进技术不断涌现。分布式存储技术凭借其良好的稳定性,受到越来越广泛的应用。对于分布式存储技术而言,数据存储一致性至关重要。
传统方法中,由分布式存储的集群中的主节点,统一向各个从节点分别分发数据,并需要在等到所有从节点的应答之后,才能完成数据的一致性存储。这样一来,由一个主节点进行数据的分发以及应答等待,造成数据管理的效率比较低。
发明内容
基于此,有必要针对传统方法存在的成本比较高的问题,提供一种数据管理方法、系统、装置、计算机设备及存储介质。
一种数据管理方法,所述方法包括:
通过集群中的主节点接收当前的数据处理请求;
当数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;
向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
在其中一个实施例中,所述辅助节点包括第一节点;第一节点用于转发数据记录块至对应的从节点;所述数据记录块被分发至所述第一节点。
在其中一个实施例中,所述辅助节点还包括第二节点;所述方法还包括:
当数据处理请求中包括读请求时,则从所述集群的从节点中为所述读请求分配相应的目标从节点;
其中,所述读请求,用于被所述目标从节点转发至与所述目标从节点对应的第二节点,以指示所述第二节点处理所述读请求;被转发至的第二节点存储有所述目标从节点中的最新版本的数据。
在其中一个实施例中,所述数据记录块,还用于指示各辅助节点之间对接收到的所述数据记录块进行一致性校验,并在一致性校验通过后,将所述数据记录块转发至与各辅助节点对应的从节点。
在其中一个实施例中,所述方法还包括:
获取辅助节点的创建数量;
确定节点位置组合;所述节点位置组合中包括符合所述创建数量的辅助节点的位置;
在所述节点位置组合中包括的辅助节点的各位置处,创建所述主节点的辅助节点。
在其中一个实施例中,所述确定节点位置组合包括:
获取候选的节点位置组合;各候选的节点位置组合中包括符合所述创建数量的辅助节点的位置;
预测各节点位置组合对应的集群的性能值;各集群的性能值,为当辅助节点建立于各候选的节点位置组合中的相应位置处时所述集群的性能指标数值;
从各所述候选的节点位置组合中,选取对应于最大性能值的节点位置组合。
在其中一个实施例中,所述预测各节点位置组合对应的集群的性能值包括:
针对每个候选的节点位置组合,预测各辅助节点建立于所述候选的节点位置组合中相应位置处时的性能值;
根据预测的同一候选的节点位置组合中各辅助节点的性能值,确定各候选的节点位置组合所对应的集群的性能值。
在其中一个实施例中,所述获取辅助节点的创建数量包括:
根据所述当前的数据处理请求,确定所述集群中的当前负载信息;
获取主节点当前对应的第一资源交换数值、从节点对应的第二资源交换数值和辅助节点对应的第三资源交换数值;
根据所述当前负载信息、所述第一资源交换数值、所述第二资源交换数值和所述第三资源交换数值,确定辅助节点的创建数量。
在其中一个实施例中,所述根据所述当前负载信息、所述第一资源交换数值、所述第二资源交换数值和所述第三资源交换数值,确定辅助节点的创建数量包括:
获取辅助节点的多个候选的节点分配策略;
预测在各候选的节点分配策略下针对所述当前的数据处理请求的平均响应时间;
基于各候选的节点分配策略中的从节点和辅助节点的分配数量、所述第一资源交换数值、第二资源交换数值和第三资源交换数值,确定各候选的节点分配策略所对应的资源交换总值;
根据所述当前负载信息、以及对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,分别确定在各所述候选的节点分配策略下产生的资源增长数值;
从最大资源增长数值所对应的候选的节点分配策略中,获取辅助节点的分配数量,得到辅助节点的创建数量。
在其中一个实施例中,所述辅助节点包括第一节点和第二节点;所述第一节点用于分流所述数据处理请求中的写请求;所述第二节点用于分流所述数据处理请求中的读请求;所述当前负载信息包括所述数据处理请求中写请求和读请求的第一比例;其中,所述辅助节点的创建数量包括第一节点的第一创建数量和第二节点的第二创建数量;所述第一创建数量和第二创建数量之间的第二比例,与所述第一比例正相关。
在其中一个实施例中,所述当前负载信息包括所述数据处理请求中写请求和读请求的第一比例;
所述根据所述当前负载信息、以及对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,分别确定在各所述候选的节点分配策略下产生的资源增长数值包括:
根据对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,确定各候选的节点分配策略下产生的资源获取数值;
获取各候选的节点分配策略下产生的风险系数;
根据同一候选的节点分配策略的资源获取数值和风险系数,确定在各所述候选的节点分配策略下产生的资源增长数值。
一种数据管理系统,所述系统包括:主节点、从节点和不参与投票和竞选的辅助节点;
所述主节点,用于接收当前的数据处理请求;当数据处理请求中包括写请求时,在主节点中响应于所述写请求写入数据,并向所述主节点的辅助节点分配包括已写入的所述数据的数据记录块;
所述辅助节点,用于将分配的所述数据记录块,分发至与所述辅助节点对应的从节点;
所述从节点,用于在所述从节点中写入由所述辅助节点分发至的所述数据记录块中包括的所述数据。
在其中一个实施例中,所述辅助节点包括第一节点和第二节点;所述数据记录块被分配至所述第一节点;所述第二节点与集群中的各从节点对应设置;所述第一节点和第二节点属于不同类型的节点;
所述主节点还用于当数据处理请求中包括读请求时,则从所述集群的从节点中为所述读请求分配相应的目标从节点;
所述目标从节点,用于将所述主节点所分配至的所述读请求,转发至与所述目标从节点对应的第二节点;被转发至的第二节点存储有所述目标从节点中的最新版本的数据;
所述第二节点,用于处理所述读请求。
一种数据管理装置,其特征在于,所述装置包括:
请求获取模块,用于通过集群中的主节点接收当前的数据处理请求;
响应模块,用于当所述请求获取模块所接收的数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;
分发模块,用于向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
通过集群中的主节点接收当前的数据处理请求;
当数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;
向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
通过集群中的主节点接收当前的数据处理请求;
当数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;
向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
上述数据管理方法、系统、装置、计算机设备及存储介质,通过集群中的主节点接收当前的数据处理请求;当数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;向所述主节点的辅助节点分发所述数据记录块。由于辅助节点不参与选举和竞选,所以,辅助节点仅充当分流的角色,而不影响原有的由主节点分发数据所实现的数据一致性处理,那么,由辅助节点将数据记录块转发至相对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储,不需要主节点自身向每个从节点发送数据记录块,即可实现在集群中的主节点和所有从节点中进行数据的一致性存储,提高了集群中数据一致性管理的效率。
附图说明
图1为一个实施例中数据管理方法的应用场景图;
图2为另一个实施例中数据管理方法的应用场景图;
图3为一个实施例中数据管理方法的流程示意图;
图4为一个实施例中实现数据管理方法的结构示意图;
图5为一个实施例中数据管理方法的原理示意图;
图6为一个实施例中数据管理方法的时序管理流程示意图;
图7为另一个实施例中数据管理方法的流程示意图;
图8为另一个实施例中数据管理装置的框图;
图9为另一个实施例中数据管理装置的框图;
图10为一个实施例中计算机设备的框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中数据管理方法的应用场景图。参照图1,该应用场景中包括通过网络连接的终端110和分布式存储的集群120。终端110可以是智能电视机、智能音箱、台式计算机或移动终端,移动终端可以包括手机、平板电脑、笔记本电脑、个人数字助理和穿戴式设备等中的至少一种。分布式的集群120包括多个物理服务器。
分布式存储的集群120中可以包括唯一的主节点120a、从节点120b以及主节点120a的辅助节点120c。从节点120b和辅助节点120c可以为至少一个。可以根据当前实际情况(比如,集群当前的负载情况),将从节点120b和辅助节点120c设置为多个。主节点120a和从节点120b,相当于云端中的云实例,即,主节点120a和从节点120b是集群120中的物理服务器。可以理解,为了保持集群中数据存储一致性,主节点120a和从节点120b都具备参与投票和竞选的能力。而,辅助节点120c不同于主节点和从节点,其不参与投票和竞选。即,辅助节点120c,是用于对主节点120a接收到的数据处理请求进行分流的、起辅助作用的非物理服务器。其中,主节点120a、从节点120b以及辅助节点120c之间可以两两进行网络通信。
其中,终端110向集群120中的主节点120a发送数据处理请求,主节点120a接收该数据处理请求。当数据处理请求中包括写请求时,主节点120a则响应于所述写请求在主节点120a中写入数据,并生成包括所述数据的数据记录块。接着,主节点120a向主节点120a的辅助节点120c分发该数据记录块。辅助节点120c可以将数据记录块转发至对应的从节点120b,从节点120b可以在从节点120b中复制所述数据记录块中记录的所述数据并存储。从而实现在集群中的主节点和所有从节点中进行数据的一致性存储。
需要说明的是,辅助节点120c可以是同一类型的节点,也可以包括不同类型的节点,用于分流数据处理请求中的不同类型的请求。图2即为另一个实施例中的数据管理方法的应用场景图。辅助节点120c包括第一节点120c1和第二节点120c2,其中,第一节点用于转发数据记录块至对应的从节点,以分流所述数据处理请求中的写请求;第二节点用于分流所述数据处理请求中的读请求。那么,数据记录块则被分配至第一节点120c1,读请求会被分发至第二节点120c2
图3为一个实施例中数据管理方法的流程示意图。本实施例主要以该数据管理方法应用于图1中的主节点120a。参照图3,该方法具体包括如下步骤:
S302,通过集群中的主节点接收当前的数据处理请求。
其中,集群,是包括多台物理服务器的群体。可以理解,本申请各实施例中的“集群”,是用于进行分布式存储的集群。分布式存储,是一种数据存储技术,通过网络将数据分散地存储在集群中的每台机器上。分布式存储的集群具有多个数据中心,每个数据中心中可以包括由多个物理服务器充当的节点。
主节点(Leader),用于唯一对接终端,以负责接收终端的请求,并将数据复制到从节点并告知从节点何时应用这些数据是安全的。即,一个集群中仅包括一个唯一的主节点。从节点(Follower),用于响应来自主节点的请求。
可以理解,主节点和从节点实质上皆为物理服务器。只是,主节点和从节点充当的是不同的角色。
数据处理请求,是对数据进行相关处理的请求。所接收的数据处理请求可以为一个或多个。可以理解,当访问量大时,主节点可以并发地接收多个数据处理请求。
在一个实施例中,数据处理请求可以包括数据的读请求和写请求中的至少一种类型。写请求,即为写入数据的请求。读请求,即为读取数据的请求。具体地,终端可以向集群中的主节点发送是数据处理请求,进而,主节点接收终端当前发送的数据处理请求。
S304,当数据处理请求中包括写请求时,响应于写请求在主节点中写入数据,并生成包括数据的数据记录块。
具体地,主节点可以解析所接收到数据处理请求的类型,当该数据处理请求中包括写请求时,主节点可以响应于该写请求,在主节点的本地中写入数据。主节点可以生成包括该写入的数据的数据记录块。即,主节点可以将写入的数据封装成数据记录块。
其中,数据记录块,是用于记录数据的块。在一个实施例中,数据记录块可以是日志记录。日志(Log),是指对已完成的处理的记录。即主节点可以将写入的数据封装成日志记录。
S306,向主节点的辅助节点分发数据记录块;数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制数据记录块中记录的数据并存储。
其中,辅助节点,是不参与投票和竞选的、用于对主节点接收到的数据处理请求进行辅助分流的轻量级节点。可以理解,辅助节点,不同于主节点和从节点,属于非物理服务器。
在一个实施例中,辅助节点可以是线程节点。即可以通过创建线程的方式,创建辅助节点。在其他实施例中,辅助节点还可以通过其他的方式创建,比如,通过创建进程的方式进行创建。
在一个实施例中,辅助节点可以是同一类型的节点。当辅助节点为同一类型的节点时,该辅助节点可以不限于用于处理单一类型的请求,比如,辅助节点既可以分流读请求又可以分流写请求。在另一个实施例中,辅助节点也可以包括不同类型的节点。当辅助节点为不同类型的节点时,不同类型的辅助节点,可以用于分流数据处理请求中的不同类型的请求。
在一个实施例中,主节点中预先记录了所创建的辅助节点,主节点可以直接向所记录的辅助节点分发数据记录块。在另一个实施例中,还可以在主节点接收到当前的数据处理请求之后,实时地弹性地创建辅助节点。对此不做限定。
具体地,主节点可以根据辅助节点的心跳时延及辅助节点的创建时间先后顺序,向与主节点通过心跳包保持连接的辅助节点分发数据记录块。各辅助节点与从节点之间具有对应关系,其中,一个辅助节点可以对应至少一个从节点。具有对应关系的辅助节点和从节点之间可以进行数据传输。那么,各个辅助节点可以确定相对应的从节点,并将数据记录块转发至该相对应的从节点。各个从节点在接收到转发的数据记录块之后,可以复制所述数据记录块中记录的所述数据并存储。从而实现在集群中的主节点和所有从节点中进行数据的一致性存储。
这样一来,相当于主节点不再需要直接对多个从节点进行日志的分发工作,只需要完成集群数据一致性的工作即可,大大降低了主节点的内存读写带宽,使得主节点能够向更多的从节点进行一致性处理工作,提高了可扩展性。可以理解,这样一来,主节点就可以管理更多的从节点,因此就可以在集群中扩展更多的从节点,实现了系统的高可扩展性。
在一个实施例中,辅助节点在将数据记录块转发至从节点后,可以等待从节点的应答,从节点在将数据记录块复制存储后,可以向辅助节点进行反馈。然后,辅助节点向主节点传达所有从节点皆成功复制数据的应答结果。可以理解,辅助节点可以在等到所有从节点发送的成功复制数据的一致性反馈信息后,再向主节点传达所有从节点皆成功复制数据的应答结果。
在一个实施例中,辅助节点在将数据记录块转发至从节点后,也可以不等待从节点的应答。那么,从节点在将数据记录块复制存储后,可以直接向主节点反馈成功复制数据的应答结果。
可以理解,主节点在接收到所有从节点皆成功复制数据的应答结果之后,确认最新版本的数据存储成功。
在一个实施例中,数据记录块,还用于指示各辅助节点之间对接收到的数据记录块进行一致性校验,并在一致性校验通过后,将数据记录块转发至与各辅助节点对应的从节点。
其中,一致性校验,用于校验各辅助节点所接收的数据记录块是否一致。
具体地,各辅助节点在接收到分发至的数据记录块之后,相互之间可以对所接收的数据记录块进行一致性校验,当各辅助节点所接收的数据记录块一致时,则说明一致性校验通过,各辅助节点则可以将该数据记录块转发至与各辅助节点对应的从节点。
在一个实施例中,各辅助节点之间可以通过checksum校验,来完成对数据块的一致性校验。其中,checksum校验,是一种验证算法,用于校验目的的一组数据项的和,以验证数据的完整性和准确性。
上述数据管理方法,通过集群中的主节点接收当前的数据处理请求;当数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;向所述主节点的辅助节点分发所述数据记录块。由于辅助节点不参与选举和竞选,所以,辅助节点仅充当分流的角色,而不影响原有的由主节点分发数据所实现的数据一致性处理,那么,由辅助节点将数据记录块转发至相对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储,不需要主节点自身向每个从节点发送数据记录块,即可实现在集群中的主节点和所有从节点中进行数据的一致性存储,提高了集群中数据一致性管理的效率。
此外,由于是由辅助节点分流转发数据记录块至从节点,所以,大大降低了主节点的内存读写带宽及CPU占用率,进而,针对主节点可以扩展更多的辅助节点,提高了整个系统的可扩展性。
然后,由于辅助节点是不参与投票和选举的轻量级的节点,所以,相较于传统方法扩展从节点而言,辅助节点的弹性扩展较便捷、容易,使得系统资源能够支持扩展任意数量的辅助节点,从而使得系统资源得到更加合理、有效的扩展利用,进一步地提高了整个系统的可扩展性。
在一个实施例中,辅助节点包括第一节点;其中,第一节点用于转发数据记录块至对应的从节点。步骤S306中的数据记录块被分发至第一节点。
可以理解,第一节点,用于转发数据记录块至与该第一节点对应的从节点。需要说明的是,第一节点转发数据记录块至对应的从节点,相当于为主节点分流了写请求,以避免主节点自身处理写请求。
在一个实施例中,第一节点为秘书节点,即为主节点分流写请求以分担日志分发工作的节点。
在一个实施例中,当数据处理请求中包括写请求时,主节点响应于所述写请求在主节点中写入数据,并生成包括该数据的数据记录块;主节点向各个秘书节点分发所述数据记录块;所述数据记录块,用于被转发至与各秘书节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储。
在一个实施例中,辅助节点还包括第二节点。第二节点用于处理读请求。本实施例中,该方法还包括:当数据处理请求中包括读请求时,则从集群的从节点中为读请求分配相应的目标从节点;其中,读请求,用于被目标从节点转发至与目标从节点对应的第二节点,以指示第二节点处理读请求;被转发至的第二节点存储有目标从节点中的最新版本的数据。
可以理解,由于第二节点用于处理读请求,所以,第二节点用于为主节点分流数据处理请求中的读请求。
在一个实施例中,第二节点为观察员节点。观察员节点,用于分流主节点所接收到的读请求,以减轻主节点的读取工作。
当数据处理请求中包括读请求时,主节点则从所述集群的从节点中为所述读请求分配相应的目标从节点。其中,目标从节点,是能够处理该读请求的从节点。主节点可以将读请求发送至所分配的目标从节点,目标从节点可以将该读请求转发至与该目标从节点对应的观察员节点。观察员节点则可以处理该读请求。可以理解,被转发至的观察员节点存储有所述目标从节点中的最新版本的数据,从而保证观察员节点在处理读请求时,能够准确地从观察员节点自身存储的数据中读取与读请求相对应的数据。
可以理解,观察员节点中可以采用内存键值对方式存储数据,这种内存的键值数据存储,对计算密集型和I/O密集型任务,能够提供快速的数据性能、高可用性和高拓展性。
图4为一个实施例中实现数据管理方法的结构示意图。参照图3,一个分布式集群,可以包括多个位置的数据中心,处于每个位置的数据中心可以包括多个节点,整个分布式集群中仅具有唯一的主节点,各秘书节点和观察员节点可以位于不同的位置。客户端向集群发出读请求和写请求,进入主节点,由主节点接收客户端发送的读请求和写请求。针对写请求,主节点除了自身响应写请求写日志以外,还将对应于写请求所写入的日志的匹配和分发的任务发布给秘书节点,由秘书节点转发至相应的从节点,由从节点(图中仅以一个秘书节点和从节点进行举例示意,并未标识出全部)。针对读请求,主节点将读请求发送至集群中能够处理该读请求的目标从节点,由目标从节点转发至相应的观察员节点,观察员节点处理读请求。
在一个实施例中,当向弹性扩展的第一节点和第二节点的分发处理皆失败时,则可以通过主节点直接向从节点分发数据记录块或者直接由从节点处理读请求并返回读取的数据至主节点。即,即使出现100%弹性节点失败,仍能保证数据服务的一致性和基本数据服务性能。
上述实施例中,由第二节点分流主节点所接收到的读请求处理,从而减轻主节点的读取工作。这样一来,在大量查询任务的环境下,通过观察员节点的分流,能够提高整体的吞吐量,以处理更多的读操作请求。
需要说明的是,本申请各实施例中的数据管理方法,保持了唯一一个主节点的特征,并维持了节点竞选策略,秘书节点和观察员节点不参与投票和竞选,从而,使得所有的数据都由唯一的主节点统一分发,因此,能够保证数据间的线性化一致性。图5为一个实施例中数据管理方法的原理示意图。主节点通过发送心跳消息来告知其他节点自己的存在。收到心跳信息后,所有的从节点设置一个随机计时器。如果在计时器触发之前,它们没有收到下一次心跳消息,该从节点会开始呼吁选举并停止所有目前的秘书节点(即,图4中的步骤(1))。从节点在其日志中记录递增的数据信息并与其他从节点通讯,告知其为是“候选人”的信息,所有从节点追随者投票给数据比自己大的候选人节点。如果投票超时,选举将重新开始。如果候选人/从节点得到了来自其他大多数从节点的投票,该节点将成为新的主节点。同时,为新主节点配备秘书节点(即图3中的步骤(2))。
接着,在选举结束后,以周期(T)来管理秘书节点及观察员节点。在每个周期中,主节点负责日志管理,通知数据更新及版本信息。主节点可以向从节点通知对应哪些秘书节点和进入了新的周期,如即图3中的步骤(3)所示。同时,主节点可以管理秘书节点,复制日志,以将不同的从节点分配给不同的秘书节点负责日志的校验与分发过程,秘书节点向所对应的从节点转发更新的数据(即,图3中的步骤(4)和(5))。从节点接收转发的数据在从节点的本地将其写入日志,并以K-V(Key-Value)键值对的方式将该最新版本的数据写入对应的观察员节点。当主节点接收到读请求时,可以转发至能够处理该读请求的目标从节点,由目标从节点转发至存储有最新版本的数据的观察员节点,由观察员节点通过读请求中的K(key)查找读取对应的value值(即,图4中的步骤(6))。
为了便于理解,现结合图6对不同节点面向读写及更新操作的时序管理流程进行说明。图6描述了两个时序管理的例子。这里面包含三个普通节点和一个秘书节点,一个观察节点。首先,三个普通节点(节点1、节点2和节点3)要确认谁是选举谁是主节点,由节点1发起投票,通过三个节点之间的交互确认节点1为主节点(标识为L,leader)。主节点与秘书节点进行确认,完成选举过程。第二个时间段开始数据复制的过程。主节点(节点1)收到新数据,将数据副本交给秘书,秘书节点将新数据版本转发给节点2及节点3。并如此反复两次。之后节点2尝试与主节点(节点1)连接,确认数据版本。但是无法得到主节点(节点1)的应答。等待一段时间以后确认主节点(节点1)已丢失,无法连接,至此,完成第一个周期1。第一个周期2开始,由节点3发起投票重新选主节点并成功当选主节点。完成与秘书节点的交互之后开始正常工作阶段,之后完成之后正常的处理所接收到的读写请求。,即针对写请求,新的主节点(节点3)可以向秘书节点分配日志校验和分发的任务,由秘书节点向从节点(节点1和2)转发该日志数据,节点1和2写入该日志数据。节点2可以指示观察员节点写入该最新版本的日志数据。在接收到读请求时,可以分由观察员节点或从节点(节点2)处理该读请求,并在处理完毕后,反馈至新的主节点(节点3),由新的主节点(节点3)对该反馈进行响应确认,以完成针对读请求的处理。
可以理解,通过图6可知,整个过程都是一个按照时序进行管理的线性化的处理流程,始终保持唯一一个主节点。因此,能够保证数据的线性化唯一性。
在一个实施例中,该方法还包括辅助节点的创建步骤,具体包括以下步骤:获取辅助节点的创建数量;确定节点位置组合;所述节点位置组合中包括符合所述创建数量的辅助节点的位置;在所述节点位置组合中包括的辅助节点的各位置处,创建所述主节点的辅助节点。
其中,辅助节点的创建数量,是待创建的辅助节点的数量,用于表示要创建多少数量的辅助节点。
节点位置组合中包括辅助节点的位置的集合。需要说明的是,节点位置组合中包括的辅助节点的位置的数量符合所获取的创建数量。那么,可以通过主节点可以在节点位置组合中包括的辅助节点的各位置处,创建该主节点的辅助节点。
比如,辅助节点的创建数量为100,节点位置组合中就包括100个辅助节点的位置。那么,就可以在这100个位置处,创建主节点的辅助节点。
在一个实施例中,当辅助节点包括第一节点和第二节点时,辅助节点的创建数量则包括第一节点的第一创建数量和第二节点的第二创建数量。节点位置组合中包括符合第一创建数量的第一节点的位置和符合第二创建数量的第二节点的位置,那么,可以通过主节点在节点位置组合中包括的各第一节点的位置处创建第一节点,在各第二节点的位置处创建第二节点。
比如,节点位置组合中就包括30个用于创建第一节点的位置和70个用于创建第二节点的位置,那么,就可以在这30个位置处创建第一节点,在这70个位置处创建第二节点。
在一个实施例中,所确定的节点位置组合可以是预先设定的,可以直接在预先设定的节点位置组合中包括的辅助节点的各位置处,创建所述主节点的辅助节点。
在另一个实施例中,可以获取多个候选的节点位置组合,每个候选的节点位置组合中包括的辅助节点的位置的数量满足所获取的创建数量。可以从多个候选的节点位置组合中选取最终的节点位置组合,然后在最终的节点位置组合中包括的辅助节点的各位置处,创建所述主节点的辅助节点。
比如,有20个候选的节点位置组合,从中选取第10个节点位置组合,作为最终的节点位置组合。然后,在该最终的节点位置组合中的包括的辅助节点的各位置处,创建该主节点的辅助节点。
需要说明的是,本申请各实施例中的辅助节点的相关创建步骤,除了可以在主节点中执行以外,也可以在集群中的其他节点中执行,比如,在集群中指定一个节点专门用于实现辅助节点的创建处理也是可行的,对此不作限定。
上述实施例中,通过考虑辅助节点的数量和地理位置这些因素,来创建辅助节点,能够提高辅助节点创建的准确性。从而,能够提高集群管理的准确性。
在一个实施例中,所述确定节点位置组合包括:获取候选的节点位置组合;各候选的节点位置组合中包括符合所述创建数量的辅助节点的位置;预测各候选的节点位置组合对应的集群的性能值;各集群的性能值,为当辅助节点建立于各候选的节点位置组合中的相应位置处时所述集群的性能指标数值;从各所述候选的节点位置组合中,选取对应于最大性能值的节点位置组合。
其中,候选的节点位置组合,是供选择的节点位置组合。可以理解,每个候选的节点位置组合中包括的辅助节点的位置的数量满足所获取的创建数量。
各集群的性能值,是指当辅助节点建立于各候选的节点位置组合中的相应位置处时集群的性能指标数值。集群的性能值,用于量化集群的性能指标,即,用于表征集群性能的好坏。可以理解,集群的性能值越大,说明集群的性能越好。
具体地,可以按照预设次数随机地选择主节点的位置,参照主节点的位置,选取符合创建数量的辅助节点的位置,从而得到多组候选的节点位置组合。
在一个实施例中,节点位置组合中除了包括辅助节点的位置以外,还可以包括从节点的位置和主节点的位置。
在一个实施例中,辅助节点的性能值服从距主节点的距离的二维正态分布。那么,可以按照预设次数随机地选择主节点,然后根据该二维正态分布,选择符合所获取的创建数量的辅助节点的位置,得到多组候选的节点位置组合。
在另一个实施例中,辅助节点和从节点的性能值皆服从距主节点的距离的二维正态分布。那么,可以按照预设次数随机地选择主节点,然后根据该二维正态分布,选择符合所获取的创建数量的辅助节点的位置以及选取从节点的位置,得到多组候选的节点位置组合。那么,各组候选的节点位置组合中除了包括辅助节点的位置以外,还包括从节点的位置和主节点的位置。
进一步地,可以预测各候选的节点位置组合对应的集群的性能值,将各候选的节点位置组合所对应的性能值进行比对,从各候选的节点位置组合中,选取对应于最大性能值的节点位置组合。进而,在该对应于最大性能值的节点位置组合中包括的辅助节点的各位置处,创建主节点的辅助节点。
上述实施例中,通过节点在不同地理位置时集群所处的性能指标,来确定节点的最优位置,使得所确定的节点位置更加地准确。从而,基于准确的地理位置,能够使得扩展创建的节点更加准确,提高数据管理的准确性,从而实现对集群资源的更加准确、有效的管理。
在一个实施例中,所述预测各节点位置组合对应的集群的性能值包括:针对每个候选的节点位置组合,预测各辅助节点建立于所述候选的节点位置组合中相应位置处时的性能值;根据预测的同一候选的节点位置组合中各辅助节点的性能值,确定各候选的节点位置组合所对应的集群的性能值。
具体地,可以针对每个候选的节点位置组合,预测各辅助节点在候选的节点位置组合中相应位置处建立时所具备的性能值。
在一个实施例中,当节点位置组合中仅包括辅助节点的位置时,则可以将同一候选的节点位置组合中,各辅助节点的性能值相加,得到各候选的节点位置组合所对应的集群的性能值。
在另一个实施例中,当节点位置组合中除了包括辅助节点的位置以外,还包括从节点的位置和主节点的位置时,则还可以预测从节点在该同一节点位置组合中相应位置时的性能值以及主节点在该同一节点位置组合中相应位置时的性能值。进一步地,可以将同一候选的节点位置组合中预测的辅助节点的性能值、从节点的性能值以及主节点的性能值相加,得到各候选的节点位置组合所对应的集群的性能值。
在一个实施例中,当辅助节点的性能值服从距主节点的距离的二维正态分布时,针对每个候选的节点位置组合,可以将该候选的节点位置组合中包括的辅助节点的位置代入该二维正态分布的公式中,预测出各辅助节点在相应选取的位置处的性能值。
在一个实施例中,可以通过以下公式预测各辅助节点建立于所述候选的节点位置组合中相应位置处时的性能值:
其中,p(x,y)即为每个节点建立于所述候选的节点位置组合中相应位置处时的性能值;(x,y)为每个节点在候选的节点位置组合中所处的位置;μ1、μ2、ρ、σ1和σ2皆为二维正态分布的公式中的常数,(x,y)服从参数为μ1、μ2、ρ、σ1和σ2的二维正态分布。
可以理解,可以将各辅助节点在候选的节点位置组合中相应位置代入公式1中,得到各辅助节点建立于所述候选的节点位置组合中相应位置处时的性能值。当辅助节点和从节点的性能值皆服从距主节点的距离的二维正态分布时,也可以将从节点在节点位置组合中所处的位置代入(公式1)中,预测从节点在该节点位置组合中所处位置的性能值。
可以理解,可以将候选的节点位置组合中各节点在相应位置处预测的性能值相加,得到候选的节点位置组合所对应的集群的性能值。其中,各节点,可以是候选的节点位置组合中辅助节点,也可以是候选的节点位置组合中辅助节点和从节点。
在一个实施例中,可以按照以下公式确定各候选的节点位置组合所对应的集群的性能值:
其中,perf为候选的节点位置组合所对应的集群的性能值;ptype(x,y)为候选的节点位置组合中单一节点在位置(x,y)处的性能值。
上述实施例中,根据预测的同一候选的节点位置组合中各辅助节点的性能值,确定各候选的节点位置组合所对应的集群的性能值,保证了预测的集群的性能值的准确性。
在一个实施例中,获取辅助节点的创建数量包括:根据当前的数据处理请求,确定集群中的当前负载信息;获取主节点当前对应的第一资源交换数值、从节点对应的第二资源交换数值和辅助节点对应的第三资源交换数值;根据当前负载信息、第一资源交换数值、第二资源交换数值和第三资源交换数值,确定辅助节点的创建数量。
其中,当前负载信息,用于体现集群当前的负载情况。可以理解,集群的当前负载情况,可以通过所接收到的数据处理请求来表现。
在一个实施例中,当前负载信息包括数据处理请求的数量、以及数据处理请求中写请求和读请求的第一比例等中的至少一种。可以理解,主节点可以统计当前的数据处理请求的数量,以及识别当前的数据处理请求的类型,从中识别出读请求和写请求,进而,根据确定识别出的写请求和读请求的数量之比,得到写请求和读请求的第一比例。
资源交换数值,是指在获取目标对象时需要交换转移的资源数值。可以理解,资源交换数值,通俗来讲,是指“价格”。那么,主节点当前对应的第一资源交换数值,是指当前创建主节点时所需要交换转移的资源数值,即为主节点的价格,这里,主节点即为目标对象。从节点对应的第二资源交换数值,是指当前创建从节点时所需要交换转移的资源数值,即为从节点的价格,这里,从节点即为目标对象。辅助节点对应的第三资源交换数值,是指当前创建辅助节点时所需要交换转移的资源数值,即为辅助节点的价格,这里,辅助节点即为目标对象。
需要说明的是,在某一具体的时间下,第一资源交换数值、第二资源交换数值以及第三资源交换数值是已知的。因为,对于每个时间点来说,各种类型的节点的价格是已知的。
主节点可以根据当前负载信息、当前的第一资源交换数值、第二资源交换数值和第三资源交换数值,确定辅助节点的创建数量。即,可以根据集群当前的负载情况,以及各节点的价格,确定需要创建多少辅助节点,从而,使得所确定的辅助节点的创建数量更加的准确。
上述实施例中,能够自动地根据当前负载信息(即当前请求的工作流的信息)和各节点当前在云市场中的价格,规划出最优的节点数量,从而提高了扩展创建的节点更加准确,使得系统资源得到更加合理、准确的利用。
在一个实施例中,根据当前负载信息、第一资源交换数值、第二资源交换数值和第三资源交换数值,确定辅助节点的创建数量包括:获取辅助节点的多个候选的节点分配策略;预测在各候选的节点分配策略下针对当前的数据处理请求的平均响应时间;基于各候选的节点分配策略中的从节点和辅助节点的分配数量、第一资源交换数值、第二资源交换数值和第三资源交换数值,确定在各候选的节点分配策略所对应的资源交换总值;根据当前负载信息以及对应于同一候选的节点分配策略的平均响应时间和资源交换总值,分别确定在各候选的节点分配策略下产生的资源增长数值;从最大资源增长数值所对应的候选的节点分配策略中,获取辅助节点的分配数量,得到辅助节点的创建数量。
其中,候选的节点分配策略,是供选择的节点分配策略。节点分配策略,是描述各种类型的节点的分配数量的分配策略。其中,各种类型的节点,包括主节点、从节点和辅助节点。因此,每个候选的节点分配策略中可以包括从节点的分配数量和辅助节点的分配数量。可以理解,主节点为集群中的唯一一个,所以,在任何候选的节点分配策略中,主节点的分配数量皆为1。
可以理解,不同的候选的节点分配策略中包括的各类型的节点的分配数量不一样,那么,对当前的数据处理请求的平均响应时间可能存在不同。因此,可以预测在各候选的节点分配策略下针对当前的数据处理请求的平均响应时间。
在一个实施例中,可以获取历史数据,预测在各候选的节点分配策略下针对当前的数据处理请求的平均响应时间。其中,历史数据,可以包括历史的数据处理请求的时间间隔、历史并发的数据处理请求的数量、数据处理请求的历史平均到达时间、单节点的历史平均利用率和节点的历史平均响应时间。
在一个实施例中,可以根据以下公式预测在各候选的节点分配策略下针对当前的数据处理请求的平均响应时间:
其中,针对当前的数据处理请求的平均响应时间,是节点的历史平均响应时间,ρ是单节点的历史平均利用率(其中,ρ=λ/μ),为历史的数据处理请求的时间间隔标准差的平方,为历史并发的数据处理请求的数量标准差的平方,E[I]是服务的初始化时间(即服务启动所耗费的时间),λ是数据处理请求的历史平均到达时间。
可以理解,由于上述参数的值都是通过历史数据获取的,所以在上述(公式3)的等号右边的参数的值都是已知的。由于正常情况下,针对数据处理请求的平均响应时间在一定范围内不会发生太大变动,所以可以根据历史的已知的参数的值,来预测针对当前的数据处理请求的平均响应时间。可以理解,可以获取在距当前时间预设时间范围内的历史数据,来预测针对当前的数据处理请求的平均响应时间,这样预测结果更加的准确。
进一步地,可以基于各候选的节点分配策略中的从节点和辅助节点的分配数量、第一资源交换数值、第二资源交换数值和第三资源交换数值,确定各候选的节点分配策略所对应的资源交换总值。其中,资源交换总值,是指使用该节点分配策略创建各节点所需要耗费总的资源数值。
在一个实施例中,针对每个候选的节点分配策略,可以将该节点分配策略中包括的各类型的节点的数量分别乘以相应的资源交换数值,得到相应的各乘积,根据各乘积之和,得到资源交换总值。在一个实施例中,可以用各乘积之和,再加上申请该节点分配策略中包括的各节点时前期需耗费的资源数值,得到各候选的节点分配策略所对应的资源交换总值。
在一个实施例中,辅助节点可以包括第一节点和第二节点两种类型的节点。第三资源交换数值可以包括第一节点对应的资源交换数值和第二节点对应的资源交换数值。在一个实施例中,第一节点为秘书节点,第二节点为观察员节点。那么,第三资源交换数值可以包括秘书节点对应的资源交换数值和观察员节点对应的资源交换数值。本实施例中,可以根据以下公式得到各候选的节点分配策略所对应的资源交换总值:
l=l1ml+l2mf+l3ms+l4mo+l0(m); (公式4)
其中,l为候选的节点分配策略所对应的资源交换总值;ml为候选的节点分配策略中的主节点的分配数量,l1为第一资源交换数值,lf为候选的节点分配策略中的从节点的分配数量,l2为第二资源交换数值,ms为候选的节点分配策略中的秘书节点的分配数量,l3为秘书节点对应的资源交换数值,m0为候选的节点分配策略中的观察员节点的分配数量,l4为观察员节点对应的资源交换数值,m为候选的节点分配策略中包括的节点的总数量;l0(m)为申请m个节点时在前期需耗费的资源数值。可以理解,l1~l4在当前是已知的,在确定候选的节点分配策略中包括的总数量为m后,l0(m)可以根据m确定出来。
进一步地,可以根据当前负载信息、以及对应于同一候选的节点分配策略的平均响应时间和资源交换总值,分别确定在各候选的节点分配策略下产生的资源增长数值。
其中,资源增长数值,是指增长的资源数值。通俗来讲,就是获取的“利润”。可以理解,集群向终端提供数据处理服务,除了需要耗费资源以外,还能够产生一定的收益,因此,能够获取一定的利润。需要说明的是,这里的资源增长数值,是纯增长的资源数值,即从获取到的资源数值中去除了消耗的资源数值后,剩余的纯增长的资源数值。
进一步地,可以将分别在各候选的节点分配策略下产生的各资源增长数值进行比对,从中选取最大资源增长数值所对应的候选的节点分配策略,然后从所选取的候选的节点分配策略中,获取辅助节点的分配数量,得到辅助节点的创建数量。
上述实施例中,通过多个候选的节点分配策略,计算各候选的节点分配策略所对应的资源交换总值,根据当前负载信息、以及对应于同一候选的节点分配策略的平均响应时间和资源交换总值,分别确定在各候选的节点分配策略下产生的资源增长数值。从资源数值增长的角度,来确定辅助节点的创建数量,能够使得所确定的创建数量更加的准确,避免了系统资源的浪费或者不足,实现了系统资源合理的利用。
在一个实施例中,辅助节点包括第一节点和第二节点;第一节点用于转发数据记录块至对应的从节点;第二节点用于处理数据处理请求中的读请求;当前负载信息包括数据处理请求中写请求和读请求的第一比例。
其中,辅助节点的创建数量包括第一节点的第一创建数量和第二节点的第二创建数量;第一创建数量和第二创建数量之间的第二比例,与第一比例正相关。
具体地,第一节点可以为秘书节点,第二节点可以为观察员节点。秘书节点的第一创建数量和观察员节点的第二创建数值之间的第二比例,与数据处理请求中写请求和读请求的第一比例正相关。这样一来,当写请求数量较多的情况下,则可以增加秘书节点的数量,当读请求较多的情况下,则可以增加观察员节点的数量。从而能够根据当前的负载情况,及时地调整秘书节点和观察员节点的数量,从而使得数量分配更加的准确,从而使得集群资源得到更加合理的配置、利用,提高系统资源利用率。
在一个实施例中,当前负载信息包括数据处理请求中写请求和读请求的第一比例。根据当前负载信息以及对应于同一候选的节点分配策略的平均响应时间和资源交换总值,分别确定在各候选的节点分配策略下产生的资源增长数值包括:根据对应于同一候选的节点分配策略的平均响应时间和资源交换总值,确定各候选的节点分配策略下产生的资源获取数值;获取各候选的节点分配策略下产生的风险系数;根据同一候选的节点分配策略的资源获取数值和风险系数,确定在各候选的节点分配策略下产生的资源增长数值。
其中,资源获取数值,是能够获取的资源数值。通俗来讲,资源获取数值即为收益。需要说明的是,资源获取数值是指在未除去消耗的资源的情况下获取的资源数值。需要与前文所提到的“资源增长数值”区分开来。风险系数,用于表示在各候选的节点分配策略下存在的服务失败的风险。
具体地,可以根据对应于同一候选的节点分配策略的平均响应时间和资源交换总值,确定各候选的节点分配策略下产生的资源获取数值。
在一个实施例中,可以按照以下公式确定各候选的节点分配策略下产生的资源获取数值:
其中,θj为第j种候选的节点分配策略下产生的资源获取数值;为服务额定时间;li为第j种候选的节点分配策略所对应的资源交换总值;kj为第j种候选的节点分配策略下的系数;为针对当前的数据处理请求的平均响应时间;pj为第j种候选的节点分配策略下选取各节点的资源交换数值;T为周期。
进一步地,可以获取各候选的节点分配策略下产生的风险系数。根据同一候选的节点分配策略的资源获取数值和风险系数,确定在各候选的节点分配策略下产生的资源增长数值。
在一个实施例中,可以根据下述公式确定在各候选的节点分配策略下产生的资源增长数值:
其中,cj即为第j种候选的节点分配策略下产生的资源增长数值,rj为第j种候选的节点分配策略下产生的风险系数;α为权重系数,θj为第j种候选的节点分配策略下产生的资源获取数值。
在一个实施例中,可以根据以下公式确定最大资源增长数值:
其中,c1,c2,...,c(m,n)是指从n个节点中分别取1至m个节点所形成的候选的节点分配策略所产生的资源增长数值。即,R即为各个候选的节点分配策略所产生的各资源增长数值的集合,max(R)即为取最大资源增长数值。
上述实施例中,根据同一候选的节点分配策略的资源获取数值和风险系数,确定在各候选的节点分配策略下产生的资源增长数值,即既考虑到收益、又考虑到风险,使得所确定的利润更加的准确,从而能够更加准确地规划出辅助节点的创建数量,进而,使得集群资源能够得到更加合理的配置和利用。
在一个实施例中,辅助节点包括第一节点和第二节点;第一节点用于转发数据记录块至对应的从节点;第二节点用于处理数据处理请求中的读请求;所述当前负载信息包括所述数据处理请求中写请求和读请求的第一比例。
本实施例中,获取各候选的节点分配策略下产生的风险系数包括:获取各候选的节点分配策略中包括的第一节点的集合和第二节点的集合的性能排序优先级别;获取选取各候选的节点分配策略中单个节点的服务成功率和服务失败率;根据第一比例和对应于同一候选的节点分配策略的性能排序优先级别、服务成功率以及服务失败率,确定各候选的节点分配策略下产生的风险系数。
具体地,可以从各候选的节点分配策略中获取第一节点的集合和第二节点的集合,确定第一节点的集合和第二节点的集合分别对应的性能。对第一节点的集合对应的性能和第二节点的集合对应的性能进行排序,根据其排序结果确定第一节点的集合和第二节点的集合的性能优先级别。可以根据历史数据预测各候选的节点分配策略中单个节点的服务成功率和服务失败率。进一步地,可以根据第一比例和对应于同一候选的节点分配策略的性能排序优先级别、服务成功率以及服务失败率,确定各候选的节点分配策略下产生的风险系数。
在一个实施例中,可以按照以下公式确定各候选的节点分配策略下产生的风险系数:
rj=(1-τ)qj·ε+τqj·φ; (公式10)
其中,rj为第j种候选的节点分配策略下产生的风险系数;τ是数据处理请求中写请求和读请求的第一比例;qj为第j种候选的节点分配策略中包括的第一节点的集合和第二节点的集合的性能排序优先级别;ε是候选的节点分配策略中单个节点的服务成功率;φ是候选的节点分配策略中单个节点的服务失败率。
上述实施例中,相当于根据候选的节点分配策略中不同类型的节点所对应的性能、各个节点的服务成功和失败率、以及接收到的数据处理请求中不同类型的请求之间的比例等多维度的因素,确定在各候选的节点分配策略下产生的风险系数,既考虑到节点维度的影响因素、又考虑到请求维度的影响因素,因而能够使得确定的风险系数更加的准确,从而能够使得根据风险系数所确定的利润更加的准确,以更加准确地规划出辅助节点的创建数量,进而,使得集群资源能够得到更加合理的配置和利用。
如图7所示,在一个实施例中,提供了另一种数据管理方法,该方法具体包括以下步骤:
S702,通过集群中的主节点接收当前的数据处理请求;根据当前的数据处理请求,确定集群中的当前负载信息。
S704,获取主节点当前对应的第一资源交换数值、从节点对应的第二资源交换数值和辅助节点对应的第三资源交换数值。
当辅助节点包括第一节点和第二节点时,辅助节点对应的第三资源交换数值,可以包括第一节点对应的资源交换数值和第二节点对应的资源交换数值。
S706,获取多个候选的节点分配策略;预测在各候选的节点分配策略下针对当前的数据处理请求的平均响应时间。
S708,基于各候选的节点分配策略中的从节点和辅助节点的分配数量、第一资源交换数值、第二资源交换数值和第三资源交换数值,确定各候选的节点分配策略所对应的资源交换总值。
S710,根据对应于同一候选的节点分配策略的平均响应时间和资源交换总值,确定各候选的节点分配策略下产生的资源获取数值。
S712,获取各候选的节点分配策略下产生的风险系数;根据同一候选的节点分配策略的资源获取数值和风险系数,确定在各候选的节点分配策略下产生的资源增长数值。
S714,从最大资源增长数值所对应的候选的节点分配策略中,获取辅助节点的分配数量,得到辅助节点的创建数量。
可以理解,当辅助节点包括第一节点和第二节点时,辅助节点的分配数量可以包括第一节点和第二节点的分配数量,辅助节点的创建数量则可以包括第一节点的创建数量和第二节点的创建数量。
S716,获取候选的节点位置组合;各候选的节点位置组合中包括符合创建数量的辅助节点的位置;针对每个候选的节点位置组合,预测各辅助节点建立于候选的节点位置组合中相应位置处时的性能值。
可以理解,当辅助节点包括第一节点和第二节点时,各候选的节点位置组合中包括符合第一节点的创建数量的第一节点的位置和符合第二节点的创建数量的第二节点的位置。
S718,根据预测的同一候选的节点位置组合中各第一节点的性能值,确定各候选的节点位置组合所对应的集群的性能值。
可以理解,当辅助节点包括第一节点和第二节点时,可以根据同一候选的节点位置组合中各第一节点的性能值和第二节点的性能值,确定各候选的节点位置组合所对应的集群的性能值。
S720,从各候选的节点位置组合中,选取对应于最大性能值的节点位置组合;在选取的节点位置组合中包括的辅助节点的各位置处,创建主节点的辅助节点。
可以理解,当辅助节点包括第一节点和第二节点时,则可以在选取的节点位置组合中包括的第一节点的各位置处,创建第一节点,在包括的第二节点的位置出,创建第二节点。
S722,当数据处理请求中包括写请求时,响应于写请求在主节点中写入数据,并生成包括数据的数据记录块。
S724,向主节点的辅助节点分发数据记录块;数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制数据记录块中记录的数据并存储。
S726,当数据处理请求中包括读请求时,从集群的从节点中为读请求分配相应的目标从节点;其中,读请求,用于被转发至与目标从节点对应的辅助节点,以指示辅助节点处理读请求。
可以理解,当辅助节点包括第一节点和第二节点时,步骤S724中的辅助节点即为第一节点,步骤S726中的辅助节点即为第二节点。
在一个实施例中,当向弹性扩展的第一节点和第二节点的分发处理皆失败时,则可以通过主节点直接向从节点分发数据记录块或者直接由从节点处理读请求并返回读取的数据至主节点。即,即使出现100%弹性节点失败,仍能保证数据服务的一致性和基本数据服务性能。
如图8所示,在一个实施例中,提供了一种数据管理装置800,该装置800包括:请求获取模块802、响应模块804以及分发模块806,其中:
请求获取模块802,用于通过集群中的主节点接收当前的数据处理请求。
响应模块804,用于当所述请求获取模块802所接收的数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块。
分发模块806,用于向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
在一个实施例中,所述辅助节点包括第一节点;第一节点用于转发数据记录块至对应的从节点;所述数据记录块被分发至所述第一节点。
在一个实施例中,辅助节点还包括第二节点;所述分发模块806还用于当数据处理请求中包括读请求时,则从所述集群的从节点中为所述读请求分配相应的目标从节点;其中,所述读请求,用于被所述目标从节点转发至与所述目标从节点对应的第二节点,以指示所述第二节点处理所述读请求;被转发至的第二节点存储有所述目标从节点中的最新版本的数据。
在一个实施例中,所述数据记录块,还用于指示各辅助节点之间对接收到的所述数据记录块进行一致性校验,并在一致性校验通过后,将所述数据记录块转发至与各辅助节点对应的从节点。
如图9所示,在一个实施例中,该装置800包括:请求获取模块802、节点创建模块803、响应模块804以及分发模块806,其中:
节点创建模块803,用于获取辅助节点的创建数量;确定节点位置组合;所述节点位置组合中包括符合所述创建数量的辅助节点的位置;在所述节点位置组合中包括的辅助节点的各位置处,创建所述主节点的辅助节点。
在一个实施例中,节点创建模块803还用于获取候选的节点位置组合;各候选的节点位置组合中包括符合所述创建数量的辅助节点的位置;预测各节点位置组合对应的集群的性能值;各集群的性能值,为当辅助节点建立于各候选的节点位置组合中的相应位置处时所述集群的性能指标数值;从各所述候选的节点位置组合中,选取对应于最大性能值的节点位置组合。
在一个实施例中,节点创建模块803还用于针对每个候选的节点位置组合,预测各辅助节点建立于所述候选的节点位置组合中相应位置处时的性能值;根据预测的同一候选的节点位置组合中各辅助节点的性能值,确定各候选的节点位置组合所对应的集群的性能值。
在一个实施例中,节点创建模块803还用于根据所述当前的数据处理请求,确定所述集群中的当前负载信息;获取主节点当前对应的第一资源交换数值、从节点对应的第二资源交换数值和辅助节点对应的第三资源交换数值;根据所述当前负载信息、所述第一资源交换数值、所述第二资源交换数值和所述第三资源交换数值,确定辅助节点的创建数量。
在一个实施例中,节点创建模块803还用于获取辅助节点的多个候选的节点分配策略;预测在各候选的节点分配策略下针对所述当前的数据处理请求的平均响应时间;基于各候选的节点分配策略中的从节点和辅助节点的分配数量、所述第一资源交换数值、第二资源交换数值和第三资源交换数值,确定各候选的节点分配策略所对应的资源交换总值;根据所述当前负载信息、以及对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,分别确定在各所述候选的节点分配策略下产生的资源增长数值;从最大资源增长数值所对应的候选的节点分配策略中,获取辅助节点的分配数量,得到辅助节点的创建数量。
在一个实施例中,所述辅助节点包括第一节点和第二节点;所述第一节点用于转发数据记录块至对应的从节点;所述第二节点用于处理所述数据处理请求中的读请求;所述当前负载信息包括所述数据处理请求中写请求和读请求的第一比例;其中,所述辅助节点的创建数量包括第一节点的第一创建数量和第二节点的第二创建数量;所述第一创建数量和第二创建数量之间的第二比例,与所述第一比例正相关。
在一个实施例中,所述当前负载信息包括所述数据处理请求中写请求和读请求的第一比例;节点创建模块803还用于根据对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,确定各候选的节点分配策略下产生的资源获取数值;获取各候选的节点分配策略下产生的风险系数;根据同一候选的节点分配策略的资源获取数值和风险系数,确定在各所述候选的节点分配策略下产生的资源增长数值。
图10为一个实施例中计算机设备的内部结构示意图。参照图10,该计算机设备可以是图1或图2中的主节点120a。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质可存储操作系统和计算机程序。该计算机程序被执行时,可使得处理器执行一种数据管理方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行一种数据管理方法。计算机设备的网络接口用于进行网络通信。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的数据管理装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行,计算机设备的非易失性存储介质可存储组成该数据管理装置的各个程序模块,比如,图8所示的请求获取模块802、响应模块804以及分发模块806。各个程序模块所组成的计算机程序用于使该计算机设备执行本说明书中描述的本申请各个实施例的数据管理方法中的步骤,例如,计算机设备可以通过如图8所示的数据管理装置800中的请求获取模块802通过集群中的主节点接收当前的数据处理请求。计算机设备可以通过响应模块804当所述请求获取模块802所接收的数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块。计算机设备可以通过分发模块806向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据管理方法的步骤。此处数据管理方法的步骤可以是上述各个实施例的数据管理方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据管理方法的步骤。此处数据管理方法的步骤可以是上述各个实施例的数据管理方法中的步骤。
需要说明的是,本申请各实施例中的“第一”、“第二”和“第三”等仅用作区分,而并不用于大小、先后、从属等方面的限定。
应该理解的是,虽然本申请各实施例中的各个步骤并不是必然按照步骤标号指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (15)

1.一种数据管理方法,所述方法包括:
通过集群中的主节点接收当前的数据处理请求;
当数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;
向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
2.根据权利要求1所述的方法,其特征在于,所述辅助节点包括第一节点;第一节点用于转发数据记录块至对应的从节点;所述数据记录块被分发至所述第一节点。
3.根据权利要求2所述的方法,其特征在于,所述辅助节点还包括第二节点;
所述方法还包括:
当数据处理请求中包括读请求时,则从所述集群的从节点中为所述读请求分配相应的目标从节点;
其中,所述读请求,用于被所述目标从节点转发至与所述目标从节点对应的第二节点,以指示所述第二节点处理所述读请求;被转发至的第二节点存储有所述目标从节点中的最新版本的数据。
4.根据权利要求1所述的方法,其特征在于,所述数据记录块,还用于指示各辅助节点之间对接收到的所述数据记录块进行一致性校验,并在一致性校验通过后,将所述数据记录块转发至与各辅助节点对应的从节点。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括:
获取辅助节点的创建数量;
确定节点位置组合;所述节点位置组合中包括符合所述创建数量的辅助节点的位置;
在所述节点位置组合中包括的辅助节点的各位置处,创建所述主节点的辅助节点。
6.根据权利要求5所述的方法,其特征在于,所述确定节点位置组合包括:
获取候选的节点位置组合;各候选的节点位置组合中包括符合所述创建数量的辅助节点的位置;
预测各节点位置组合对应的集群的性能值;各集群的性能值,为当辅助节点建立于各候选的节点位置组合中的相应位置处时所述集群的性能指标数值;
从各所述候选的节点位置组合中,选取对应于最大性能值的节点位置组合。
7.根据权利要求6所述的方法,其特征在于,所述预测各节点位置组合对应的集群的性能值包括:
针对每个候选的节点位置组合,预测各辅助节点建立于所述候选的节点位置组合中相应位置处时的性能值;
根据预测的同一候选的节点位置组合中各辅助节点的性能值,确定各候选的节点位置组合所对应的集群的性能值。
8.根据权利要求5所述的方法,其特征在于,所述获取辅助节点的创建数量包括:
根据所述当前的数据处理请求,确定所述集群中的当前负载信息;
获取主节点当前对应的第一资源交换数值、从节点对应的第二资源交换数值和辅助节点对应的第三资源交换数值;
根据所述当前负载信息、所述第一资源交换数值、所述第二资源交换数值和所述第三资源交换数值,确定辅助节点的创建数量。
9.根据权利要求8所述的方法,其特征在于,所述根据所述当前负载信息、所述第一资源交换数值、所述第二资源交换数值和所述第三资源交换数值,确定辅助节点的创建数量包括:
获取辅助节点的多个候选的节点分配策略;
预测在各候选的节点分配策略下针对所述当前的数据处理请求的平均响应时间;
基于各候选的节点分配策略中的从节点和辅助节点的分配数量、所述第一资源交换数值、第二资源交换数值和第三资源交换数值,确定各候选的节点分配策略所对应的资源交换总值;
根据所述当前负载信息、以及对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,分别确定在各所述候选的节点分配策略下产生的资源增长数值;
从最大资源增长数值所对应的候选的节点分配策略中,获取辅助节点的分配数量,得到辅助节点的创建数量。
10.根据权利要求9所述的方法,其特征在于,所述辅助节点包括第一节点和第二节点;所述第一节点用于转发数据记录块至对应的从节点;所述第二节点用于处理所述数据处理请求中的读请求;所述当前负载信息包括所述数据处理请求中写请求和读请求的第一比例;
其中,所述辅助节点的创建数量包括第一节点的第一创建数量和第二节点的第二创建数量;所述第一创建数量和第二创建数量之间的第二比例,与所述第一比例正相关。
11.根据权利要求9所述的方法,其特征在于,所述当前负载信息包括所述数据处理请求中写请求和读请求的第一比例;
所述根据所述当前负载信息、以及对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,分别确定在各所述候选的节点分配策略下产生的资源增长数值包括:
根据对应于同一候选的节点分配策略的所述平均响应时间和所述资源交换总值,确定各候选的节点分配策略下产生的资源获取数值;
获取各候选的节点分配策略下产生的风险系数;
根据同一候选的节点分配策略的资源获取数值和风险系数,确定在各所述候选的节点分配策略下产生的资源增长数值。
12.一种数据管理系统,所述系统包括:主节点、从节点和不参与投票和竞选的辅助节点;
所述主节点,用于接收当前的数据处理请求;当数据处理请求中包括写请求时,在主节点中响应于所述写请求写入数据,并向所述主节点的辅助节点分配包括已写入的所述数据的数据记录块;
所述辅助节点,用于将分配的所述数据记录块,分发至与所述辅助节点对应的从节点;
所述从节点,用于在所述从节点中写入由所述辅助节点分发至的所述数据记录块中包括的所述数据。
13.一种数据管理装置,所述装置包括:
请求获取模块,用于通过集群中的主节点接收当前的数据处理请求;
响应模块,用于当所述请求获取模块所接收的数据处理请求中包括写请求时,响应于所述写请求在主节点中写入数据,并生成包括所述数据的数据记录块;
分发模块,用于向所述主节点的辅助节点分发所述数据记录块;所述数据记录块,用于被转发至与各辅助节点分别对应的从节点,以指示在各从节点中复制所述数据记录块中记录的所述数据并存储;所述辅助节点,是不参与投票和竞选的节点。
14.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至11中任一项所述方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至11中任一项所述方法的步骤。
CN201910455447.0A 2019-05-29 2019-05-29 数据管理方法、系统、装置、计算机设备及存储介质 Active CN110231915B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910455447.0A CN110231915B (zh) 2019-05-29 2019-05-29 数据管理方法、系统、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910455447.0A CN110231915B (zh) 2019-05-29 2019-05-29 数据管理方法、系统、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN110231915A true CN110231915A (zh) 2019-09-13
CN110231915B CN110231915B (zh) 2022-04-01

Family

ID=67858804

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910455447.0A Active CN110231915B (zh) 2019-05-29 2019-05-29 数据管理方法、系统、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN110231915B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110933137A (zh) * 2019-10-31 2020-03-27 北京浪潮数据技术有限公司 一种数据同步方法、系统、设备及可读存储介质
CN113778331A (zh) * 2021-08-12 2021-12-10 联想凌拓科技有限公司 一种数据处理方法、主节点及存储介质
CN115102966A (zh) * 2022-06-01 2022-09-23 咪咕视讯科技有限公司 节点管理方法、装置、设备与计算机可读存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701906A (zh) * 2013-12-27 2014-04-02 北京奇虎科技有限公司 分布式实时计算系统及其数据处理方法
WO2015014170A1 (zh) * 2013-07-31 2015-02-05 华为技术有限公司 分区日志队列同步管理方法及设备
CN105187517A (zh) * 2015-08-20 2015-12-23 浪潮(北京)电子信息产业有限公司 一种实现元数据集群的方法及元数据集群
CN107295080A (zh) * 2017-06-19 2017-10-24 北京百度网讯科技有限公司 应用于分布式服务器集群的数据存储方法和服务器
CN108322533A (zh) * 2018-01-31 2018-07-24 广州鼎甲计算机科技有限公司 基于操作日志的分布式集群节点间配置同步方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015014170A1 (zh) * 2013-07-31 2015-02-05 华为技术有限公司 分区日志队列同步管理方法及设备
CN103701906A (zh) * 2013-12-27 2014-04-02 北京奇虎科技有限公司 分布式实时计算系统及其数据处理方法
CN105187517A (zh) * 2015-08-20 2015-12-23 浪潮(北京)电子信息产业有限公司 一种实现元数据集群的方法及元数据集群
CN107295080A (zh) * 2017-06-19 2017-10-24 北京百度网讯科技有限公司 应用于分布式服务器集群的数据存储方法和服务器
CN108322533A (zh) * 2018-01-31 2018-07-24 广州鼎甲计算机科技有限公司 基于操作日志的分布式集群节点间配置同步方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110933137A (zh) * 2019-10-31 2020-03-27 北京浪潮数据技术有限公司 一种数据同步方法、系统、设备及可读存储介质
CN110933137B (zh) * 2019-10-31 2022-08-02 北京浪潮数据技术有限公司 一种数据同步方法、系统、设备及可读存储介质
CN113778331A (zh) * 2021-08-12 2021-12-10 联想凌拓科技有限公司 一种数据处理方法、主节点及存储介质
CN115102966A (zh) * 2022-06-01 2022-09-23 咪咕视讯科技有限公司 节点管理方法、装置、设备与计算机可读存储介质

Also Published As

Publication number Publication date
CN110231915B (zh) 2022-04-01

Similar Documents

Publication Publication Date Title
US11899684B2 (en) System and method for maintaining a master replica for reads and writes in a data store
US9886348B2 (en) System and method for adjusting membership of a data replication group
CN104011701B (zh) 内容传送网络系统和能够在内容传送网络中操作的方法
CN104704773B (zh) 云存储方法和系统
CN103425756B (zh) 一种hdfs中数据块的副本管理策略
EP3935515B1 (en) Metadata routing in a distributed system
CN106878473A (zh) 一种消息处理方法、服务器集群及系统
CN110231915A (zh) 数据管理方法、系统、装置、计算机设备及存储介质
CN107832138A (zh) 一种扁平化的高可用namenode模型的实现方法
CN109104464A (zh) 一种边缘计算环境下面向协同存储的分布式数据更新方法
CN104809510A (zh) 一种提供票务支持的票池中间件的构建、购票及锁票方法
JP2022511686A (ja) 分散コンピューティングおよびストレージのためのインテリジェントで自律的な非中央集権型の市場
CN110266872A (zh) 通讯录数据的管控方法、装置及云通讯录系统
Rajalakshmi et al. An improved dynamic data replica selection and placement in cloud
CN103365740B (zh) 一种数据冷备方法及装置
Lin et al. Game-theoretic strategy analysis for data reliability management in cloud storage systems
CN115292394A (zh) 数据处理方法、装置、计算机设备和存储介质
CN110175179A (zh) 数据传输方法及系统、服务节点、存储装置
KR20220094012A (ko) 블록 체인의 뉴럴 블록 클러스터 기반의 유통이력 관리 및 제품 인증 서비스제공 장치 및 그 동작 방법
CN110442573A (zh) 一种分布式容错键值存储的方法及装置
CN117057799B (zh) 资产数据处理方法、装置、设备及存储介质
JP7368531B2 (ja) ブロックチェーンに基づく部屋在庫管理システム
CN114915428B (zh) 一种适用于流通钢材溯源的联盟链
CN116975158B (zh) 请求处理方法、装置、计算机设备和存储介质
US20230283663A1 (en) Randomization of heartbeat communications among multiple partition groups

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