CN111414130B - 计算节点***及其数据获取方法以及电子设备 - Google Patents
计算节点***及其数据获取方法以及电子设备 Download PDFInfo
- Publication number
- CN111414130B CN111414130B CN201910012896.8A CN201910012896A CN111414130B CN 111414130 B CN111414130 B CN 111414130B CN 201910012896 A CN201910012896 A CN 201910012896A CN 111414130 B CN111414130 B CN 111414130B
- Authority
- CN
- China
- Prior art keywords
- data
- cache
- slice
- computing node
- bitmap
- 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 33
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000010367 cloning Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 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
- 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/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]
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明实施例提供了一种计算节点***及其数据获取方法以及电子设备。该***包括:至少两个缓存云盘和一个共享缓存单元,其中,第一缓存云盘从存储集群中读取数据,并将所述数据存储于所述共享缓存单元;所述共享缓存单元利用切片位图标记所述数据的存储状态和写状态;所述第二缓存云盘从所述共享缓存单元中依据所述切片位图读取所述数据。本发明实施例通过在计算节点中的设置共享缓存,以将一个计算节点从存储集群读取数据的次数由多次降低为一次,一方面,能够减少对于存储集群的负荷;另一方面,能够节约带宽资源。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种计算节点***及其数据获取方法以及电子设备。
背景技术
在云计算的某些应用场景(例如,双十一促销)中,在快速启动大批量的容器(如,虚拟机VM容器、Docker容器等)时,一般预先将用于批量启动容器的数据作为镜像存储于镜像中心,然后通过镜像来批量启动容器。图1为现有技术中批量容器并发启动的示意图。如图1所示,在现有的存储与计算分离的云计算架构中,当采用一个镜像数据批量启动一个计算节点中的多个容器(如,容器1、容器2、……、容器n)时,首先,由提供存储资源的存储集群将镜像数据下载到本地作为快照,然后由快照链接克隆出多个块设备(如,块设备、块设备2、……、块设备n),多个块设备与快照共享底层的数据文件,每个块设备对应一个容器,为计算节点中相应的容器提供数据服务。在多个容器同时启动时,其分别从相对应的块设备读取镜像数据。
发明人在实现本发明的过程中,发现现有技术至少存在如下问题:由于多个块设备是由快照链接克隆而来,克隆出的块设备中存储的数据实际上仅为指向快照的链接,而不是真正的镜像数据,因此,多个块设备实际上读取的都是同一个快照的镜像数据内容,那么,批量启动的容器的数量越大,则需要克隆出的块设备就越多,存储集群需要响应的并发读请求就越多,从而导致***性能下降,影响容器的启动速度。
发明内容
本发明实施例提供一种计算节点***及其数据获取方法以及电子设备,以解决现有技术中例如由于链接克隆快照数据而导致的高并发数据读取场景下***性能下降的缺陷。
为达到上述目的,本发明实施例提供了一种计算节点***,包括:至少两个缓存云盘和一个共享缓存单元,其中,
第一缓存云盘从存储集群中读取数据,并将所述数据存储于所述共享缓存单元;
所述共享缓存单元利用切片位图标记所述数据的存储状态和写状态;
第二缓存云盘从所述共享缓存单元中依据所述切片位图读取所述数据。
本发明实施例还提供了一种计算节点***的数据获取方法,所述计算节点***包括:至少两个缓存云盘和一个共享缓存单元,所述方法包括:
第一缓存云盘在接收到读请求时,从存储集群中读取数据,并将所述数据存储于所述共享缓存单元;
所述共享缓存的单元利用切片位图标记所述数据的存储状态和写状态;
第二缓存云盘在接收到读请求时,从所述共享缓存单元中依据所述切片位图读取所述数据。
本发明实施例还提供了一种电子设备,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,所述程序运行时执行本发明实施例提供的计算节点***的数据获取方法。
本发明实施例提供的计算节点***及其数据获取方法以及电子设备,通过在计算节点中的设置共享缓存,以将一个计算节点从存储集群读取数据的次数由多次降低为一次,一方面,能够减少对于存储集群的负荷,尤其适用于批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,提升了***性能,提高了数据的读取速度;另一方面,能够大幅减少对重复数据的传输,从而节约了网络带宽资源。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为现有技术中批量容器并发启动的示意图;
图2为本发明提供的计算节点***一个实施例的***框图;
图3为本发明提供的计算节点***另一个实施例的***框图;
图4为本发明提供的计算节点***的数据获取方法一个实施例的流程图;
图5为本发明提供的计算节点***的数据获取方法另一个实施例的流程图;
图6为本发明提供的电子设备实施例的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在现有的存储与计算分离的云计算架构中,计算节点中存在大量的容器,这些容器在某些场景下需要读取相同的数据,例如大量的容器需要通过相同的数据来批量启动。因此,将用于这些容器所需要读取的数据(例如,用于启动这些容器的启动数据)预先制作为镜像数据,以快照的形式存储于存储集群中。然后,在存储集群中,按照容器的个数将快照链接克隆出多个块设备,使得每个块设备对应计算节点中的一个容器,为其提供数据服务。各容器分别从与其相对应的块设备中读取镜像数据。但是,由于多个块设备是对快照链接克隆而来,克隆出的块设备实际上仅存储了指向快照中镜像数据的链接,而不是真正的镜像数据,因此,多个块设备实际上读取的都是同一个快照的镜像数据内容,那么,容器的数量越大,则需要克隆出的块设备就越多,存储集群需要响应的并发读请求就越多,从而导致***性能下降,影响容器的启动速度。
针对现有技术的缺陷,本申请提出了一种计算节点***,其主要原理是:在计算节点上设置共享缓存单元,用于缓存从存储集群中的快照读取到的数据(镜像数据),以供该计算节点上的多个容器(或,虚拟机)使用。通过在计算节点中的设置共享缓存,以将一个计算节点中的容器/虚拟机从存储集群读取数据的次数由多次降低为一次,一方面,能够减少对于存储集群的负荷,尤其适用于批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,提升了***性能,提高了数据的读取速度;另一方面,能够大幅减少对重复数据的传输,从而节约了网络带宽资源。
上述实施例是对本发明实施例的技术原理的说明,下面通过多个实施例来进一步对本发明实施例具体技术方案进行详细描述。
实施例一
图2为本发明提供的计算节点***一个实施例的***框图。如图2所示,本发明实施例提供的计算节点***包括:至少两个缓存云盘和一个共享缓存单元,其中,多个缓存云盘中,包括一个第一缓存云盘和至少一个第二缓存云盘。
其中,第一缓存云盘用于从存储集群中读取数据,并将该数据存储于共享缓存单元;共享缓存单元用于利用切片位图标记数据的存储状态和写状态;第二缓存云盘用于从共享缓存单元中依据切片位图读取该数据。
在本发明实施例中,在每个缓存云盘对应一个容器(或,虚拟机,
图2中仅以容器为例,未示出虚拟机),用于根据对应的容器/虚拟机的读请求,向其发送相应的数据。当第一缓存云盘接收到来自容器/虚拟机的读请求时,从存储集群请求读取相应的数据,将该数据返回至对应的容器/虚拟机,并将数据存储于共享缓存单元中。共享缓存单元利用切片位图标记数据的存储状态和写状态。当第二缓存云盘接收到来自容器/虚拟机的读请求时,从共享缓存单元中依据切片位图读取该数据,并将数据返回至对应的容器/虚拟机。共享缓存单元设计为“一写多读”的模式,即,第一缓存云盘向共享缓存单元写数据,而各个第二缓存云盘从该共享缓存单元中读取数据。从而实现对存储集群的读取次数有多次降为一次。
本发明实施例提供的计算节点***,通过在计算节点中的设置共享缓存,以将一个计算节点中的容器/虚拟机从存储集群读取数据的次数由多次降低为一次,一方面,能够减少对于存储集群的负荷,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,提升了***性能,提高了容器/虚拟机的数据读取速度;另一方面,能够大幅减少对重复数据的传输,从而节约了网络带宽资源。
实施例二
图3为本发明提供的计算节点***另一个实施例的***框图。如图3所示,在上述图2所示实施例的基础上,本发明实施例提供的计算节点***中,缓存云盘还可以用于动态调度容器/虚拟机的读写请求。计算节点***中每一个容器/虚拟机对应存储集群中的一个块设备,例如,容器1对应块设备1,容器2对应块设备2,容器n对应块设备n等(图3中仍以容器为例,未示出虚拟机)。
具体地,在计算节点***中,各缓存云盘(包括第一缓存云盘和第二缓存云盘)可以用于通过原始云盘(图中未示出)向存储集群发送容器的写请求,同时,缓存云盘还可以用于记录该写请求对应的逻辑磁盘地址(Logical Block Address;以下简称:LBA)。
在本发明实施例中,可以对现有的原始云盘(如,RIVER云盘)进行封装,得到缓存云盘,缓存云盘可以拥有原始云盘完整的功能和接口。
另外,缓存云盘还可以用于在缓存时间窗口内,将目标LBA未被记录的读请求发送至共享缓存单元,以读取数据。
在本发明实施例中,可以设置缓存时间窗口。在该缓存时间窗口内,缓存云盘若接收到容器针对块设备的写请求,则将该写请求发送至原始云盘(例如,RIVER云盘),由原始云盘向存储集群发送请求,同时标记写过的LBA;缓存云盘若接收到容器针对块设备的读请求,则判断该读请求的目标地址是否为已标记的LBA,如果是,则将该读请求发送至原始云盘,由原始云盘向存储集群发送请求;否则,将该读请求发送至共享缓存单元,以提高数据读取速度。在该缓存时间窗口外,缓存云盘则可以把容器针对块设备的所有请求(读请求和写请求)都转发给原始云盘。另外,缓存时间窗口的长度与缓存云盘的大小(数据量)相匹配,以确保在高并发读请求结束后缓存时间窗口自动关闭。
进一步地,在本发明实施例中,缓存云盘可以通过位图(bitmap)记录LBA。位图的每一个位(bit)可以代表一块LBA区域(例如,大小为4KB的区域),bit值为1表示该区域写过数据,为0表示该区域未写过数据。举例说明,一个40GB的磁盘按照4KB切片需要10240K个bit位,合计为1280KB=1.25MB内存,内存占用对计算节点的影响非常轻微,可以忽略不计。这组位图可以临时存放在内存,不需要持久化到磁盘;在缓存时间窗口开启前初始化,在缓存时间窗口关闭后释放内存。
更进一步地,在本发明实施例中,共享缓存单元可以被平均切分为多个缓存切片,缓存云盘则可以通过切片状态位图和切片数据位图控制对共享缓存单元的各缓存切片中数据的更新和/或读取。共享缓存单元的切分力度可以与缓存云盘的位图保持一致(如,均为4KB/片)。
具体地,在切片状态位图中,每一位可以用于标记对应的缓存切片是否正在更新数据;在切片数据位图中,每一位可以用于标记对应的缓存切片是否已经存有该数据。切片位图的每一个位(bit)可以代表一块缓存切片。在切片数据位图中,bit值为1表示该缓存切片写过数据,为0表示该缓存切片未写过数据。在切片状态位图中,bit值为1表示该缓存切片正在更新数据,为0表示该缓存切片当前未更新数据。当bit值为1时,也就是说,第一缓存云盘正在从存储集群读取数据,并即将将数据更新到共享缓存单元的该缓存切片中,此时第二缓存云盘如果要读取相关数据,需要等待第一缓存云盘更新完成后再进行数据读取。
本发明实施例提供的计算节点***可以应用于高并发的容器批量启动的场景中,此时,容器所需的数据则为用于启动容器的启动数据。
本发明实施例提供的计算节点***,通过在计算节点中的设置共享缓存,以将一个计算节点从存储集群读取数据的次数由多次降低为一次,一方面,能够减少对于存储集群的负荷,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,提升了***性能,提高了容器/虚拟机的数据读取速度,在通过启动数据批量启动容器/虚拟机时,能够极大地提高容器/虚拟机启动速度;另一方面,能够大幅减少对重复数据的传输,从而节约了网络带宽资源。
实施例三
图4为本发明提供的计算节点***的数据获取方法一个实施例的流程图。该计算节点***可以包括:至少两个缓存云盘和一个共享缓存单元,其中,多个缓存云盘中包括一个第一缓存云盘和至少一个第二缓存云盘。如图4所示,该计算节点***的数据获取方法包括如下步骤:
S401,第一缓存云盘在接收到读请求时,从存储集群中读取数据,并将该数据存储于共享缓存单元。
S402,共享缓存的单元利用切片位图标记该数据的存储状态和写状态。
S403,第二缓存云盘在接收到读请求时,从共享缓存单元中依据切片位图读取该数据。
在本发明实施例中,在每个缓存云盘对应一个容器(或,虚拟机,),用于根据对应的容器/虚拟机的读请求,向其发送相应的数据。当第一缓存云盘接收到来自容器/虚拟机的读请求时,从存储集群请求读取相应的数据,将该数据返回至对应的容器/虚拟机,并将数据存储于共享缓存单元中。共享缓存单元利用切片位图标记数据的存储状态和写状态。当第二缓存云盘接收到来自容器/虚拟机的读请求时,从共享缓存单元中依据切片位图读取该数据,并将数据返回至对应的容器/虚拟机。共享缓存单元设计为“一写多读”的模式,即,第一缓存云盘向共享缓存单元写数据,而各个第二缓存云盘从该共享缓存单元中读取数据。从而实现对存储集群的读取次数有多次降为一次。
本发明实施例提供的计算节点***的数据获取方法,通过在计算节点中的设置共享缓存,以将一个计算节点中的容器/虚拟机从存储集群读取数据的次数由多次降低为一次,一方面,能够减少对于存储集群的负荷,尤其适用于多个容器/虚拟机批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,提升了***性能,提高了容器/虚拟机的数据读取速度;另一方面,能够大幅减少对重复数据的传输,从而节约了网络带宽资源。
实施例四
图5为本发明提供的计算节点***的数据获取方法另一个实施例的流程图。如图5所示,在上述图4所示实施例的基础上,缓存云盘在接收到容器/虚拟机的写请求时,可以通过原始云盘向存储集群发送写请求,并记录该写请求对应的LBA。缓存云盘可以通过位图记录LBA。共享缓存单元可以被平均切分为多个缓存切片,缓存云盘则可以通过切片状态位图和切片数据位图来控制对共享缓存单元的各缓存切片中数据的更新和/或读取。在切片状态位图中,每一位可以用于标记对应的缓存切片是否正在更新数据;在切片数据位图中,每一位可以用于标记对应的缓存切片是否已经存有该数据。
另外,在缓存时间窗口内,缓存云盘在接收到目标LBA未被记录的读请求时,可以将共享缓存单元中的数据发送至容器/虚拟机。
具体地,本实施例提供的计算节点***的数据获取方法还可以包括以下步骤:
S501,缓存云盘检查某缓存切片在切片数据位图中对应的bit位,当该bit位为1时,执行步骤S502,否则,执行步骤S503。
本发明实施例所提供的计算节点***的数据获取方法可以应用于高并发的容器批量启动的应用场景中,此时,容器所需的数据则为用于启动容器的启动数据。在该应用场景下,缓存云盘读取共享缓存单元的某缓存切片中的启动数据时,首先检查该缓存切片在切片数据位图中对应的bit位。
S502,从共享缓存单元中读取数据,并结束流程。
S503,检查该缓存切片在切片状态位图中对应的bit位,当该bit位为1时,执行步骤S504;否则,执行步骤S507。
在本发明实施例中,当切片数据位图中对应的bit位为1时,表示该缓存切片写过数据,从共享缓存单元中读取数据,并结束流程。当切片数据位图中对应的bit位为0时,表示该缓存切片未写过数据,检查该缓存切片在切片状态位图中对应的bit位。
S504,放弃当前线程,进入等待状态,等待时间结束后,再次检查切片状态位图中对应的bit位是否变成0,如果是,则执行步骤S502,否则,执行步骤S505。
在本发明实施例中,当切片状态位图中对应的bit位为1时,表明该缓存切片正在更新数据,因此,放弃当前线程CPU,以便该线程执行其他IO任务,然后进行等待状态,等待时间一般可以设置为一个缓存切片中的数据从存储集群中的读取时间。
S505,判断等待总时间是否超时,如果是,则执行步骤S506,否则,继续执行步骤S504。
若切片状态位图中对应的bit位仍为1,表明该缓存切片仍在更新数据,则继续进入等待状态。
S506,从存储集群读取该缓存切片对应的数据,并结束流程。
在本发明实施例中,可以预先设置一个时间阈值,若等待总时间超过该时间阈值,则直接从存储集群读取该缓存切片对应的数据,并结束流程。
S507,将切片状态位图中对应的bit位设置为1。
若切片状态位图中对应的bit位变为0,则将切片状态位图中对应的bit位设置为1,并进行下述步骤S508及S509的缓存切片的更新操作。
S508,从存储集群读取该缓存切片对应的数据。
S509,将读取到的数据更新到共享缓存单元,并将切片数据位图中对应bit位修改为1。
S510,将切片状态位图中对应bit位为修改为0,并结束流程。
在状态切片更新结束后,将切片状态位图中对应bit位为修改为0,并结束流程。
本发明实施例提供的计算节点***的数据获取方法,通过在计算节点中的设置共享缓存单元,以将一个计算节点中的容器从存储集群读取数据的次数由多次降低为一次,一方面,能够减少对于存储集群的负荷,尤其适用于多个容器批量读取数据的高并发数据读取场景,能够避免多个计算节点同时从存储集群读取数据,因此,提升了***性能,提高了容器的读取速度,在通过启动数据批量启动容器时,能够极大地提高容器启动速度,在通过启动数据批量启动容器时,能够极大地提高容器启动速度;另一方面,能够大幅减少对重复数据的传输,从而节约了网络带宽资源。
实施例五
以上描述了计算节点***的内部功能和结构,该***可实现为一种电子设备。图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 (12)
1.一种计算节点***,其特征在于,包括:至少两个缓存云盘和一个共享缓存单元,其中,
第一缓存云盘从存储集群中读取数据,并将所述数据存储于所述共享缓存单元;
所述共享缓存单元利用切片位图标记所述数据的存储状态和写状态;
第二缓存云盘从所述共享缓存单元中依据所述切片位图读取所述数据。
2.根据权利要求1所述的计算节点***,其特征在于,所述缓存云盘还用于动态调度针对所述数据的读写请求。
3.根据权利要求2所述的计算节点***,其特征在于,所述缓存云盘用于通过原始云盘向所述存储集群发送所述写请求,以及用于记录所述写请求对应的逻辑磁盘地址。
4.根据权利要求3所述的计算节点***,其特征在于,所述缓存云盘还用于在缓存时间窗口内,将目标逻辑磁盘地址未被记录的读请求发送至所述共享缓存单元,以读取所述数据。
5.根据权利要求3所述的计算节点***,其特征在于,所述缓存云盘通过位图记录所述逻辑磁盘地址。
6.根据权利要求1所述的计算节点***,其特征在于,所述共享缓存单元被切分为多个缓存切片,所述缓存云盘通过切片状态位图和切片数据位图控制对所述共享缓存单元的各所述缓存切片中数据的更新和/或读取,
在所述切片状态位图中,每一位用于标记对应的缓存切片是否正在更新所述数据;
在所述切片数据位图中,每一位用于标记对应的缓存切片是否已经存有所述数据。
7.一种计算节点***的数据获取方法,其特征在于,所述计算节点***包括:至少两个缓存云盘和一个共享缓存单元,所述方法包括:
第一缓存云盘在接收到读请求时,从存储集群中读取数据,并将所述数据存储于所述共享缓存单元;
所述共享缓存单元利用切片位图标记所述数据的存储状态和写状态;
第二缓存云盘在接收到读请求时,从所述共享缓存单元中依据所述切片位图读取所述数据。
8.根据权利要求7所述的计算节点***的数据获取方法,其特征在于,还包括:
所述缓存云盘在接收到针对所述数据的写请求时,通过原始云盘向所述存储集群发送所述写请求,并记录所述写请求对应的逻辑磁盘地址。
9.根据权利要求8所述的计算节点***的数据获取方法,其特征在于,还包括:
在缓存时间窗口内,所述缓存云盘在接收到目标逻辑磁盘地址未被记录的读请求时,返回所述共享缓存单元中的所述数据。
10.根据权利要求9所述的计算节点***的数据获取方法,其特征在于,所述缓存云盘通过位图记录所述逻辑磁盘地址。
11.根据权利要求7所述的计算节点***的数据获取方法,其特征在于,所述共享缓存单元被切分为多个缓存切片,所述缓存云盘通过切片状态位图和切片数据位图控制对所述共享缓存单元的各所述缓存切片中数据的更新和/或读取,
在所述切片状态位图中,每一位用于标记对应的逻辑磁盘地址是否正在更新所述数据;
在所述切片数据位图中,每一位用于标记对应的逻辑磁盘地址是否已经存有所述数据。
12.一种电子设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,所述程序运行时执行权利要求7至11中任一所述的计算节点***的数据获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910012896.8A CN111414130B (zh) | 2019-01-07 | 2019-01-07 | 计算节点***及其数据获取方法以及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910012896.8A CN111414130B (zh) | 2019-01-07 | 2019-01-07 | 计算节点***及其数据获取方法以及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111414130A CN111414130A (zh) | 2020-07-14 |
CN111414130B true CN111414130B (zh) | 2023-04-28 |
Family
ID=71488917
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910012896.8A Active CN111414130B (zh) | 2019-01-07 | 2019-01-07 | 计算节点***及其数据获取方法以及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414130B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013097147A1 (zh) * | 2011-12-29 | 2013-07-04 | 华为技术有限公司 | 云计算***和管理云计算***中存储资源的方法 |
CN106095337A (zh) * | 2016-06-07 | 2016-11-09 | 国云科技股份有限公司 | 一种基于san网络存储的云盘快速共享方法 |
-
2019
- 2019-01-07 CN CN201910012896.8A patent/CN111414130B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013097147A1 (zh) * | 2011-12-29 | 2013-07-04 | 华为技术有限公司 | 云计算***和管理云计算***中存储资源的方法 |
CN106095337A (zh) * | 2016-06-07 | 2016-11-09 | 国云科技股份有限公司 | 一种基于san网络存储的云盘快速共享方法 |
Non-Patent Citations (2)
Title |
---|
T. Takada.Dependence-cache slicing: a program slicing method using lightweight dynamic information.IEEE.2002,全文. * |
黄裕 ; .基于分布式Redis集群的WEB共享管理研究.计算机与数字工程.2018,(第10期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111414130A (zh) | 2020-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8775737B2 (en) | Efficient cache management | |
US10853503B2 (en) | Selective encoding method and electronic device using same | |
CN100481028C (zh) | 一种利用缓存实现数据存储的方法和装置 | |
US20140013051A1 (en) | Data Storage Method and Data Storage Apparatus | |
US20120096225A1 (en) | Dynamic cache configuration using separate read and write caches | |
EP3451193B1 (en) | Electronic device and file data journaling method of electronic device | |
CN110554999B (zh) | 基于日志式文件***和闪存设备的冷热属性识别和分离方法、装置以及相关产品 | |
US20150261683A1 (en) | Cache memory control in electronic device | |
US11237761B2 (en) | Management of multiple physical function nonvolatile memory devices | |
US11132145B2 (en) | Techniques for reducing write amplification on solid state storage devices (SSDs) | |
CN112765084B (zh) | 计算机设备、虚拟化加速设备、数据传输方法及存储介质 | |
WO2023108989A1 (zh) | 数据访问方法、装置及非临时性计算机可读存储介质 | |
CN115639971A (zh) | 数据写入方法、装置、电子设备、存储介质及程序产品 | |
KR100917677B1 (ko) | 모바일 폰의 두 개의 상이한 프로세서들 간의 파일시스템들을 브릿징하기 위한 시스템 및 방법 | |
EP4044015A1 (en) | Data processing method and apparatus | |
CN115934002B (zh) | 固态硬盘的访问方法、固态硬盘、存储***及云服务器 | |
CN113127438B (zh) | 用于存储数据的方法、装置、服务器和介质 | |
CN111414130B (zh) | 计算节点***及其数据获取方法以及电子设备 | |
US9501414B2 (en) | Storage control device and storage control method for cache processing according to time zones | |
CN110018987B (zh) | 快照创建方法、装置及*** | |
CN111414127B (zh) | 计算集群***及其数据获取方法以及电子设备 | |
CN108132757B (zh) | 数据的存储方法、装置及电子设备 | |
CN110795318B (zh) | 数据处理方法和装置以及电子设备 | |
CN110727405A (zh) | 数据处理方法、装置、电子设备及计算机可读介质 | |
US11853593B2 (en) | Shared memory protection method for securing MMIO commands |
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 |
Effective date of registration: 20231204 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. |
|
TR01 | Transfer of patent right |