CN116932196A - 融合***的数据处理方法、装置、设备和*** - Google Patents
融合***的数据处理方法、装置、设备和*** Download PDFInfo
- Publication number
- CN116932196A CN116932196A CN202210633694.7A CN202210633694A CN116932196A CN 116932196 A CN116932196 A CN 116932196A CN 202210633694 A CN202210633694 A CN 202210633694A CN 116932196 A CN116932196 A CN 116932196A
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- storage
- node
- storage medium
- 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.)
- Pending
Links
- 230000004927 fusion Effects 0.000 title claims abstract description 23
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 238000012545 processing Methods 0.000 claims abstract description 127
- 238000005265 energy consumption Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 53
- 230000008569 process Effects 0.000 claims description 16
- 238000004891 communication Methods 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 abstract description 17
- 238000000926 separation method Methods 0.000 abstract description 9
- 230000005540 biological transmission Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 7
- 230000002688 persistence Effects 0.000 description 7
- 239000007787 solid Substances 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
公开了融合***的数据处理方法、装置、设备和***,涉及数据领域。该融合***包括计算节点和存储节点。计算节点通过网络与存储节点连接构建了存算分离架构。计算节点的存储介质和存储节点的存储介质经过统一编址构成全局内存池,即计算节点和存储节点共享的全局存储介质。对***进行读写操作时,获取到处理请求数据,根据内存操作指令对全局内存池进行处理请求数据的内存操作。从而,基于具有全局内存池的存算分离架构既确保计算和存储分别按需灵活扩展,又能够快速地对***进行读写操作,缩短了端到端的数据处理时长,提升了数据传输速度,降低了***能耗,改善了***性能瓶颈。
Description
本申请要求于2022年04月08日提交国家知识产权局、申请号为202210369243.7、申请名称为“一种计算和存储的融合***”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及数据领域,尤其涉及一种融合***的数据处理方法、装置、设备和***。
背景技术
存储和计算是分布式应用(如:大数据、数据库)的两大关键***,决定着***整体的性能与能耗。通常,计算和存储部署在同一节点,***性能较高,但存算比例确定,计算和存储不能分别灵活扩展。随后,存算分离架构应运而生,存储集群和计算集群通过网络连接,实现了计算和存储分别按需灵活扩展。但是,数据从计算侧到存储侧需要经过协议和格式等多种转化操作,导致数据处理时长较长以及***能耗较高,***性能成为了瓶颈。
发明内容
本申请提供了融合***的数据处理方法、装置、设备和***,由此缩短数据处理时长,提升数据传输速度,降低***能耗。
第一方面,提供了一种融合***的数据处理方法。该融合***包括计算节点和存储节点。计算节点通过网络与存储节点连接构建了存算分离架构。计算节点的存储介质和存储节点的存储介质经过统一编址构成全局内存池,即计算节点和存储节点共享的全局内存。对***进行读写操作时,获取到处理请求数据,根据内存操作指令对全局内存池进行处理请求数据的内存操作。
如此,由于内存操作指令是一种利用内存接口对内存进行内存操作的技术,根据内存操作指令对计算节点和存储节点共享的全局内存进行处理请求数据的内存操作,避免了数据从计算侧到存储侧需要经过协议和格式等多种转化操作,有效地简化了在计算节点和存储节点之间的数据搬移过程。从而,基于具有全局内存池的存算分离架构既确保计算和存储分别按需灵活扩展,又能够快速地对***进行读写操作,缩短了端到端的数据处理时长,提升了数据传输速度,降低了***能耗,改善了***性能瓶颈。
其中,内存操作指令包括内存分配、内存设置、内存复制、内存移动、内存释放和内存比较中至少一种。本申请实施例对全局内存池的存储介质的类型不予限定。全局内存池的存储介质包括内存、硬盘、内存服务器和存储级内存(storage-class-memory,SCM)。如此,在分布式处理***中引入包含多种存储介质的全局内存池,使得存储数据的存储介质具有更多的可能性,选择匹配的存储介质存储数据,实现能够快速地对***进行读写操作,提升了数据传输速度,缩短了端到端的数据处理时长。
在一种可能的实现方式中,根据内存操作指令对全局内存池进行处理请求数据的内存操作,包括:从全局内存池读取待处理数据;根据处理请求数据使用内存操作指令对待处理数据进行处理得到处理后数据,将处理后数据写入全局内存池中第一地址指示的存储空间。所述第一地址指示的存储空间包括计算节点的存储介质提供的存储空间和存储节点的存储介质提供的存储空间中一个。
计算节点可以根据存储策略确定第一地址指示的存储空间。比如,计算节点根据应用的访问特性确定第一地址指示的存储空间。
示例一,根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的存储空间。存储介质特征包括写时延、读时延、总存储容量、可用存储容量、存取速度、中央处理器CPU消耗、能耗比和可靠性中至少一个。从而,基于用户需求和***的存储介质特征对***进行读写操作,既增强了用户对***控制权限,提升了用户的***体验又扩展了***适用的应用场景。
示例二,根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的存储空间,包括:根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的计算节点的存储空间。从而将处理后数据存储到全局内存池中计算侧的本地内存,以便进行本地内存访问,有效地缩短了数据处理时长,提升了数据传输速度。
示例三,根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的存储空间,包括:根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的存储节点的存储空间。从而,将处理后数据存储到全局内存池中存储侧的内存,提升了数据的可靠性以及持久化。
在另一种可能的实现方式中,将处理后数据写入全局内存池中第一地址指示的存储空间之后,方法还包括:根据第一地址从全局内存池读取处理后数据。
例如,将全局内存池存储的数据下盘时,根据第一地址从全局内存池读取处理后数据,包括:需要将处理后数据进行持久化时,计算节点根据第一地址从全局内存池读取处理后数据,将处理后数据写入存储节点。
又如,融合***中计算节点使用处理后数据时,计算节点根据第一地址从全局内存池读取处理后数据。
在另一种可能的实现方式中,方法还包括:当根据第一地址从全局内存池读取处理后数据时,根据内存操作指令对全局内存池进行另一处理请求数据的内存操作。
从而,从应用的角度而言提升了数据处理的效率和数据传输速度,从硬件设备的角度而言提升了***资源的利用率。
在另一种可能的实现方式中,方法还包括:根据内存操作指令从存储节点预取数据,存储到全局内存池。从而,以便于计算节点能够快速地获取到数据,缩短了数据处理时长。
在另一种可能的实现方式中,方法还包括:根据数据冷热特性,基于内存操作指令在全局内存池与存储节点之间进行数据的内存操作。冷数据是指访问频次较低的数据。将冷数据从全局内存池搬移到存储节点,释放全局内存池的存储空间,提升全局内存池的存储空间的利用率。热数据是指访问频次较高的数据。将热数据从存储节点搬移到全局内存池,使计算节点尽快地获取到所需的数据,缩短了数据处理时长,减少频繁读写数据所占用的计算资源。
第二方面,提供了一种融合***的数据处理装置,所述装置包括用于执行第一方面或第一方面任一种可能设计中的融合***的数据处理方法的各个模块。
第三方面,提供一种计算设备,该计算设备包括至少一个处理器和存储器,存储器用于存储一组计算机指令;当处理器作为第一方面或第一方面任一种可能实现方式中的计算节点执行所述一组计算机指令时,执行第一方面或第一方面任一种可能实现方式中的融合***的数据处理方法的操作步骤。
第四方面,提供一种计算机可读存储介质,包括:计算机软件指令;当计算机软件指令在计算设备中运行时,使得计算设备执行如第一方面或第一方面任意一种可能的实现方式中所述方法的操作步骤。
第五方面,提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算设备执行如第一方面或第一方面任意一种可能的实现方式中所述方法的操作步骤。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
图1为本申请实施例提供的一种数据处理***的架构示意图;
图2为本申请实施例提供的一种数据分布式处理的示意图;
图3为本申请实施例提供的一种全局内存池的部署场景示意图;
图4为本申请实施例提供的一种三层结构的存储***示意图;
图5为本申请实施例提供的一种数据处理方法的过程示意图;
图6为本申请实施例提供的另一种数据处理方法的过程示意图;
图7为本申请实施例提供的一种基于全局内存池的Map任务和Reduce任务处理的过程示意图;
图8为本申请实施例提供的一种数据处理装置的结构示意图;
图9为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
随着互联网、物联网、网络带宽、智能终端和云计算等服务的发展,促使数据类型和数据规模以前所未有的速度发展,大数据、数据库、高性能计算(High PerformanceComputing,HPC)等应用随之产生,数据从单一处理对象转变为基础资源。
大数据是一种无法在一段时间范围内用常规软件工具进行捕捉、管理和处理的数据集合。由于大数据包含的大量数据间具有关联关系,利用数据分析的方法、模型或工具对大数据进行分析,挖掘大数据中的数据关系,利用大数据的数据关系进行预测或决策。例如,对用户购物趋势数据进行分析,向用户推送用户可能购买的物品,提高用户的购物体验。因此,大数据具有数据量大、数据增长速度快、数据类型多样和利用价值高等特征。
数据库是一个按数据结构来存储和管理数据的计算机软件***。也可理解为,数据库是一个计算机中用于存储和管理大量数据的集合,即电子化的文件柜。数据可以包括出行记录、消费记录、浏览的网页、发送的消息、图像、音乐和声音等等。
由于这些应用的数据量非常大,单一的计算节点无法满足计算需求。通常,采用分布式数据处理***对数据进行处理。
图1为本申请实施例提供的一种数据处理***的架构示意图。如图1所示,数据处理***100包括客户端110、计算集群120和存储集群130。
存储集群130包含至少两个存储节点131。一个存储节点131包括一个或多个控制器、网卡与多个硬盘。硬盘用于存储数据。硬盘可以是磁盘或者其他类型的存储介质,例如固态硬盘或者叠瓦式磁记录硬盘等。网卡用于与计算集群120包含的计算节点121通信。控制器用于根据计算节点121发送的读/写数据请求,往硬盘中写入数据或者从硬盘中读取数据。在读写数据的过程中,控制器需要将读/写数据请求中携带的地址转换为硬盘能够识别的地址。
客户端110通过网络140与计算集群120和存储集群130进行通信。例如客户端110通过网络140向计算集群120发送业务请求,请求计算集群120对业务请求包含的业务数据进行分布式处理。网络140可以是指企业内部网络(如:局域网((Local Area Network,LAN))或互联网(Internet)。
该数据处理***100支持运行大数据、数据库、高性能计算、人工智能、分布式存储和云原生等应用。可理解的,本申请实施例中业务数据包括大数据、数据库、高性能计算、人工智能(Artificial Intelligence,AI)、分布式存储和云原生等应用的数据。
在一些实施例中,存储集群130基于分布式文件***132和分布式数据库133存储和管理大量的数据。客户端110安装有客户端程序111,客户端110运行客户端程序111显示一种用户界面(user interface,UI),用户150操作用户界面访问分布式文件***132和分布式数据库133获取数据,指示计算集群120处理数据业务。客户端110可以是指连入网络140的计算机,也可称为工作站(workstation)。不同的客户端可以共享网络上的资源(如:计算资源、存储资源)。
计算集群120包含至少两个计算节点121,计算节点121之间可以相互通信。计算节点121是一种计算设备,如服务器、台式计算机或者存储阵列的控制器等。例如,客户端110提交的大数据业务可以称为作业(job)。作业可以切分为多个任务(task),由多个计算节点并行执行多个任务,所有任务结束时标志一个作业完成。任务一般是一个作业中对一部分数据或者分阶段的处理过程,所有任务经过调度并行或串行完成。在一些实施例中,计算集群120基于映射归约(MapReduce)模型134对大数据业务进行分布式处理。MapReduce模型是一种分布式编程模型,即将大数据业务进行分解为映射(map)任务和归约(reduce)任务,由多个计算节点121执行map任务,收集处理结果执行reduce任务。在一些实施例中,如图2所示,计算集群120包括控制节点122和至少两个计算节点121。控制节点和计算节点可以是独立的物理设备,则控制节点也可称为控制设备或命名节点。计算节点可以称为计算设备或数据节点。控制节点122用于管理分布式文件***的命名空间和客户端110对分布式文件***的访问。以及,控制节点122指示执行map任务的计算节点和执行reduce任务的计算节点。计算节点基于MapReduce模型134执行map任务得到的中间数据(或称为map数据或shuffle数据),将中间数据存储到全局内存池170。执行reduce任务的计算节点从全局内存池170读取中间数据。可选地,存储集群130在存储数据时也可以根据MapReduce模型134对数据进行处理后存储。
在另一些实施例中,***管理员160可以通过客户端110调用应用平台接口(application platform interface,API)112或命令行界面(command-line interface,CLI)接口113或图形用户界面(Graphical User Interface,GUI)访问分布式文件***132和分布式数据库133来配置***信息等,例如本申请实施例提供的为计算节点121和存储节点131配置的经过统一编址构成的全局内存池170的部署信息和存储策略。
本申请实施例提供一种存算融合架构与基于内存操作指令的数据处理方法,即基于计算节点的存储介质和所述存储节点的存储介质经过统一编址构成的全局内存池,根据内存操作指令对全局内存池进行处理请求数据的内存操作的技术。从而既解决了存算一体的分别扩容灵活性问题,又解决了存算分离的性能问题。本申请实施例所述的根据内存操作指令对全局内存池进行处理请求数据的内存操作包括对全局内存池的读操作和写操作。配置有全局内存池的数据处理***也可以称为融合***。内存操作指令是一种利用内存接口对存储介质进行内存操作的技术,由于将计算侧和存储侧两种不同的内存操作,基于内存操作指令通过全局统一编制的全局内存池进行计算和存储的融合,即根据内存操作指令对计算节点和存储节点共享的全局存储介质进行处理请求数据的内存操作,有效地简化了在计算节点和存储节点之间的数据搬移过程,避免了数据从计算侧到存储侧需要经过协议和格式等多种转化操作,从而,基于具有全局内存池的存算分离架构既确保计算和存储分别按需灵活扩展,又能够快速地对***进行读写操作,缩短了端到端的数据处理时长,提升了数据传输速度,降低了***能耗,改善了***性能瓶颈。
比如,格式转换包括序列化和反序列化。序列化是指将对象转换为字节序列的过程。反序列化是指将字节序列恢复为对象的过程。
需要说明的是,本申请实施例提供的全局内存池可以包括数据处理***中计算节点的存储介质和存储节点的存储介质。计算节点的存储介质包括计算节点内的本地存储介质和计算节点连接的扩展存储介质中至少一种。存储节点的存储介质包括存储节点内的本地存储介质和存储节点连接的扩展存储介质中至少一种。
例如,全局内存池包括计算节点内的本地存储介质和存储节点内的本地存储介质。
又如,全局内存池包括计算节点内的本地存储介质、计算节点连接的扩展存储介质,以及存储节点内的本地存储介质和存储节点连接的扩展存储介质中任意一种。
又如,全局内存池包括计算节点内的本地存储介质、计算节点连接的扩展存储介质、存储节点内的本地存储介质和存储节点连接的扩展存储介质。
示例地,如图3所示,为本申请实施例提供的一种全局内存池的部署场景示意图。全局内存池300包括N个计算节点中每个计算节点内的存储介质310、N个计算节点中每个计算节点连接的扩展存储介质320、M个存储节点中每个存储节点内的存储介质330和M个存储节点中每个存储节点连接的扩展存储介质340。
应理解,全局内存池的存储容量可以包括计算节点的存储介质中的部分存储容量和存储节点的存储介质中的部分存储容量。全局内存池是经过统一编址的计算节点和存储节点均可以访问的存储介质。全局内存池的存储容量可以通过大内存、分布式数据结构、数据缓存、元数据等内存接口供计算节点或存储节点使用。计算节点运行应用程序可以使用这些内存接口对全局内存池进行内存操作。如此,基于计算节点的存储介质的存储容量和存储节点的存储介质构建的全局内存池北向提供了统一的内存接口供计算节点使用,使计算节点使用统一的内存接口将数据写入全局内存池的计算节点提供的存储空间或存储节点提供的存储空间,实现基于内存操作指令的数据的计算和存储。
上述是以计算节点内的存储介质和存储节点内的存储介质构建全局内存池为例进行说明。全局内存池的部署方式可以灵活多变,本申请实施例不予限定。例如,全局内存池由存储节点的存储介质构建。例如高性能的存储层(Global Cache)。又如,全局内存池由计算节点的存储介质构建。例如高性能的存储层。使用单独的存储节点的存储介质或计算节点的存储介质构建全局内存池可以减少存储侧的存储资源的占用,以及提供更灵活的扩展方案。
需要说明的是,存储器是用于存储程序和各种数据的记忆器件。存储器的容量越大,存取速度越慢。反之,存储器的容量越小,存取速度越快。存取速度是指对存储器写入数据或读取数据时的数据传输速度。存取速度也可以称为读写速度。依据存储容量和存取速度可以将存储器划分为不同层级。
示例地,图4为本申请实施例提供的一种三层结构的存储***示意图。从第一层至第三层,存储容量逐级增加,存取速度逐级降低,成本逐级减少。如图4所示,第一层级包含位于中央处理器(central processing unit,CPU)内的寄存器411、一级缓存412、二级缓存413和三级缓存414。第二层级包含的存储器可以作为计算机***的主存储器。例如,动态随机存取存储器(Dynamic Random Access Memory,DRAM)421,双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)422,存储级内存(storage-class-memory,SCM)423。主存储器可以简称为主存或内存,即与CPU交换信息的存储器。第三层级包含的存储器可以作为计算机***的辅助存储器。例如,网络存储器431,固态驱动器(Solid State Disk或Solid State Drive,SSD)432,硬盘驱动器(Hard Disk Drive,HDD)433。辅助存储器可以简称为辅存或外存。相对主存,外存的存储容量大,存取速度慢。可见,距离CPU越近的存储器,容量越小、存取速度越快、带宽越大、延迟越低。因此,第三层级包含的存储器存储CPU不经常访问的数据,提高数据的可靠性。第二层级包含的存储器可以作为缓存设备,用于存储CPU经常访问的数据,显著地改善***的访问性能。
本申请实施例提供的全局内存池的存储介质包括内存(如:DRAM)、SSD、硬盘、内存服务器和SCM。
在一些实施例中,可以根据存储介质的类型设置全局内存池,即利用一种类型的存储介质构建一种内存池,不同类型的存储介质构建不同类型的全局内存池,使全局内存池应用于不同的场景,计算节点根据应用的访问特征选择存储介质,增强了用户对***控制权限,提升了用户的***体验又扩展了***适用的应用场景。例如,将计算节点中的DRAM和存储节点中的DRAM进行统一编址构成DRAM内存池。DRAM内存池用于对访问性能要求高,数据容量适中,无数据持久化诉求的应用场景。又如,将计算节点中的SCM和存储节点中的SCM进行统一编址构成SCM内存池。SCM内存池则用于对访问性能不敏感,数据容量大,对数据持久化有诉求的应用场景。
不同的存储介质具有不同的存储介质特征。存储介质特征包括写时延、读时延、总存储容量、可用存储容量、存取速度、CPU消耗、能耗比和可靠性中至少一个。写时延是指计算节点121将数据写入存储介质的时延。读时延是指计算节点121从存储介质读取数据的时延。存储容量是指存储介质的可存储数据的总存储容量。可用存储容量是指总存储容量减去已使用的存储容量的剩余存储容量。存取速度是指计算节点121对存储介质进行读写操作的速度。CPU消耗是指计算节点121向存储介质写入数据或从存储介质读取数据使用计算节点121的CPU的占用率。能耗比是指单位时间内所消耗的能量(如电能)。可靠性是指存储介质存储数据的持久程度。
下面将结合附图对本申请实施例提供的融合***的数据处理方法的实施方式进行详细描述。
图5为本申请实施例提供的一种融合***的数据处理方法的流程示意图。在这里以客户端110、计算集群120和存储集群130为例进行说明。计算集群120包括控制节点122和至少两个计算节点121,存储集群130包括至少两个存储节点131,控制节点122用于控制计算节点121执行数据分布式处理,计算节点121和存储节点131配置有全局内存池170,全局内存池170包括计算节点121的存储介质和存储节点131的存储介质。如图5所示,该方法包括以下步骤。
步骤510、计算节点121获取处理请求数据。
客户端110响应用户操作,向控制节点122发送数据业务的业务请求。控制节点122可以通过局域网或互联网接收客户端110发送的大数据业务的业务请求。业务请求可以包括业务标识和业务数据。业务标识用于唯一指示一个数据业务。业务数据可以是计算节点进行数据分布式处理的数据或指示待处理数据的标识数据。
用户操作可以是指用户操作大数据用户界面提交大数据业务的操作。大数据业务包括数据分析业务、数据查询业务和数据修改业务等。例如,大数据业务是指分析客户的个人数据和购买行为数据来描绘用户画像对客户进行分类,使得可以向特定客户推荐针对性的产品或优惠产品,提升客户满意度,稳固客户关系等。又如,大数据业务是指分析产品的历史销售量预测未来的销售量,发现销售量下降原因或销售量上升原因,推荐提升销售量的建设性建议。
用户操作还可以是指用户操作数据库用户界面提交数据库业务的操作等。数据库操作包括数据库创建、删除、修改和查询等。
计算节点121可以接收控制节点122发送的业务请求,将业务请求转换为符合内存操作指令操作规则的处理请求数据,以便于计算节点121根据内存操作指令对全局内存池进行处理请求数据的内存操作。
步骤520、计算节点121根据内存操作指令对全局内存池进行处理请求数据的内存操作。
内存操作指令也可以称为内存语义或内存操作函数。内存操作指令包括内存分配(malloc)、内存设置(memset)、内存复制(memcpy)、内存移动(memmove)、内存释放(memoryrelease)和内存比较(memcmp)中至少一种。
内存分配用于支持应用程序运行分配一段内存。
内存设置用于设置全局内存池的数据模式,例如初始化。
内存复制用于将源地址(source)指示的存储空间存储的数据复制到目的地址(destination)指示的存储空间。
内存移动用于将源地址(source)指示的存储空间存储的数据复制到目的地址(destination)指示的存储空间,并删除源地址(source)指示的存储空间存储的数据。
内存比较用于比较两个存储空间存储的数据是否相等。
内存释放用于释放内存中存储的数据,以提高***内存资源的利用率,进而提升***性能。
处理请求数据用于指示对待处理数据进行的操作。例如,处理请求数据指示获取产品A的第一季度销售量。待处理数据可以包括全年销售量。步骤520所包括的具体操作过程如下步骤521至步骤523的阐述。
步骤521、计算节点121读取待处理数据和应用数据。
待处理数据和应用数据可以存储在全局内存池、存储节点的存储介质或计算节点的存储介质等存储空间中。计算节点121可以从全局内存池、存储节点的存储介质或计算节点的存储介质读取待处理数据和应用数据。例如,计算节点121从本地内存中读取应用数据,从全局内存池中读取待处理数据。待处理数据可以是根据处理请求数据的指示需要处理的对象。应用数据包括应用程序和应用配置数据。
步骤522、计算节点121根据应用数据启动应用程序,根据处理请求数据使用内存操作指令对待处理数据进行处理得到处理后数据。
例如,假设应用数据包括数据库应用程序和数据库配置数据,处理请求数据用于指示对太字节(Terabyte,TB)的待处理数据进行排序。计算节点121根据数据库应用数据启动数据库,获取待处理数据并对待处理数据进行排序。
需要说明的是,计算节点121可以在获取处理请求数据之前,根据应用数据启动应用程序,也可以在获取处理请求数据之后,根据应用数据启动应用程序。
如此,基于内存操作指令的数据处理可以应用于数据处理的全生命周期,使用内存操作指令进行数据处理,实现去输入/输出(Input/Output,IO)化,以及数据端到端的极速访问,结合存算融合的全局内存池,避免执行数据搬移中的格式和协议转换,有效地降低了端到端的数据处理时长。
步骤523、计算节点121将处理后数据写入全局内存池中第一地址指示的存储空间。
计算节点121根据存储策略自动地从全局内存池中选择用于存储处理后数据的存储介质。存储策略包括应用的访问特征和全局内存池中存储介质特征等。第一地址指示的存储空间包括计算节点121的存储介质提供的存储空间和存储节点131的存储介质提供的存储空间中一个。
在一些实施例中,计算节点121根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的存储空间。用户需求用于指示与存储介质特征相关的需求。处理请求数据包括用户需求。存储介质特征包括写时延、读时延、总存储容量、可用存储容量、存取速度、中央处理器CPU消耗、能耗比和可靠性中至少一个。
例如,计算节点121配置有多种类型存储介质的存储介质特征。用户需求指示存取速度范围或者一个具体的存取速度,计算节点121从全局内存池中确定满足用户需求的存储介质。比如用户需求指示内存的存取速度。计算节点121从全局内存池中选取符合内存的存取速度的存储介质,比如内存、DRAM和SCM中至少一种。示例一,计算节点121根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的计算节点的存储空间,第一地址指示的计算节点的存储空间满足用户需求指示的存取速度。从而将处理后数据存储到全局内存池中计算侧的本地内存,以便进行本地内存访问,有效地缩短了数据处理时长,提升了数据传输速度。
又如,计算节点121配置有存储介质和客户等级的关联关系。用户需求指示第一客户等级。计算节点121根据第一客户等级从关联关系中确定与第一客户等级关联的存储介质,确定与第一客户等级关联的存储介质用于存储处理后数据。示例二,计算节点121根据用户需求和存储介质特征确定将处理后数据写入全局内存池中第一地址指示的存储节点的存储空间,第一地址指示的计算节点的存储空间满足用户需求指示的第一客户等级。
如此,计算节点121从全局内存池中选择存储处理后数据的存储介质时,基于用户对存取速度或可靠性等存储介质特征的用户需求,动态地选取满足用户需求的存储介质,确保数据处理的性能和可靠性的场景需求。
在另一些实施例中,计算节点121配置有依据存储介质特征确定的多种类型存储介质的优先级,根据存储策略指示的多种类型存储介质的优先级,确定用于存储处理后数据的存储介质。其中,多种类型存储介质的优先级可以是依据存储介质的存取速度确定的。比如内存的存取速度高于硬盘的存取速度,硬盘的存取速度高于扩展存储介质的存取速度。多种类型存储介质的优先级可以是依据部署模式的优先级确定的。比如本地存储介质的优先级高于扩展存储介质的优先级。多种类型存储介质的优先级可以是依据多种类型存储介质特征综合确定的。多种类型存储介质的优先级是依据部署模式(如:本地存储介质和扩展存储介质)的优先级确定的。对于同一种部署模式下的存储介质的优先级可以依据存储介质的存取速度确定的。
可选地,计算节点121还可以从满足用户需求的多种类型存储介质中选取可用存储容量大于阈值的存储介质作为存储处理后数据的存储介质。
计算节点121根据多种类型存储介质的优先级,从最高优先级的存储介质开始,判断最高优先级的存储介质的可用存储容量是否大于阈值,若最高优先级的存储介质的可用存储容量大于阈值,表示最高优先级的存储介质有多余的存储空间存储处理后数据,则选取该最高优先级的存储介质存储处理后数据;若最高优先级的存储介质的可用存储容量小于或等于阈值,表示最高优先级的存储介质没有多余的存储空间存储处理后数据,则判断次高优先级的存储介质的可用存储容量是否大于阈值,依次遍历多种类型存储介质,最终从多种类型存储介质中确定存储处理后数据的存储介质。
需要说明的是,在实际应用中,可以根据业务需求、场景需求或用户需求等自行设置存储策略,上述对存储策略的阐述只是举例说明。例如,存储策略还可以是指数据本地化偏好,即优先将处理后数据存储到全局内存池中本地存储介质。又如,存储策略还可以是指按照应用对性能和成本的权衡选择性能优先、存储容量优先、成本优先等。
在计算节点121使用存储策略选取存储处理后数据的存储介质之前,即执行步骤523之前,可以预先配置存储策略和多种类型存储介质的配置信息。
本申请实施例提供的存储策略可以适用于上述数据处理***100支持的至少一个应用,即大数据、数据库、高性能计算、人工智能、分布式存储和云原生。例如计算节点121可以在处理大数据业务或处理大数据业务中任务或处理***全局的任务中,选取用于存储中间数据的存储介质时使用存储策略。
需要说明的是,本申请实施例中计算节点121根据处理请求数据对全局内存池进行内存操作后,即将处理后数据写入全局内存池或从全局内存池读取数据后,表示本次处理请求结束。全局内存池提供了将数据异步写入到存储节点的持久化和容量层,以及从持久化和容量层预取和缓存的能力。随后,计算节点121或存储节点131还可以从全局内存池读取处理后数据。关于对全局内存池存储的数据的数据处理操作如下图6的阐述。图6为本申请实施例提供的另一种融合***的数据处理方法的流程示意图。
步骤610、计算节点121根据第一地址从全局内存池读取数据,对数据进行处理。
在计算节点执行任务需要全局内存池存储的数据时,计算节点可以从全局内存池读取相关数据。例如,计算节点121是执行reduce任务的计算节点。计算节点121根据第一地址从全局内存池读取执行reduce任务所需的处理后数据。计算节点121可以从第一地址控制节点122获取第一地址。
步骤620、计算节点121根据第一地址从全局内存池读取数据,将数据写入存储节点131。
在全局内存池存储的数据需要持久化,即将全局内存池存储的数据搬移到存储节点时,计算节点121可以从全局内存池读取相关数据,写入存储节点131。存储节点131根据内存操作指令将处理后数据写入存储节点131的存储介质。可选地,计算节点121还可以保存写入存储节点131的数据。
在另一些实施例中,计算节点121还可以执行步骤630,即根据内存操作指令从存储节点131预取数据,存储到全局内存池。从而,以便于计算节点121能够尽快地获取到数据,缩短了端到端的数据处理时长。
计算节点121还可以执行步骤640,即根据数据冷热特性,基于内存操作指令在全局内存池与存储节点之间进行数据的内存操作。
热数据是指访问频次比较多的数据。如在线类数据。冷数据是指访问频次比较少的数据。如企业备份数据、业务与操作日志数据、话单与统计数据。热数据因为访问频次需求大,效率要求高,所以就近计算和部署冷数据访问频次低,效率要求慢,可以做集中化部署。
本申请实施例在存储分离架构下构建了全局内存池,作为计算和存储统一的缓存层,全局内存池将存储和计算进行存算融合,物理分离的基础上实现逻辑融合,在这层中计算节点和存储节点采用统一内存语义进行数据交换与共享,从而避免了计算节点和存储节点之间反复的格式转换和协议转换等中间操作,达到极致地高性能与低能耗。
下面举例说明基于融合***的数据处理的过程。如图7所示,为本申请实施例提供的一种执行map任务和reduce任务的数据处理过程的示意图。
1)初始化阶段:①加载应用数据,即加载程序配置文件,启动应用程序。应用数据可以存储在非易失性内存或全局内存池中,计算节点将应用数据加载到计算节点的本地内存中。例如,计算节点采用直接内存访问(Direct Memory Access,DMA)方式将应用数据从非易失性内存加载到本地内存,或者通过在内存层级之上构建的虚拟文件***(VirtualFile System,VFS)或可移植操作***接口(Portable Operating System Interface,POSIX)文件***接口加载应用数据。②加载待处理数据,待处理数据可以存储在非易失性内存中,计算节点将待处理数据加载到计算节点的本地内存中。例如,计算节点根据内存操作指令从非易失性内存池中获取待处理数据加载到本地内存中,消除了文件***栈的访问开销。计算节点还可以采用远端直接内存访问(Remote Direct Memory Access,RDMA)获取存储在远端节点的待处理数据,实现高效地访问,减少了远端数据访问的CPU开销和网络协议栈开销。
2)数据处理阶段:③根据处理请求数据使用内存操作指令对待处理数据进行处理得到处理后数据,例如每个计算节点对处理后数据进行排序得到中间数据。计算节点根据处理后数据的数据量,从全局内存池中选择存储处理后数据的存储介质,例如将处理后数据存储到HBM、DRAM或者SCM。当全局内存池中的存储容量不足时,可以通过远端内存扩展或者内存盘扩展解决,即将处理后数据存储到其他存储介质。目的节点从源节点读取中间数据或者由源节点将中间数据写入到目的节点完成数据交换(shuffle)。如果全局内存池是由独立的存储介质(如:计算节点的存储介质和存储节点的存储介质)构建,源节点可以将中间数据写入到全局内存池中,再由目的节点从全局内存池中读取中间数据。④将排序结果进行合并。
3)持久化阶段:⑤测试报告和合并排序结果写入到本地的非易失性内存或全局内存池的本地内存,由全局内存池组件异步写入到存储节点的存储空间。
4)清理阶段:⑥释放本地内存或全局内存池。
可以理解的是,为了实现上述实施例中的功能,计算设备包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的单元及方法步骤,本申请能够以硬件或硬件和计算机软件相结合的形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用场景和设计约束条件。
上文中结合图1至图7,详细描述了根据本实施例所提供的融合***的数据处理方法,下面将结合图8,描述根据本实施例所提供的数据处理装置。
图8为本实施例提供的可能的数据处理装置的结构示意图。这些数据处理装置可以用于实现上述方法实施例中计算设备或计算节点的功能,因此也能实现上述方法实施例所具备的有益效果。在本实施例中,该数据处理装置可以是如图5所示的计算节点121,还可以是应用于服务器的模块(如芯片)。
如图8所示,数据处理装置800包括通信模块810、数据处理模块820和存储模块830。数据处理装置800用于实现上述图5中所示的方法实施例中计算节点121的功能。
通信模块810用于获取处理请求数据。
数据处理模块820,用于根据内存操作指令对全局内存池进行处理请求数据的内存操作。例如,数据处理模块820用于执行图5中步骤510和步骤520。
存储模块830用于存储内存操作指令,以便于数据处理模块820获取处理后数据。例如,通信模块810用于执行图5中S560。
数据处理模块820具体用于从全局内存池读取待处理数据和应用数据;根据所述处理请求数据使用所述内存操作指令对所述待处理数据进行处理得到处理后数据,将所述处理后数据写入所述全局内存池中第一地址指示的存储空间。
数据处理模块820还用于根据第一地址从全局内存池读取处理后数据。
数据处理模块820还用于根据所述内存操作指令从所述存储节点预取数据,存储到所述全局内存池。
数据处理模块820还用于根据数据冷热特性,基于所述内存操作指令在所述全局内存池与所述存储节点之间进行数据的内存操作。
应理解的是,本申请实施例的数据处理装置800可以通过专用集成电路(application-specific integrated circuit,ASIC)实现,或可编程逻辑器件(programmable logic device,PLD)实现,上述PLD可以是复杂程序逻辑器件(complexprogrammable logical device,CPLD),现场可编程门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。也可以通过软件实现图5或图6所示的数据处理方法时,及其各个模块也可以为软件模块,数据处理装置800及其各个模块也可以为软件模块。
根据本申请实施例的数据处理装置800可对应于执行本申请实施例中描述的方法,并且数据处理装置800中的各个单元的上述和其它操作和/或功能分别为了实现图5或图6中的各个方法的相应流程,为了简洁,在此不再赘述。
图9为本实施例提供的一种计算设备900的结构示意图。如图所示,计算设备900包括处理器910、总线920、存储器930、通信接口940和内存单元950(也可以称为主存(mainmemory)单元)。处理器910、存储器930、内存单元950和通信接口940通过总线920相连。
应理解,在本实施例中,处理器910可以是CPU,该处理器910还可以是其他通用处理器、数字信号处理器(digital signal processing,DSP)、ASIC、FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。
处理器还可以是图形处理器(graphics processing unit,GPU)、神经网络处理器(neural network processing unit,NPU)、微处理器、ASIC、或一个或多个用于控制本申请方案程序执行的集成电路。
通信接口940用于实现计算设备900与外部设备或器件的通信。在本实施例中,计算设备900用于实现图5所示的计算节点121的功能时,通信接口940用于获取处理请求数据,计算节点121根据内存操作指令对所述全局内存池进行所述处理请求数据的内存操作。
总线920可以包括一通路,用于在上述组件(如处理器910、内存单元950和存储器930)之间传送信息。总线920除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线920。总线920可以是快捷***部件互连标准(Peripheral Component Interconnect Express,PCIe)总线,或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unified bus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherent interconnect for accelerators,CCIX)等。总线920可以分为地址总线、数据总线、控制总线等。
作为一个示例,计算设备900可以包括多个处理器。处理器可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的计算单元。在本实施例中,计算设备900用于实现图5所示的计算节点121的功能时,处理器910可以根据内存操作指令对所述全局内存池进行所述处理请求数据的内存操作。
值得说明的是,图9中仅以计算设备900包括1个处理器910和1个存储器930为例,此处,处理器910和存储器930分别用于指示一类器件或设备,具体实施例中,可以根据业务需求确定每种类型的器件或设备的数量。
内存单元950可以对应上述方法实施例中用于存储处理后数据等信息的全局内存池。内存单元950可以是易失性存储器池或非易失性存储器池,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data date SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
存储器930可以对应上述方法实施例中用于存储计算机指令、内存操作指令、存储策略等信息的存储介质,例如,磁盘,如机械硬盘或固态硬盘。
上述计算设备900可以是一个通用设备或者是一个专用设备。例如,计算设备900可以是边缘设备(例如,携带具有处理能力芯片的盒子)等。可选地,计算设备900也可以是服务器或其他具有计算能力的设备。
应理解,根据本实施例的计算设备900可对应于本实施例中的数据处理装置800,并可以对应于执行根据图5或图6中任一方法中的相应主体,并且数据处理装置800中的各个模块的上述和其它操作和/或功能分别为了实现图5或图6中的各个方法的相应流程,为了简洁,在此不再赘述。
本实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于计算设备中。当然,处理器和存储介质也可以作为分立组件存在于计算设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,固态硬盘(solid state drive,SSD)。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (22)
1.一种融合***的数据处理方法,其特征在于,所述融合***包括计算节点和存储节点,所述计算节点通过网络与所述存储节点连接,所述计算节点的存储介质和所述存储节点的存储介质经过统一编址构成全局内存池;所述方法包括:
获取处理请求数据;
根据内存操作指令对所述全局内存池进行所述处理请求数据的内存操作。
2.根据权利要求1所述的方法,其特征在于,内存操作指令包括内存分配、内存设置、内存复制、内存移动、内存释放和内存比较中至少一种。
3.根据权利要求2所述的方法,其特征在于,所述全局内存池的存储介质包括内存、内存服务器和存储级内存SCM。
4.根据权利要求1-3中任一项所述的方法,其特征在于,根据内存操作指令对所述全局内存池进行所述处理请求数据的内存操作,包括:
从所述全局内存池读取待处理数据;
根据所述处理请求数据使用所述内存操作指令对所述待处理数据进行处理得到处理后数据,将所述处理后数据写入所述全局内存池中第一地址指示的存储空间。
5.根据权利要求4所述的方法,其特征在于,将所述处理后数据写入所述全局内存池中第一地址指示的存储空间,包括:
根据用户需求和存储介质特征确定将所述处理后数据写入所述全局内存池中第一地址指示的存储空间,所述存储介质特征包括写时延、读时延、总存储容量、可用存储容量、存取速度、中央处理器CPU消耗、能耗比和可靠性中至少一个。
6.根据权利要求4或5所述的方法,其特征在于,所述第一地址指示的存储空间包括所述计算节点的存储介质提供的存储空间和所述存储节点的存储介质提供的存储空间中一个。
7.根据权利要求4-6中任一项所述的方法,其特征在于,将所述处理后数据写入所述全局内存池中第一地址指示的存储空间之后,所述方法还包括:
根据所述第一地址从所述全局内存池读取所述处理后数据。
8.根据权利要求7所述的方法,其特征在于,根据所述第一地址从所述全局内存池读取所述处理后数据,包括:
根据所述第一地址从所述全局内存池读取所述处理后数据,将所述处理后数据写入所述存储节点。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述内存操作指令从所述存储节点预取数据,存储到所述全局内存池。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据数据冷热特性,基于所述内存操作指令在所述全局内存池与所述存储节点之间进行数据的内存操作。
11.一种融合***的数据处理装置,其特征在于,所述融合***包括计算节点和存储节点,所述计算节点通过网络与所述存储节点连接,所述计算节点的存储介质和所述存储节点的存储介质经过统一编址构成全局内存池;所述装置包括:
通信模块,用于获取处理请求数据;
数据处理模块,用于根据内存操作指令对所述全局内存池进行所述处理请求数据的内存操作。
12.根据权利要求11所述的装置,其特征在于,内存操作指令包括内存分配、内存设置、内存复制、内存移动、内存释放和内存比较中至少一种。
13.根据权利要求12所述的装置,其特征在于,所述全局内存池的存储介质包括内存、内存服务器和存储级内存SCM。
14.根据权利要求11-13中任一项所述的装置,其特征在于,所述数据处理模块根据内存操作指令对所述全局内存池进行所述处理请求数据的内存操作时,具体用于:
从所述全局内存池读取待处理数据;
根据所述处理请求数据使用所述内存操作指令对所述待处理数据进行处理得到处理后数据,将所述处理后数据写入所述全局内存池中第一地址指示的存储空间。
15.根据权利要求14所述的装置,其特征在于,所述数据处理模块将所述处理后数据写入所述全局内存池中第一地址指示的存储空间时,具体用于:
根据用户需求和存储介质特征确定将所述处理后数据写入所述全局内存池中第一地址指示的存储空间,所述存储介质特征包括写时延、读时延、总存储容量、可用存储容量、存取速度、中央处理器CPU消耗、能耗比和可靠性中至少一个。
16.根据权利要求14或15所述的装置,其特征在于,所述第一地址指示的存储空间包括所述计算节点的存储介质提供的存储空间和所述存储节点的存储介质提供的存储空间中一个。
17.根据权利要求14-16中任一项所述的装置,其特征在于,
所述数据处理模块,还用于根据所述第一地址从所述全局内存池读取所述处理后数据。
18.根据权利要求17所述的装置,其特征在于,所述数据处理模块根据所述第一地址从所述全局内存池读取所述处理后数据时,具体用于:
根据所述第一地址从所述全局内存池读取所述处理后数据,将所述处理后数据写入所述存储节点。
19.根据权利要求11所述的装置,其特征在于,
所述数据处理模块,还用于根据所述内存操作指令从所述存储节点预取数据,存储到所述全局内存池。
20.根据权利要求11所述的装置,其特征在于,
所述数据处理模块,还用于根据数据冷热特性,基于所述内存操作指令在所述全局内存池与所述存储节点之间进行数据的内存操作。
21.一种计算设备,其特征在于,所述计算设备包括存储器和至少一个处理器,所述存储器用于存储一组计算机指令;当所述处理器执行所述一组计算机指令时,执行上述权利要求1-10中任一项所述的方法的操作步骤。
22.一种***,其特征在于,所述***包括存储节点和计算节点,所述计算节点通过网络与所述存储节点连接,所述计算节点的存储介质和所述存储节点的存储介质经过统一编址构成全局内存池,所述计算节点用于执行上述权利要求1-10中任一项所述的方法的操作步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2023/087164 WO2023193814A1 (zh) | 2022-04-08 | 2023-04-08 | 融合***的数据处理方法、装置、设备和*** |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2022103692437 | 2022-04-08 | ||
CN202210369243 | 2022-04-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116932196A true CN116932196A (zh) | 2023-10-24 |
Family
ID=88374441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210633694.7A Pending CN116932196A (zh) | 2022-04-08 | 2022-06-06 | 融合***的数据处理方法、装置、设备和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116932196A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117932124A (zh) * | 2024-03-05 | 2024-04-26 | 广州通则康威科技股份有限公司 | 一种cpe设备的信息交互方法、装置、设备及存储介质 |
-
2022
- 2022-06-06 CN CN202210633694.7A patent/CN116932196A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117932124A (zh) * | 2024-03-05 | 2024-04-26 | 广州通则康威科技股份有限公司 | 一种cpe设备的信息交互方法、装置、设备及存储介质 |
CN117932124B (zh) * | 2024-03-05 | 2024-06-11 | 广州通则康威科技股份有限公司 | 一种cpe设备的信息交互方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110663019B (zh) | 用于叠瓦式磁记录(smr)的文件*** | |
JP5932043B2 (ja) | 不揮発性記憶装置セットの揮発メモリ表現 | |
JP6412244B2 (ja) | 負荷に基づく動的統合 | |
KR20170120489A (ko) | 통지와 함께 백그라운드 활동을 효율적으로 관리하는 ssd를 위한 메카니즘 | |
WO2019001020A1 (zh) | 基于分布式***的存储空间整理方法、装置及*** | |
CN104603739A (zh) | 对并行存储的块级访问 | |
US20210011634A1 (en) | Methods and systems for managing key-value solid state drives (kv ssds) | |
US20240220334A1 (en) | Data processing method in distributed system, and related system | |
WO2023193814A1 (zh) | 融合***的数据处理方法、装置、设备和*** | |
CN116932196A (zh) | 融合***的数据处理方法、装置、设备和*** | |
CN113110918A (zh) | 读写速率管控方法、装置、节点设备及存储介质 | |
CN110569112B (zh) | 日志数据写入方法及对象存储守护装置 | |
CN111930684A (zh) | 基于hdfs的小文件处理方法、装置、设备及存储介质 | |
CN116185300A (zh) | 一种在主机端基于深度学习完成固态硬盘高效垃圾回收的软硬件实现办法 | |
US11169720B1 (en) | System and method for creating on-demand virtual filesystem having virtual burst buffers created on the fly | |
CN116932156A (zh) | 一种任务处理方法、装置及*** | |
CN113918098A (zh) | 一种数据处理方法、装置、设备及介质 | |
CN115203133A (zh) | 数据处理方法、装置、归约服务器及映射服务器 | |
US20170060432A1 (en) | Scalable storage space allocation in distributed storage systems | |
CN115328387A (zh) | 一种数据压缩方法及装置 | |
WO2023066248A1 (zh) | 数据处理方法、装置、设备和*** | |
Lu et al. | Cost-aware software-defined hybrid object-based storage system | |
JP5048072B2 (ja) | 情報検索システム、情報検索方法及びプログラム | |
CN113535673A (zh) | 生成配置文件及数据处理的方法和装置 | |
CN116069739A (zh) | 数据处理方法、装置、设备和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |