CN111414127B - 计算集群系统及其数据获取方法以及电子设备 - Google Patents
计算集群系统及其数据获取方法以及电子设备 Download PDFInfo
- Publication number
- CN111414127B CN111414127B CN201910008875.9A CN201910008875A CN111414127B CN 111414127 B CN111414127 B CN 111414127B CN 201910008875 A CN201910008875 A CN 201910008875A CN 111414127 B CN111414127 B CN 111414127B
- Authority
- CN
- China
- Prior art keywords
- shared data
- node
- computing
- data
- root 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 36
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010367 cloning Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000010076 replication Effects 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
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种计算集群系统及其数据获取方法以及电子设备。该系统中的计算节点包括:至少一个根节点和多个子节点,所述根节点与所述子节点组成树状结构,所述根节点中,设置有用于从存储集群中读取共享数据的控制单元,及用于存储所述共享数据的缓存单元;每个所述子节点中,设置有用于从所述根节点中的控制单元中读取所述共享数据的控制单元,及用于存储所述共享数据的缓存单元。本发明实施例通过设置树状结构来分流计算集群中的读请求,只需要由根节点从存储集群中读取共享数据,进而通过树状结构将共享数据快速复制到所有的子节点,尤其适用于批量读取数据的高并发场景,能够提升系统性能,提高了数据读取速度。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种计算集群系统及其数据获取方法以及电子设备。
背景技术
在云计算的某些应用场景(例如,双十一促销)中,在快速启动大批量的容器(如,虚拟机VM容器、Docker容器等)时,一般预先将用于批量启动容器的数据作为镜像存储于镜像中心,然后通过镜像来批量启动容器。图1为现有技术中批量容器并发启动的示意图。如图1所示,在现有的存储与计算分离的云计算架构中,当采用一个镜像数据批量启动多个容器(如,容器1、容器2、……、容器n)时,首先,由提供存储资源的存储集群将镜像数据下载到本地作为快照,然后由快照链接克隆出多个块设备(如,块设备、块设备2、……、块设备n),多个块设备与快照共享底层的数据文件,每个块设备对应一个容器,为计算集群中相应的容器提供数据服务。在多个容器同时启动时,其分别从相对应的块设备读取镜像数据。
发明人在实现本发明的过程中,发现现有技术至少存在如下问题:由于多个块设备是由快照链接克隆而来,克隆出的块设备中存储的数据实际上仅为指向快照的链接,而不是真正的镜像数据,因此,多个块设备实际上读取的都是同一个快照的镜像数据内容,那么,容器的数量越大,则需要克隆出的块设备就越多,存储集群需要响应的并发读请求就越多,从而导致系统性能下降,影响容器的读取速度。
发明内容
本发明实施例提供一种计算集群系统及其数据获取方法以及电子设备,以解决现有技术中例如由于链接克隆快照数据而导致的高并发数据读取场景下系统性能下降的缺陷。
为达到上述目的,本发明实施例提供了一种计算集群系统,所述计算集群系统中的计算节点包括:至少一个根节点和多个子节点,所述根节点与所述子节点组成树状结构,
所述根节点中,设置有用于针对共享数据的读请求从存储集群中读取所述共享数据的控制单元,及用于存储所述共享数据的缓存单元;
每个所述子节点中,设置有用于根据所述读请求从所述根节点中的控制单元中读取所述共享数据的控制单元,及用于存储所述共享数据的缓存单元。
本发明实施例还提供了一种计算集群系统的数据获取方法,所述计算集群系统中的计算节点包括:至少一个根节点和多个子节点,所述根节点与所述子节点组成树状结构,所述方法包括:
所述根节点在接收到针对共享数据的读请求时,根据所述读请求从存储集群中读取并缓存所述共享数据;
所述子节点在接收到所述读请求时,根据所述读请求从所述根节点中读取并缓存所述共享数据。
本发明实施例还提供了一种电子设备,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,所述程序运行时执行本发明实施例提供的计算集群系统的数据获取方法。
本发明实施例提供的计算集群系统及其数据获取方法以及电子设备,通过设置树状结构来分流计算集群中的读请求,只需要由根节点从存储集群中读取共享数据,进而通过树状结构将共享数据快速复制到所有的子节点,并在各子节点对共享数据进行缓存,以向节点中的容器提供数据服务,利用海量计算节点实现分布式数据复制和缓存,尤其适用于批量读取数据的高并发数据读取场景,可以按需从存储计算读取数据并通过点对点方式复制到多个计算节点,能够避免多个计算节点同时从存储集群读取数据,提升了系统性能,提高了数据读取速度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为现有技术中批量容器并发启动的示意图;
图2为本发明提供的计算集群系统一个实施例的系统框图;
图3为本发明提供的计算集群系统另一个实施例的系统框图;
图4为本发明提供的计算集群系统的数据获取方法一个实施例的流程图;
图5为本发明提供的计算集群系统的数据获取方法另一个实施例的流程图;
图6为本发明提供的电子设备实施例的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在现有的存储与计算分离的云计算架构中,计算集群中存在大量的容器,这些容器在某些场景下需要读取相同的数据,例如大量的容器需要通过相同的数据来批量启动。因此,将用于这些容器所需要读取的数据(例如,用于启动这些容器的启动数据)预先制作为镜像数据,以快照的形式存储于存储集群中。然后,在存储集群中,按照容器的个数将快照链接克隆出多个块设备,使得每个块设备对应计算集群中的一个容器,为其提供数据服务。各容器分别从与其相对应的块设备中读取镜像数据。但是,由于多个块设备是对快照链接克隆而来,克隆出的块设备实际上仅存储了指向快照中镜像数据的链接,而不是真正的镜像数据,因此,多个块设备实际上读取的都是同一个快照的镜像数据内容,那么,容器的数量越大,则需要克隆出的块设备就越多,存储集群需要响应的并发读请求就越多,从而导致系统性能下降,影响容器的启动速度。
针对现有技术的缺陷,本申请提出了一种计算集群系统,其主要原理是:将计算集群中的各计算节点设置为由至少一个根节点和多个子节点组成的树状结构,在每个节点中缓存用于各容器(或,虚拟机)所需要的共享数据(例如,镜像数据),且设置用于控制节点之间数据复制的控制单元。其中,根节点中的控制单元用于从存储集群中读取该共享数据,子节点中的控制单元用于从根节点中的控制单元中读取该共享数据。通过设置树状结构来分流计算集群中各容器/虚拟机的读请求,当多个容器/虚拟机批量读取数据时,只需要先由根节点中的控制单元从存储集群中读取共享数据,进而通过树状结构将共享数据快速复制到所有的子节点,便能够向节点中的容器/虚拟机提供数据服务,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据(即,将多个计算节点同时从存储集群读取相同数据,变为由计算集群中的一个根节点先从存储集群读取数据,然后其它子节点从该根节点读取数据),从而提升了系统性能,提高了容器/虚拟机的数据读取速度。
上述实施例是对本发明实施例的技术原理的说明,下面通过多个实施例来进一步对本发明实施例具体技术方案进行详细描述。
实施例一
图2为本发明提供的计算集群系统一个实施例的系统框图。如图2所示,本发明实施例提供的计算集群系统中的计算节点包括:至少一个根节点21和多个子节点22,根节点21与子节点22组成树状结构。其中,根节点21中设置有用于针对共享数据的读请求从存储集群中读取该共享数据的控制单元,及用于存储该共享数据的缓存单元;每个子节点22中设置有用于根据读请求从根节点21中的控制单元中读取该共享数据的控制单元,及用于存储该共享数据的缓存单元。
在本发明实施例中,该计算集群系统可以在其计算节点中设置多个容器或设置多个虚拟机(图2中仅以容器为例,未示出虚拟机),根节点21与多个子节点22组成树状结构,图2所示的结构仅仅是本发明的技术方案可以应用的计算集群系统的示例之一,在发明实施例中,每个子节点22可以与一个上级子节点22或者根节点21连接,每个子节点22也可以与一个或多个下级子节点22连接。每个计算节点中可以设置一个或多个容器。在各个计算节点中均设置有用于获取共享数据的控制单元和用于存储该共享数据的缓存单元。具体地,根节点21中的控制单元用于从存储集群中读取该共享数据;子节点22中的控制单元用于直接从根节点21中的控制单元中读取该共享数据,或者通过其上级子节点22来间接从根节点21中的控制单元中读取该共享数据。
当子节点22中的控制单元接收到来自本计算节点中的容器/虚拟机(或,来自下级子节点)的读请求时,可以查看本计算节点中的缓存单元中是否存储有该读请求对应的目标共享数据,如果本地缓存中有该共享数据则读取,如果本地缓存中没有该共享数据,则将该读请求转发至其上级子节点中的控制单元,如果上级子节点中的本地缓存(缓存单元)中有该共享数据则读取,如果也没有该共享数据,则继续往上级请求,直至发送到根节点21。当根节点21中的控制单元接收到来自本计算节点中的容器/虚拟机(或,来自子节点22)的读请求时,可以查看本计算节点中的缓存单元是否存储有该读请求对应的目标共享数据,如果根节点21的本地缓存(缓存单元)中有该共享数据则读取,如果也没有该共享数据,则根节点21中的控制单元向存储集群请求读取该共享数据,然后将该共享数据一级一级返回至各子节点22中的控制单元以及相应的容器/虚拟机。
本发明实施例提供的计算集群系统,通过设置树状结构来分流计算集群中的读请求,只需要由根节点从存储集群中读取共享数据,进而通过树状结构将共享数据快速复制到所有的子节点,并在各子节点对共享数据进行缓存,以向节点中的容器/虚拟机提供数据服务,利用海量计算节点实现分布式数据复制和缓存,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,可以按需从存储计算读取数据并通过点对点方式复制到多个计算节点,能够避免多个计算节点同时从存储集群读取数据,提升了系统性能,提高了容器/虚拟机的数据读取速度。
实施例二
图3为本发明提供的计算集群系统另一个实施例的系统框图。如图3所示,在上述图2所示实施例的基础上,本发明实施例提供的计算集群系统中,每个计算节点中还可以设置有用于动态调度读写请求的缓存云盘。计算集群中每一个容器/虚拟机对应存储集群中的一个块设备(图3中仍以容器为例,未示出虚拟机),例如,容器1对应块设备1,容器2对应块设备2,容器3对应块设备3,…,容器n对应块设备n等。
具体地,在各计算节点中,缓存云盘可以用于将针对共享数据的写请求发送至当前计算节点中的原始云盘,由原始云盘向存储集群发送写请求,同时,缓存云盘还可以用于记录该写请求对应的逻辑磁盘地址(Logical Block Address;以下简称:LBA)。
在本发明实施例中,可以对现有的原始云盘(如,RIVER云盘)进行封装,得到缓存云盘,缓存云盘可以拥有原始云盘完整的功能和接口。
另外,缓存云盘还可以用于在缓存时间窗口内,将目标LBA未被记录的读请求发送至当前计算节点中的控制单元,以读取共享数据。
在本发明实施例中,可以设置缓存时间窗口。在该缓存时间窗口内,缓存云盘若接收到容器针对块设备的写请求,则将该写请求发送至该计算节点中的原始云盘(例如,RIVER云盘),由原始云盘向存储集群发送请求,同时标记写过的LBA;缓存云盘若接收到容器针对块设备的读请求,则判断该读请求的目标地址是否为已标记的LBA,如果是,则将该读请求发送至原始云盘,由原始云盘向存储集群发送请求;否则,将该读请求发送至本节点的控制单元,以提高数据读取速度。在该缓存时间窗口外,缓存云盘则可以把容器针对块设备的所有请求(读请求和写请求)都转发给原始云盘。另外,缓存时间窗口的长度与缓存云盘的大小(数据量)相匹配,以确保在高并发读请求结束后缓存时间窗口自动关闭。
进一步地,在本发明实施例中,缓存云盘可以通过位图(bitmap)记录LBA。位图的每一个位(bit)可以用于记录一个LBA区域(例如,大小为4KB的区域),bit值为1表示该区域写过数据,为0表示该区域未写过数据。举例说明,一个40GB的磁盘按照4KB切片需要10240K个bit位,合计为1280KB=1.25MB内存,内存占用对计算节点的影响非常轻微,可以忽略不计。这组位图可以临时存放在内存,不需要持久化到磁盘;在缓存时间窗口开启前初始化,在缓存时间窗口关闭后释放内存。
更进一步地,在本发明实施例中,根节点21的个数可以为多个(图3中未示出),每个根节点21中的缓存单元可以用于存储上述共享数据(存储集群中的快照数据,如用于启动容器/虚拟机的启动数据等)的一部分,且多个根节点21中的缓存单元中存储的共享数据的一部分组成完整的共享数据。多个根节点21中包括至少一个主根节点,用于协调各根节点21向子节点22发送共享数据。多个根节点21可以通过各种机制来选取主根节点。本发明实施例中,将共享数据分散存储于多个根节点的具体实现方式,可以采用切片的方式,即,按照数据的大小将共享数据且分为大小相同的数据块,然后分别存储于不同的根节点中;也可采用其它策略进行划分,例如,根据共享数据中不同数据的功能进行划分,从而将不同功能的数据块存储于不同的根节点,等等。
本发明实施例提供的计算集群系统可以应用于高并发的容器/虚拟机批量启动的场景中,此时,共享数据则为用于启动容器/虚拟机的启动数据。
本发明实施例提供的计算集群系统,通过设置树状结构来分流计算集群中各容器/虚拟机的读请求,只需要由根节点从存储集群中读取共享数据,进而通过树状结构将共享数据快速复制到所有的子节点,并在各子节点对共享数据进行缓存,以向节点中的容器提供数据服务,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,提升了系统性能,提高了容器/虚拟机的数据读取速度,在通过启动数据批量启动容器/虚拟机时,能够极大地提高容器/虚拟机的启动速度。
实施例三
图4为本发明提供的计算集群系统的数据获取方法一个实施例的流程图。该计算集群系统中的计算节点可以包括:至少一个根节点和多个子节点,根节点与子节点组成树状结构。如图4所示,该计算集群系统的数据获取方法包括如下步骤:
S401,根节点在接收到针对共享数据的读请求时,根据读请求从存储集群中读取并缓存该共享数据。
S402,子节点在接收到读请求时,根据读请求从根节点中读取并缓存该共享数据。
在本发明实施例中,该计算集群系统可以在其计算节点中设置多个容器或设置多个虚拟机,当子节点接收到来自本计算节点中的容器/虚拟机(或,来自下级子节点)的读请求时,可以查看本计算节点中是否缓存有该读请求对应的目标共享数据,如果本地缓存中有该共享数据则读取,如果本地缓存中没有该共享数据,则将该读请求转发至其上级子节点,如果上级子节点中的本地缓存中有该共享数据则读取,如果也没有该共享数据,则继续往上级请求,直至发送到根节点。当根节点接收到来自本计算节点中的容器/虚拟机(或,来自子节点)的读请求时,可以查看本计算节点中是否缓存有该读请求对应的目标共享数据,如果根节点的本地缓存中有该共享数据则读取,如果也没有该共享数据,则根节点向存储集群请求读取该共享数据,然后将该数据一级一级返回至各子节点以及相应的容器/虚拟机。
本发明实施例提供的计算集群系统的数据获取方法,通过设置树状结构来分流计算集群中的读请求,只需要由根节点从存储集群中读取共享数据,进而通过树状结构将共享数据快速复制到所有的子节点,并在各子节点对共享数据进行缓存,以向节点中的容器提供数据服务,利用海量计算节点实现分布式数据复制和缓存,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,可以按需从存储计算读取数据并通过点对点方式复制到多个计算节点,能够避免多个计算节点同时从存储集群读取数据,提升了系统性能,提高了容器共享的数据读取速度。
实施例四
图5为本发明提供的计算集群系统的数据获取方法另一个实施例的流程图。如图5所示,在上述图4所示实施例的基础上,本实施例提供的计算集群系统的数据获取方法还可以包括以下步骤:
S501,根节点在接收到读请求时,查询是否已缓存该共享数据。
S502,若根节点中未缓存该共享数据,则将读请求发送至存储集群,以读取并缓存该共享数据。
在本发明实施例中,当根节点接收到来自本计算节点中的容器/虚拟机(或,来自子节点)的读请求时,可以查看本计算节点中是否缓存有该读请求对应的目标共享数据,如果根节点的本地缓存中有该共享数据则读取,如果没有该共享数据,则根节点向存储集群请求读取该共享数据,然后将该共享数据一级一级返回至各子节点以及相应的容器/虚拟机。
S503,子节点在接收到读请求时,查询是否已缓存该共享数据。
S504,若子节点中未缓存该共享数据,则将读请求发送至上级子节点或者根节点,以读取并缓存该共享数据。
在本发明实施例中,当子节点接收到来自本计算节点中的容器/虚拟机(或,来自下级子节点)的读请求时,可以查看本计算节点中是否缓存有该读请求对应的目标共享数据,如果本地缓存中有该共享数据则读取,如果本地缓存中没有该共享数据,则将该读请求转发至其上级子节点,如果上级子节点中的本地缓存中有该共享数据则读取,如果也没有该共享数据,则继续往上级请求,直至发送到根节点。
本发明实施例提供的计算集群系统的数据获取方法可以应用于高并发的容器/虚拟机批量启动的场景中,此时,共享数据则为用于启动容器/虚拟机的启动数据。
进一步地,计算节点在接收到容器的写请求时,通过原始云盘向存储集群发送写请求,并记录该写请求对应的LBA。
在本发明实施例中,计算节点可以通过位图记录LBA。位图的每一个位(bit)可以用于记录一个LBA区域(例如,大小为4KB的区域),bit值为1表示该区域写过数据,为0表示该区域未写过数据。举例说明,一个40GB的磁盘按照4KB切片需要10240K个bit位,合计为1280KB=1.25MB内存,内存占用对计算节点的影响非常轻微,可以忽略不计。这组位图可以临时存放在内存,不需要持久化到磁盘;在缓存时间窗口开启前初始化,在缓存时间窗口关闭后释放内存。
更进一步地,在缓存时间窗口内,计算节点在接收到目标LBA未计算节点记录的读请求时,将已缓存的共享数据发送至容器/虚拟机。
在本发明实施例中,可以设置缓存时间窗口。在该缓存时间窗口内,计算节点若接收到容器针对块设备的写请求,则通过原始云盘向存储集群发送请求,同时标记写过的LBA;计算节点若接收到容器针对块设备的读请求,则判断该读请求的目标地址是否为已标记的LBA,如果是,则通过原始云盘向存储集群发送请求;否则,将已缓存的数据发送至容器,以提高数据读取速度。在该缓存时间窗口外,计算节点则可以把容器针对块设备的所有请求(读请求和写请求)都转发给原始云盘。
本发明实施例提供的计算集群系统的数据获取方法,通过计算集群系统的树状结构来分流计算集群中各容器/虚拟机的读请求,只需要由根节点从存储集群中读取共享数据,进而通过树状结构将共享数据快速复制到所有的子节点,并在各子节点对共享数据进行缓存,以向节点中的容器提供数据服务,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,提升了系统性能,提高了容器/虚拟机的数据读取速度,在通过启动数据批量启动容器/虚拟机时,能够极大地提高容器/虚拟机的启动速度。
实施例五
以上描述了计算集群系统的内部功能和结构,该系统可实现为一种电子设备。图6为本发明提供的电子设备实施例的结构示意图。如图6所示,该电子设备包括存储器61和处理器62。
存储器61,用于存储程序。除上述程序之外,存储器61还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器61可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器62,与存储器61耦合,执行存储器61所存储的程序,该程序运行时执行本发明实施例所提供的计算集群系统的数据获取方法。
进一步,如图6所示,电子设备还可以包括:通信组件63、电源组件64、音频组件65、显示器66等其它组件。图6中仅示意性给出部分组件,并不意味着电子设备只包括图6所示组件。
通信组件63被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件63经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件63还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件64,为电子设备的各种组件提供电力。电源组件64可以包括电源管理系统,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件65被配置为输出和/或输入音频信号。例如,音频组件65包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器61或经由通信组件63发送。在一些实施例中,音频组件65还包括一个扬声器,用于输出音频信号。
显示器66包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (14)
1.一种计算集群系统,其特征在于,所述计算集群系统中的计算节点包括:至少一个根节点和多个子节点,所述根节点与所述子节点组成树状结构,
所述根节点中,设置有用于针对共享数据的读请求从存储集群中读取所述共享数据的控制单元,及用于存储所述共享数据的缓存单元;
每个所述子节点中,设置有用于根据所述读请求从所述根节点中的控制单元中读取所述共享数据的控制单元,及用于存储所述共享数据的缓存单元;
其中,每个所述计算节点中,设置有用于动态调度读写请求的缓存云盘;
其中,所述缓存云盘用于将写请求发送至当前所述计算节点中的原始云盘,由所述原始云盘向所述存储集群发送所述写请求,以及用于记录所述写请求对应的逻辑磁盘地址。
2.根据权利要求1所述的计算集群系统,其特征在于,每个所述子节点与一个上级子节点或者所述根节点连接,所述子节点中的控制单元用于从所述上级子节点或所述根节点中的控制单元中读取所述共享数据。
3.根据权利要求1所述的计算集群系统,其特征在于,所述根节点的个数为多个,每个所述根节点中的缓存单元用于存储所述共享数据的一部分,且多个所述根节点中的缓存单元中存储的所述共享数据的一部分组成完整的所述共享数据。
4.根据权利要求3所述的计算集群系统,其特征在于,多个所述根节点中包括至少一个主根节点,用于协调各所述根节点向所述子节点发送所述共享数据。
5.根据权利要求1所述的计算集群系统,其特征在于,所述缓存云盘还用于在缓存时间窗口内,将目标逻辑磁盘地址未被记录的读请求发送至当前所述计算节点中的控制单元,以读取所述共享数据。
6.根据权利要求1所述的计算集群系统,其特征在于,所述缓存云盘通过位图记录所述逻辑磁盘地址。
7.根据权利要求6所述的计算集群系统,其特征在于,所述位图的每一位用于记录一个逻辑磁盘地址区域。
8.一种计算集群系统的数据获取方法,其特征在于,所述计算集群系统中的计算节点包括:至少一个根节点和多个子节点,所述根节点与所述子节点组成树状结构,所述方法包括:
所述根节点在接收到针对共享数据的读请求时,根据所述读请求从存储集群中读取并缓存所述共享数据;
所述子节点在接收到所述读请求时,根据所述读请求从所述根节点中读取并缓存所述共享数据;
其中,还包括:
所述计算节点在接收到写请求时,通过原始云盘向所述存储集群发送所述写请求,并记录所述写请求对应的逻辑磁盘地址。
9.根据权利要求8所述的计算集群系统的数据获取方法,其特征在于,所述子节点在接收到所述读请求时,根据所述读请求从所述根节点中读取并缓存所述共享数据,包括:
所述子节点在接收到所述读请求时,查询是否已缓存所述共享数据;
若所述子节点中未缓存所述共享数据,则将所述读请求发送至上级子节点或者所述根节点,以读取并缓存所述共享数据。
10.根据权利要求8所述的计算集群系统的数据获取方法,其特征在于,所述根节点在接收到针对共享数据的读请求时,根据所述读请求从存储集群中读取并缓存所述共享数据,包括:
所述根节点在接收到针对共享数据的读请求时,查询是否已缓存所述共享数据;
若所述根节点中未缓存所述共享数据,则将所述读请求发送至所述存储集群,以读取并缓存所述共享数据。
11.根据权利要求8所述的计算集群系统的数据获取方法,其特征在于,还包括:
在缓存时间窗口内,所述计算节点在接收到目标逻辑磁盘地址未被记录的读请求时,返回已缓存的所述共享数据。
12.根据权利要求11所述的计算集群系统的数据获取方法,其特征在于,所述计算节点通过位图记录所述逻辑磁盘地址。
13.根据权利要求12所述的计算集群系统的数据获取方法,其特征在于,所述位图的每一位用于记录一个逻辑磁盘地址区域。
14.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,所述程序运行时执行权利要求8至13中任一所述的计算集群系统的数据获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910008875.9A CN111414127B (zh) | 2019-01-04 | 2019-01-04 | 计算集群系统及其数据获取方法以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910008875.9A CN111414127B (zh) | 2019-01-04 | 2019-01-04 | 计算集群系统及其数据获取方法以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111414127A CN111414127A (zh) | 2020-07-14 |
CN111414127B true CN111414127B (zh) | 2023-04-28 |
Family
ID=71490754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910008875.9A Active CN111414127B (zh) | 2019-01-04 | 2019-01-04 | 计算集群系统及其数据获取方法以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414127B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462225A (zh) * | 2014-11-12 | 2015-03-25 | 华为技术有限公司 | 一种数据读取的方法、装置及系统 |
WO2016004120A2 (en) * | 2014-07-02 | 2016-01-07 | Hedvig, Inc. | Storage system with virtual disks |
-
2019
- 2019-01-04 CN CN201910008875.9A patent/CN111414127B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016004120A2 (en) * | 2014-07-02 | 2016-01-07 | Hedvig, Inc. | Storage system with virtual disks |
CN104462225A (zh) * | 2014-11-12 | 2015-03-25 | 华为技术有限公司 | 一种数据读取的方法、装置及系统 |
Non-Patent Citations (2)
Title |
---|
N. A. Rahmat.Solving fuzzy combined-emission dispatch by using differential evolution immunized Ant Colony Optimization technique.IEEE.2014,全文. * |
黄裕 ; .基于分布式Redis集群的WEB共享管理研究.计算机与数字工程.2018,(第10期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111414127A (zh) | 2020-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2821925B1 (en) | Distributed data processing method and apparatus | |
CN110751275B (zh) | 图训练系统、数据访问方法及装置、电子设备、存储介质 | |
US9798655B2 (en) | Managing a cache on storage devices supporting compression | |
US9361309B2 (en) | File synchronization method, electronic device and synchronization system | |
EP2711841A1 (en) | Data processing method, device and system based on block storage | |
AU2010319840A1 (en) | Allocating storage memory based on future use estimates | |
CN107329704B (zh) | 一种缓存镜像方法及控制器 | |
CN110837479B (zh) | 数据处理方法、相关设备及计算机存储介质 | |
EP3384384A1 (en) | Methods and devices for acquiring data using virtual machine and host machine | |
US20230137668A1 (en) | storage device and storage system | |
US11237761B2 (en) | Management of multiple physical function nonvolatile memory devices | |
CN115934002B (zh) | 固态硬盘的访问方法、固态硬盘、存储系统及云服务器 | |
CN111414127B (zh) | 计算集群系统及其数据获取方法以及电子设备 | |
US20220261354A1 (en) | Data access method and apparatus and storage medium | |
EP4227802A1 (en) | Method, apparatus and computing device for configuring compute mode | |
CN111414130B (zh) | 计算节点系统及其数据获取方法以及电子设备 | |
CN113051244A (zh) | 数据访问方法和装置、数据获取方法和装置 | |
US11853593B2 (en) | Shared memory protection method for securing MMIO commands | |
US20230045119A1 (en) | Data access method and apparatus | |
CN111399753A (zh) | 写入图片的方法和装置 | |
CN117240917B (zh) | 缓存型云存储系统与数据读写方法、设备及存储介质 | |
US11695853B1 (en) | Content management systems providing zero recovery point objective | |
CN115543225B (zh) | 数据处理方法、系统、装置、计算机存储介质及电子设备 | |
EP4187363A1 (en) | Storage controller, storage control method, solid state disk and storage system | |
US11677624B2 (en) | Configuration of a server in view of a number of clients connected to the server |
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: 20231212 Address after: Room 1-2-A06, Yungu Park, No. 1008 Dengcai Street, Sandun Town, Xihu District, Hangzhou City, Zhejiang Province, 310030 Patentee after: Aliyun Computing Co.,Ltd. Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK Patentee before: ALIBABA GROUP HOLDING Ltd. |