CN113296718B - 数据处理方法以及装置 - Google Patents
数据处理方法以及装置 Download PDFInfo
- Publication number
- CN113296718B CN113296718B CN202110850461.8A CN202110850461A CN113296718B CN 113296718 B CN113296718 B CN 113296718B CN 202110850461 A CN202110850461 A CN 202110850461A CN 113296718 B CN113296718 B CN 113296718B
- Authority
- CN
- China
- Prior art keywords
- data
- index
- processing unit
- central processing
- network card
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/126—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine and has means for transferring I/O instructions and statuses between control unit and main processor
-
- 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/0638—Organizing or formatting or addressing of data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供数据处理方法以及装置,其中所述数据处理方法应用于服务器,所述服务器包括网卡、中央处理器以及存储介质,所述网卡对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;所述中央处理器解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;所述网卡基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据和索引数据的元数据存储至所述存储介质。
Description
技术领域
本说明书实施例涉及计算机技术领域,特别涉及一种数据处理方法。本说明书一个或者多个实施例同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质。
背景技术
大数据时代信息数据量出现爆发性增长,传统架构下的存储系统已经难以满足不同行业的信息系统在兼容性、统一管理、扩展性、安全性、差异化服务等方面的需求,在通用服务器在软件定义存储(SDS)领域广为使用的情况下,由于通用服务器并未考虑到存储IO(输入输出)处理的特殊需求,导致了在半导体存储性能越来越高的情况下,存储系统整体性能瓶颈点逐渐从传统硬盘向CPU和网络方向转移,其中,CPU的性能瓶颈越来越突出,较复杂的计算操作影响了CPU的处理速度,进而使得整个存储系统的性能下降,影响用户的存储效率。
发明内容
有鉴于此,本说明书实施例提供了一种数据处理方法。本说明书一个或者多个实施例同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种数据处理方法,应用于服务器,所述服务器包括网卡、中央处理器以及存储介质,
所述网卡对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;
所述中央处理器解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;
所述网卡基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述存储介质。
根据本说明书实施例的第二方面,提供了一种数据处理装置,应用于服务器,所述服务器包括网卡、中央处理器以及存储介质,
所述网卡,被配置为对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;
所述中央处理器,被配置为解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;
所述网卡,进一步被配置为基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述存储介质。
根据本说明书实施例的第三方面,提供了一种数据处理系统,包括:网卡、中央处理器以及存储介质,
所述网卡,被配置为对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;
所述中央处理器,被配置为解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;
所述网卡,进一步被配置为基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据和索引数据的元数据存储至所述存储介质。
根据本说明书实施例的第四方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,其中,所述处理器执行所述计算机可执行指令时实现所述数据处理方法的步骤。
根据本说明书实施例的第五方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现任意一项所述数据处理方法的步骤。
根据本说明书实施例的第六方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述数据处理方法的步骤。
本说明书一个实施例,通过所述网卡对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;所述中央处理器解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;所述网卡基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据和索引数据的元数据存储至所述存储介质。
具体的,通过网卡对初始数据进行分流处理,将控制数据以及索引数据存储至中央处理器,中央处理器基于控制数据确定对初始数据中的业务数据的执行算子,并将该执行算子下发至网卡中,进而由网卡对初始数据中的业务数据进行计算处理,并将处理后的业务数据直接从网卡中存储到存储介质,通过上述方式无需占用中央处理器的处理资源,将中央处理器所执行的计算操作迁移至网卡中执行,大幅度地减少中央处理器的计算工作,以实现数据存储加速的过程,提高系统的存储性能,增强了用户的存储效率。
附图说明
图1是本说明书一个实施例提供的一种数据处理方法的系统存储结构示意图;
图2是本说明书一个实施例提供的一种数据处理方法的SDS纯软件(无卸载)IO流的存储过程的结构示意图;
图3是本说明书一个实施例提供的一种数据处理方法的中央处理器挂载加速器的IO流的存储过程的结构示意图;
图4是本说明书一个实施例提供的一种数据处理方法的现有网卡上新增存储加速器的IO流的存储过程的结构示意图;
图5是本说明书一个实施例提供的一种数据处理方法的处理过程流程图;
图6是本说明书一个实施例提供的一种数据处理方法的一种新型存储IO路径卸载方法的IO流特征的结构示意图;
图7是本说明书一个实施例提供的一种数据处理方法的具体处理过程的结构示意图;
图8是本说明书一个实施例提供的一种数据处理装置的结构示意图;
图9是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
SDS(software defined storage,软件定义存储):以存储虚拟化的形式来分离存储硬件的存储管理软件。
SmartNIC(智能网卡):是通过FPGA协助CPU处理网络负载,编程网络接口功能。
SCM:Storage Class Memory,持久型内存。
NVMe:一种存储接口协议,通常为基于PCIe定义。
GC:Garbage Collect 垃圾回收。
EC(Errasure Code,纠删码):一种数据冗余算法,通常用于提升分布式存储数据可靠性
Accelerator:硬件加速器,通常由FPGA或ASIC硬件实现。
AHB:一种ARM CPU互连总线。
Meta data(元数据):用来描述数据的组织和控制数据,即描述数据的数据,有了元数据才能识别到数据的归属关系。
Index data:描述数据在内部的组织和分布关系的数据。
Host CPU:通常指一个系统的主中央处理器,在本实施例中指X86 CPU。
FPGA:大规模门电路可编程器件。
PCI-Express(peripheral component interconnect express):一种高速串行计算机扩展总线标准,PCIe属于高速串行点对点双通道高带宽传输,所连接的设备分配独享通道带宽,不共享总线带宽,主要支持主动电源管理,错误报告,端对端的可靠性传输。
固态硬盘(SSD,Solid State Drives),简称固盘:用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH芯片、DRAM芯片)组成。
通用服务器在软件定义存储(SDS)领域广为使用,由于通用服务器未考虑存储IO处理的特殊需求,对整体的存储系统并未专门优化。为了解决和提升闪存系统的性能,需要不断探索存储IO卸载和加速方法。基于此,本说明书实施例提供的数据处理方法,将考虑数据链路和控制链路进行分离、IO处理卸载至SmartNIC(智能网卡)或者是SmartNIC通过PCIe与SSD相连接等方式,解决CPU处理速度慢,存储系统性能低的问题。
软件定义存储通常给予通用服务器来实现,其主要组成部分可参见图1,图1示出了本说明书实施例提供的数据处理方法的系统存储结构示意图。
图1中A部分为网卡,B部分为中央处理器,C部分为存储介质,D部分为内存,其中,中央处理器分为第一中央处理器以及第二中央处理器,每个中央处理器均具有相应的存储介质以及内存,需要说明的是,第一中央处理器以及第二中央处理器之间通过QPI(快速通道互联)标准通道连接;实际应用中,网卡与中央处理器之间通过PCIe总线连接,中央处理器与存储介质之间也通过PCIe总线连接。
具体实施时,本说明书实施例提供的数据处理系统,包括:网卡、中央处理器以及存储介质,所述网卡,被配置为对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;所述中央处理器,被配置为解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;所述网卡,进一步被配置为基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据和索引数据的元数据存储至所述存储介质。
实际应用中,中央处理器通常1路或者2路居多,用于运行存储系统软件,进行IO处理和运算任务,随着半导体介质的性能突飞猛进,CPU的数量和处理速度往往决定了系统性能,即为主要瓶颈点之一;内存,通常挂载多个内存条,用于缓存用户读取或者写入的数据,以及用于对数据操作的索引和控制操作相关描述、原数据等,或者缓存对数据进行运算的过程数据,随着介质和网络带宽的迅速提升,内存通道带宽已经不足;网卡,通常是带双端口的以太网卡,用于存储服务器对外进行数据访问,由于RDMA高性能的应用,网络流量导致的数据移动和放置成为关注点,需要消耗大量的PCIe总线和内存通道带宽;存储介质,通常是直接通过PCIe接口挂接NVMe SSD盘,不再经过HBA进行转接挂接,SSD盘的数据读取/写入/GC回收消耗大量的PCIe总线和内存通道带宽。
基于上述系统存储结构示意图,本说明书实施例提供的数据处理方法的软件定义存储节点的IO处理路径可有两种方式,其中第一种存储方式为IO存储路径采用纯CPU软件处理,参见图2,图2示出了本说明书实施例提供的数据处理方法的SDS纯软件(无卸载)IO流的存储过程的结构示意图。
图2中A部分为网卡,B部分为中央处理器,C部分为内存,D部分为存储介质,实际应用中,首先,网卡A将接收到的数据通过IO流路径,经过中央处理器B送到内存C中,包括用户读取或者写入到数据已经控制流路径,其中,该数据是业务数据和控制数据混杂的;然后,中央处理器B运行SDS软件处理上述存储在内存C中的数据,剥离控制流和数据流,对其中的控制流以及数据索引进行加工和重组,并且SDS软件指示中央处理器的内核(包括使用CPUAVX指令)对数据进行CRC冗余校验计算、EC计算、压缩解压计算,使得数据达到存储项目所需要的可靠性和存储空间效率的要求,重组之后的控制流和索引数据以及经过中央处理器B计算之后新的业务数据写回到内存C中;最后,中央处理器B中的SDS软件指示中央处理器操作存储介质D,将内存C中的数据写入到存储介质中进行持久化存储,存储过程结束。
通过上述方式进行系统存储的过程,IO路径无卸载,整个过程都依赖于中央处理器内核进行处理,尤其是对数据进行EC、CRC、压缩解压计算,需要选用较高性能的中央处理器才能执行,但处理成本较高。并且控制流和数据流混杂,对内存操作频繁,内存通道成为瓶颈,带宽速度不高。
进一步地,第二种存储方式为在中央处理器上挂载存储专用加速器或者现有网卡上新增存储加速器功能,参见图3,图3示出了本说明书实施例提供的数据处理方法的中央处理器挂载加速器的IO流的存储过程的结构示意图。
图3中A部分为网卡,B部分为中央处理器,C部分为内存,D部分为存储介质,E部分为加速器,实际应用中,首先,网卡A将接收到的数据通过IO流路径,经过中央处理器B送到内存C中,包括用户读取或者写入数据到控制流路径,其中,该数据是业务数据和控制数据混杂的;然后,中央处理器B利用SDS软件处理过程中的数据计算过程拆分到加速器E上执行,拆分之后的中央处理器B只需要执行控制流和数据索引的处理,在加速器E计算完之后需要写回内存C中;最后,中央处理器B中的SDS软件指示中央处理器操作存储介质D,将内存C中的数据写入到存储介质中进行持久化存储,存储过程结束。
参见图4,图4示出了本说明书实施例提供的数据处理方法的现有网卡上新增存储加速器的IO流的存储过程的结构示意图。
图4中A部分为网卡,B部分为中央处理器,C部分为内存,D部分为存储介质,在网卡A中具有加速器,实际应用中,首先,网卡A将接收到的数据通过IO流路径,经过中央处理器B送到内存C中,包括用户读取或者写入到数据已经控制流路径,其中,该数据是业务数据和控制数据混杂的;然后,从内存C中获取控制流,将该数据计算过程在网卡A中的加速器上执行,在网卡A中的加速器计算完之后需要写回内存C中;最后,中央处理器B中的SDS软件指示中央处理器操作存储介质D,将内存C中的数据写入到存储介质中进行持久化存储,存储过程结束。
通过上述方式进行系统存储的过程,加速器对数据计算需要由中央处理器主动参与控制,增加了中央处理器与加速器之间的交互次数,相比时延在第一种存储方式的过程增加一定的时间。同时,在数据存储至内存中,不仅需要占用内存通道还需要经过PCIe总线,造成PCIe和内存总线的双向瓶颈,挤占了网卡带宽。
基于上述对系统存储方式的介绍,本说明书另一实施例提出一种新型的IO路径卸载方法,具体可表现为,在智能网卡上缓存输入数据,智能网卡计算处理和缓存结果数据,业务数据直接从智能网卡下盘。
具体的,将网卡升级为智能网卡,使得智能网卡能够直接挂载接内存和中央处理器内核,在智能网卡上新增存储语义卸载功能,数据从网络流经智能网卡时直接提取存储语义进行分流处理,业务数据直接缓存在智能网卡上的内存中,而不是中央处理器的内存上,而控制数据和索引数据被发送至中央处理器的内存上,进行进一步地处理。智能网卡上计算处理和缓存结果数据,并且计算用的算子可FPGA编程并由中央处理器定义和下发,智能网卡具备可编程硬件电路FPGA器件,中央处理器与智能网卡通过PCIe专用接口连接,存储加速如EC、CRC、压缩解压所需的数据描述和运算操作描述信息,由中央处理器上的SDS软件下发,智能网卡使用FPGA对自身内存上缓存的数据进行计算和结果进行存取,中央处理器通过拉取计算结果并进行可编排的下一步操作。业务数据在中央处理器上SDS软件控制下直接从智能网卡内存中下盘,无需再经过中央处理器的内存,索引数据和元数据从中央处理器的内存上写入存储介质中。
基于此,在本说明书中,提供了一种数据处理方法,本说明书同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
参见图5,图5示出了根据本说明书一个实施例提供的一种数据处理方法的处理过程流程图,具体包括以下步骤。
步骤502:所述网卡对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器。
其中,初始数据可以理解为从外部获取的数据,需要存储至存储介质的数据,那么,在该初始数据存储至存储介质之前,需要对该初始数据进行进一步地处理,将处理后的初始数据存储至存储介质。
其中,初始数据的控制数据可以理解为对初始数据应进行如何计算处理的数据,索引数据可以理解为初始数据对应的索引,业务数据可以理解为初始数据中实际描述数据内容的数据。
具体的,为了实现将对控制数据的计算处理在网卡中应用,网卡可将接收到的初始数据进行分流处理,将接收到的初始数据进行剥离,确定初始数据对应的控制数据、索引数据以及业务数据,同时将初始数据的控制数据以及索引数据发送至中央处理器。
实际应用中,网卡接收数据可通过网络接口进行处理,才能够对获取到的初始数据进行分流处理;具体的,所述网卡对接收的初始数据进行分流处理之前,还包括:
所述网卡通过网络接口接收原始数据,并对所述原始数据进行网络协议管理与控制,确定初始数据。
其中,所述网络接口可以设置在网卡中的网络接口单元,比如,RNIC网络接口单元。
具体实施时,原始数据从主机进入到网卡中,首先经过RNIC网络接口单元,该接口单元会处理网络相关的协议和控制,比如以太网报文如RoCEv2、TCP/UDP等,进而在网卡中确定初始数据,但经过处理后的数据流仍然是业务数据和存储控制数据混杂。
本说明书实施例提供的数据处理方法,通过网络接口将接收的数据进行网络协议管理与控制,实现对数据的统一格式化处理,进而能够便于后续对初始数据进行存储和处理。
进一步地,网卡对接收到的初始数据的分流处理,采用的数据解析器进行解析,确定存储语义规则;具体的,所述网卡对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,包括:
所述网卡的数据解析器对接收的初始数据进行解析,获得存储语义规则;
基于所述存储语义规则确定所述初始数据的请求边界信息、数据边界信息以及响应边界信息;
基于所述请求边界信息以及所述响应边界信息确定所述初始数据的控制数据,并基于所述数据边界信息确定所述初始数据的索引数据以及业务数据。
其中,数据解析器可以理解为一个具有正则表达式的引擎,能够解析存储语义规则的解析器。
其中,存储语义规则可以理解为对初始数据所适用的存储语义规则。
其中,初始数据的请求边界信息、数据边界信息以及响应边界信息可以理解为识别数据流中的request边界信息、data边界和response边界等信息。
实际应用中,网卡中的数据解析器对接收的初始数据进行解析,解析出存储语义规则,进而识别出数据流中的request边界信息、data边界和response边界等信息,并将request和response等信息和IO上下文组装成控制数据送给中央处理器做下一步处理,且基于data边界和response边界信息确定初始数据的索引数据以及业务数据。
本说明书实施例提供的数据处理方法,通过网卡中的存储协议解析器,实现业务数据与控制数据分离,减少数据的无效传输,也便于后续对业务数据的计算操作拆分到网卡中做进一步地处理,以减轻中央处理器的处理负担,实现中央处理器的通过卸载处理进程,加速处理效率。
需要说明的是,通过上述步骤将控制数据和索引数据发送至中央处理器之后,还将网卡确定的业务数据直接缓存在网卡的内存中,其目的是为了对业务数据进行核验,以确定业务数据是否可能存在数据损坏,数据丢包等问题;具体的,所述网卡基于所述数据执行算子对所述业务数据进行计算之前,还包括:
所述网卡的数据解析器将所述业务数据进行缓存,并基于所述控制数据对所述业务数据进行核验,并将获得的核验结果发送至所述中央处理器。
实际应用中,网卡中的数据解析器可以DMA方式直接缓存到网卡的内存中,并根据控制数据进行CRC校验计算和比对,以此判断数据是否完整和可靠,确认业务数据是否发生数据损坏或者数据丢包的现象,随后,可将数据校验结果送给中央处理器。
本说明实施例提供的数据处理方法,通过对业务数据提前进行核验,确定业务数据是否发生异常现象,并将核验结果发送至中央处理器,使得中央处理器在确定业务数据并未发生异常现象之后,才能够对业务数据对应的控制数据进行后续的处理,便于后续继续对业务数据进一步计算,存储至存储介质中,增强数据存储的准确性。
步骤504:所述中央处理器解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质。
其中,数据执行算子可以理解为对业务数据具体执行计算的内容,即对数据进行计算(算法)或移动(操作)的一种处理逻辑,比如业务数据需要做冗余操作计算、做压缩或解压计算等执行操作,由于可编程性,算子可以在同一个硬件上进行重载适用,如FPGA。
实际应用中,中央处理器可对存储在中央处理器对应地内存中获取控制数据,并根据控制数据确定对应的数据执行算子,且将确定好的数据执行算子下发至网卡;中央处理器将数据执行算子下发至网卡的目的是便于后续对业务数据的具体操作,同时,也会对存储在中央处理器对应的内存中的索引数据进行处理,将处理后的索引数据存储至存储介质中。
进一步地,所述中央处理器解析所述控制数据,确定所述控制数据对应的数据执行算子,包括:
所述中央处理器通过软件处理模块解析所述控制数据,确定所述控制数据的元数据、索引数据和配置信息数据;
对所述控制数据的元数据、索引数据和配置信息数据进行索引匹配,并对匹配后的所述控制数据的元数据、索引数据和配置信息数据进行索引重组,确定所述控制数据对应的数据执行算子。
其中,软件处理模块可以理解为运行在中央处理器的SDS软件。
实际应用中,中央处理器通过运行的SDS软件获取的控制数据,并对控制数据进行解析确定控制数据的元数据、索引数据和配置信息数据,对其中的元数据、索引数据和配置信息书进行索引匹配,该索引操作的目的是重新匹配适合分布式节点的下盘索引信息,其中,索引操作主要有索引聚合、索引查找或者索引切分等操作,在执行索引匹配之后,对匹配后的控制数据的元数据、索引数据和配置信息数据进行索引重组,进而确定控制数据对应的数据执行算子,即产生新的落盘IO描述。
本说明书实施例提供的数据处理方法,通过中央处理器对控制数据进行解析,以及对控制数据的元数据、索引数据和配置信息数据进行索引操作,进而确定控制数据对应的数据执行算子,便于后续将数据执行算子下发至网卡,进而网卡对业务数据进行计算,减少了中央处理器的处理操作,避免了中央处理器对业务数据进行直接CRC阶段或者拷贝等操作,占用中央处理器的处理资源。
此外,本说明书实施例提供的数据处理方法,中央处理器除了对控制数据进行解析之外,还可对初始数据的索引数据进行处理,并将索引数据以及索引数据的元数据存储至存储介质中;具体的,所述对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质,包括:
所述中央处理器通过软件处理模块对所述初始数据的索引数据进行索引匹配;
对匹配后的所述索引数据进行索引重组,确定所述初始数据的索引数据以及所述索引数据的元数据;
将所述初始数据的索引数据以及所述索引数据的元数据存储至存储介质。
其中,索引数据的元数据可以理解为描述索引数据状态的数据。
实际应用中,中央处理器在接收到网卡发送的初始数据的控制数据和索引数据之后,中央处理器通过软件处理模块对索引数据进行索引匹配,对匹配后的索引数据再次进行索引重组,确定初始数据的索引数据以及索引数据的元数据,最后,将初始数据的索引数据以及索引数据的元数据存储至存储介质。
需要说明的是,索引匹配和索引重组的具体操作过程可参见上述实施例的描述,本实施例在此不做过多赘述。
本说明书实施例提供的数据处理方法,通过中央处理器对索引数据进行处理,确定索引数据对应的元数据,将该索引数据以及索引数据的元数据均存储至存储介质中,保证了数据存储的完整性,便于后续可基于索引数据对初始数据进行快速地查找。
步骤506:所述网卡基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据和索引数据的元数据存储至所述存储介质。
具体的,网卡在接收到中央处理器下发的数据执行算子之后,网卡可基于该数据执行算子对缓存在网卡内存中的业务数据进行计算处理,以获得计算后的业务数据,该业务数据的索引数据以及该业务数据和索引数据的元数据,并将上述三种数据存储至存储介质中。
为了便于网卡对业务数据进行计算,减少中央处理器执行该计算步骤的处理资源,在该网卡中可配置算子重载器执行计算过程;具体的,所述网卡基于所述数据执行算子对所述业务数据进行计算,包括:
所述网卡的计算模块获取所述初始数据的业务数据,并利用硬件装置对所述数据执行算子进行编排,获得目标数据执行算子,且基于所述目标数据执行算子对所述业务数据进行计算。
其中,网卡的计算模块可以理解为算子重载器(Accelerator),该算子重载器是一个可编程平台,其硬件电路可以通过局部和动态重配置技术实现算子灵活切换,存储卸载算子在中央处理器通过升级下发到网卡。
其中,硬件装置可以理解为FPGA硬件电路,协助算子重载器进行EC、CRC计算或者压缩等操作,避开了中央处理器内存通道带宽的瓶颈,降低了中央处理器的处理开销。
实际应用中,网卡中的算子重载器从网卡内存中获取到初始数据的业务数据之后,可通过FPGA硬件电路对数据执行算子进行编排,获得目标数据执行算子,比如数据执行算子可进行EC、CRC计算或者压缩等操作,对算子进行组合,可自动完成编排操作,比如,编排的结果为先进行EC计算,然后对EC计算的结果自动添加CRC计算校验信息,进而确定目标数据执行算子;最后,其操作结果可以连同业务数据和元数据一起通过网路接口发送至分布式节点中的其他节点存储介质中。
本说明书实施例提供的数据处理方法,通过网卡中配置算子重载器执行原中央处理器所执行的计算操作,不仅可以减轻中央处理器的处理压力,也使得网卡在处理业务数据的过程变得简便,减少了带宽的占用,也提高了数据存储处理效率。
在网卡计算后的业务数据进行处理之后,还可将处理后的数据分发至其他分布式节点的存储介质中,因此,网卡还需确定将该数据存储的目标节点;具体的,所述将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述存储介质,包括:
所述网卡的计算模块基于所述数据执行算子确定数据存储的目标节点,并根据所述目标节点确定目标存储介质;
将所述计算模块计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述目标存储介质。
具体的,网卡的算子重载器基于接收到的数据执行算子,可确定出数据存储的目标节点,基于该目标节点确定对应的目标存储介质,在算子重载器对业务数据进行计算之后,可将计算后的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据通过网络接口发送至目标存储介质中进行存储。
实际应用中,网卡会判断目标节点ID是否是本节点,若是本节点,则可直接进入到存储引擎进行下一步的处理流程,并调用数据入盘的接口写入到存储介质中,目标节点在接收到网络接口发送过来的请求之后,也会进入到存储引擎处理流程中,然后调用入盘接口写入到存储介质中,该IO处理结束。
本说明书实施例提供的数据处理方法,通过确定目标存储介质,将计算后的数据直接通过网络接口存储至目标存储介质中,避免了PCIe总线的瓶颈,带来了较高性能提升,经过此次卸载后,中央处理器单节点带宽可迅速提升。
需要说明的是,在本说明书实施例提供的数据处理方法中,还包括:
所述网卡的网络接口、数据解析器、计算模块以及存储单元之间,通过预设性能总线相互通信连接;
所述网卡、所述中央处理器以及所述存储介质之间,通过预设应用总线相互通信连接。
其中,预设性能总线可以理解为AHB总线,预设应用总线可以理解为PCIe总线。
实际应用中,网卡内部包含网络接口、FPGA可编程单元、数据解析器、计算模块以及存储单元,上述模块之间以AHB总线相连接,网卡通过PCIe总线与中央处理器连接;存储介质提供持久化存储功能,以PCIe接口与中央处理器相连(或者先连接到PCIe总线转换上,然后再连接到中央处理器中);中央处理器可采用单路或者双路的中央处理器。
本说明书实施例提供的数据处理方法,通过上述连接通道进行相互通信连接,选择适合的通信装置完成各个组件间的通信连接,可加速各个组件之间的传输速度,提高系统存储效率。
具体的,本说明书另一实施例提供的数据处理方法,通过对一种新型存储IO路径卸载方法的IO流特征进行详细说明,可参见图6,图6示出了本说明书实施例提供的数据处理方法的一种新型存储IO路径卸载方法的IO流特征的结构示意图。
图6中的A为智能网卡,其中,智能网卡包括解析处理器、网络接口、内存、加速器,B为中央处理器,C为内存,D为存储介质,实际应用中,数据流从主机通过网络接口进入智能网卡之后,通过解析处理器,将数据流进行解析,获得业务数据、控制数据以及索引数据,将业务数据缓存至智能网卡A的内存中,将控制数据以及索引数据发送至中央处理器B的内存C中,中央处理器B利用SDS软件对控制数据进行解析处理,获得数据执行算子并下发至智能网卡A的加速器中,同时,中央处理器B从内存 C中获取索引数据进行处理,获得处理后的索引数据以及该索引数据对应的元数据,在智能网卡A的加速器中根据数据执行算子对业务数据进行计算,将计算后的业务数据,业务数据的索引数据,以及业务数据的索引数据的元数据直接从中央处理器B中存储至存储介质D中,并且,将内存C中处理后的索引数据以及该索引数据对应的元数据也存储至存储介质D。
进一步地,参见图7,图7示出了本说明书实施例提供的数据处理方法的具体处理过程的结构示意图。
图7中A部分为智能网卡,B部分为中央处理器,C部分为存储介质,其中,智能网卡A中包括网络接口、存储协议解析器、算子重载器以及业务数据流,实际应用中,网路数据包通过网络接口进入到智能网卡A中,并通过存储协议解析器对网络数据包进行剥离,获得控制数据、业务数据以及索引数据,将业务数据流缓存在智能网卡A的内存中,将控制数据以及索引数据传输至中央处理器B中,中央处理器B对控制数据中的元数据、索引数据和配置信息数据进行索引匹配,将匹配后的数据进行索引重组,其中,所述索引匹配操作包括索引聚合、索引查找或者索引切分操作,中央处理器B基于索引重组后的数据确定数据执行算子下发至智能网卡A的算子重载器,算子重载器基于数据执行算子对业务数据进行处理,将处理后的业务数据、业务数据的索引数据以及业务数据的索引数据的元数据存储至存储介质C中;中央处理器B基于索引重组后的数据确定索引数据、索引数据对应的元数据,并将该索引数据以及索引数据对应的元数据存储至存储介质C中。
综上,本说明书实施例提供的数据处理方法,定义了一种新的存储IO加速方法,实现了将对数据的计算操作拆分到智能网卡上处理,控制部分留在中央处理器处理,即获得了硬件装置并行加速收益,又保留了控制路径的灵活性;在智能网卡中通过算子重载器对数据进行操作,和对数据索引以及目标节点ID信息进行处理,并对执行算子进行自动编排,完成自动进行RDMA远程网络的发送操作,中央处理器可一步操作完成,无需对智能网卡进行多次操作,进而解决了通用服务器用作存储节点的性能瓶颈问题。
与上述方法实施例相对应,本说明书还提供了数据处理装置实施例,图8示出了本说明书一个实施例提供的一种数据处理装置的结构示意图。如图8所示,该装置包括:网卡802、中央处理器804以及存储介质806,
所述网卡802,被配置为对接收的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;
所述中央处理器804,被配置为解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质806;
所述网卡802,进一步被配置为基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据和索引数据的元数据存储至所述存储介质806。
可选地,所述网卡802,进一步配置为:
所述网卡的数据解析器对接收的初始数据进行解析,获得存储语义规则;
基于所述存储语义规则确定所述初始数据的请求边界信息、数据边界信息以及响应边界信息;
基于所述请求边界信息以及所述响应边界信息确定所述初始数据的控制数据,并基于所述数据边界信息确定所述初始数据的索引数据以及业务数据。
可选地,所述中央处理器804,进一步配置为:
所述中央处理器通过软件处理模块解析所述控制数据,确定所述控制数据的元数据、索引数据和配置信息数据;
对所述控制数据的元数据、索引数据和配置信息数据进行索引匹配,并对匹配后的所述控制数据的元数据、索引数据和配置信息数据进行索引重组,确定所述控制数据对应的数据执行算子。
可选地,所述中央处理器804,进一步配置为:
所述中央处理器通过软件处理模块对所述初始数据的索引数据进行索引匹配;
对匹配后的所述索引数据进行索引重组,确定所述初始数据的索引数据以及所述索引数据的元数据;
将所述初始数据的索引数据以及所述索引数据的元数据存储至存储介质。
可选地,所述网卡的计算模块,被配置为:
获取所述初始数据的业务数据,并利用硬件装置对所述数据执行算子进行编排,获得目标数据执行算子,且基于所述目标数据执行算子对所述业务数据进行计算。
可选地,所述网卡的计算模块,进一步配置为:
基于所述数据执行算子确定数据存储的目标节点,并根据所述目标节点确定目标存储介质;
将所述计算模块计算后确定的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述目标存储介质。
可选地,所述装置,还包括:
所述网卡通过网络接口接收原始数据,并对所述原始数据进行网络协议管理与控制,确定初始数据。
可选地,所述网卡的数据解析器,被配置为:
将所述业务数据进行缓存,并基于所述控制数据对所述业务数据进行核验,并将获得的核验结果发送至所述中央处理器。
可选地,所述装置,还包括:
所述网卡的网络接口、数据解析器、计算模块以及存储单元之间,通过预设性能总线相互通信连接;
所述网卡、所述中央处理器以及所述存储介质之间,通过预设应用总线相互通信连接。
本说明书实施例提供的数据处理装置,通过网卡对初始数据进行分流处理,将控制数据以及索引数据存储至中央处理器,中央处理器基于控制数据确定对初始数据中的业务数据的执行算子,并将该执行算子下发至网卡中,进而由网卡对初始数据中的业务数据进行计算处理,并将处理后的业务数据直接从网卡中存储到存储介质,通过上述方式无需占用中央处理器的处理资源,将中央处理器所执行的计算操作迁移至网卡中执行,大幅度地减少中央处理器的计算工作,以实现数据存储加速的过程,提高系统的存储性能,增强了用户的存储效率。
上述为本实施例的一种数据处理装置的示意性方案。需要说明的是,该数据处理装置的技术方案与上述的数据处理方法的技术方案属于同一构思,数据处理装置的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
图9示出了根据本说明书一个实施例提供的一种计算设备900的结构框图。该计算设备900的部件包括但不限于存储器910和处理器920。处理器920与存储器910通过总线930相连接,数据库950用于保存数据。
计算设备900还包括接入设备940,接入设备940使得计算设备900能够经由一个或多个网络960通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备940可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备900的上述部件以及图9中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图9所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备900可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备900还可以是移动式或静止式的服务器。
其中,处理器920用于执行如下计算机可执行指令,所述处理器用于执行所述计算机可执行指令,其中,所述处理器执行所述计算机可执行指令时实现所述数据处理方法的步骤。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的数据处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现所述数据处理方法的步骤。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述数据处理方法的步骤。
上述为本实施例的一种计算机程序的示意性方案。需要说明的是,该计算机程序的技术方案与上述的数据处理方法的技术方案属于同一构思,计算机程序的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书实施例并不受所描述的动作顺序的限制,因为依据本说明书实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (13)
1.一种数据处理方法,应用于服务器,所述服务器包括网卡、中央处理器以及存储介质,其中,所述网卡包括网络接口、数据解析器、计算模块以及存储单元,
所述数据解析器对基于所述网络接口确定的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;
所述中央处理器解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;
所述计算模块基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的存储在所述存储单元中的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述存储介质。
2.根据权利要求1所述的数据处理方法,所述数据解析器对基于所述网络接口确定的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,包括:
所述数据解析器对基于所述网络接口确定的初始数据进行解析,获得存储语义规则;
基于所述存储语义规则确定所述初始数据的请求边界信息、数据边界信息以及响应边界信息;
基于所述请求边界信息以及所述响应边界信息确定所述初始数据的控制数据,并基于所述数据边界信息确定所述初始数据的索引数据以及业务数据。
3.根据权利要求1或2所述的数据处理方法,所述中央处理器解析所述控制数据,确定所述控制数据对应的数据执行算子,包括:
所述中央处理器通过软件处理模块解析所述控制数据,确定所述控制数据的元数据、索引数据和配置信息数据;
对所述控制数据的元数据、索引数据和配置信息数据进行索引匹配,并对匹配后的所述控制数据的元数据、索引数据和配置信息数据进行索引重组,确定所述控制数据对应的数据执行算子。
4.根据权利要求3所述的数据处理方法,所述对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质,包括:
所述中央处理器通过软件处理模块对所述初始数据的索引数据进行索引匹配;
对匹配后的所述索引数据进行索引重组,确定所述初始数据的索引数据以及所述索引数据的元数据;
将所述初始数据的索引数据以及所述索引数据的元数据存储至存储介质。
5.根据权利要求4所述的数据处理方法,所述计算模块基于所述数据执行算子对所述业务数据进行计算,包括:
所述计算模块获取所述初始数据的业务数据,并利用硬件装置对所述数据执行算子进行编排,获得目标数据执行算子,且基于所述目标数据执行算子对所述业务数据进行计算。
6.根据权利要求1所述的数据处理方法,所述将计算后确定的存储在所述存储单元中的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述存储介质,包括:
所述计算模块基于所述数据执行算子确定数据存储的目标节点,并根据所述目标节点确定目标存储介质;
将所述计算模块计算后确定的存储在所述存储单元中的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述目标存储介质。
7.根据权利要求3所述的数据处理方法,所述数据解析器对基于所述网络接口确定的初始数据进行分流处理之前,还包括:
所述网卡通过网络接口接收原始数据,并对所述原始数据进行网络协议管理与控制,确定初始数据。
8.根据权利要求2所述的数据处理方法,所述计算模块基于所述数据执行算子对所述业务数据进行计算之前,还包括:
所述数据解析器将所述业务数据进行缓存,并基于所述控制数据对所述业务数据进行核验,并将获得的核验结果发送至所述中央处理器。
9.根据权利要求1所述的数据处理方法,还包括:
所述网络接口、所述数据解析器、所述计算模块以及所述存储单元之间,通过预设性能总线相互通信连接;
所述网卡、所述中央处理器以及所述存储介质之间,通过预设应用总线相互通信连接。
10.一种数据处理装置,应用于服务器,所述服务器包括网卡、中央处理器以及存储介质,其中,所述网卡包括网络接口、数据解析器、计算模块以及存储单元,
所述数据解析器,被配置为对基于所述网络接口确定的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;
所述中央处理器,被配置为解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;
所述计算模块,被配置为基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的存储在所述存储单元中的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述存储介质。
11.一种数据处理系统,包括:网卡、中央处理器以及存储介质,其中,所述网卡包括网络接口、数据解析器、计算模块以及存储单元,
所述数据解析器,被配置为对基于所述网络接口确定的初始数据进行分流处理,确定所述初始数据的控制数据、索引数据以及业务数据,并将所述控制数据以及所述索引数据存储至所述中央处理器;
所述中央处理器,被配置为解析所述控制数据,确定所述控制数据对应的数据执行算子,并将所述数据执行算子下发至所述网卡,且对所述初始数据的索引数据进行处理,将处理后的索引数据存储至存储介质;
所述计算模块,被配置为基于所述数据执行算子对所述业务数据进行计算,并将计算后确定的存储在所述存储单元中的目标业务数据、目标业务数据的索引数据以及目标业务数据的索引数据的元数据存储至所述存储介质。
12.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,其中,所述处理器执行所述计算机可执行指令时实现权利要求1-9任意一项所述数据处理方法的步骤。
13.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1-9任意一项所述数据处理方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110850461.8A CN113296718B (zh) | 2021-07-27 | 2021-07-27 | 数据处理方法以及装置 |
PCT/CN2022/106558 WO2023005748A1 (zh) | 2021-07-27 | 2022-07-19 | 数据处理方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110850461.8A CN113296718B (zh) | 2021-07-27 | 2021-07-27 | 数据处理方法以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113296718A CN113296718A (zh) | 2021-08-24 |
CN113296718B true CN113296718B (zh) | 2022-01-04 |
Family
ID=77331282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110850461.8A Active CN113296718B (zh) | 2021-07-27 | 2021-07-27 | 数据处理方法以及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113296718B (zh) |
WO (1) | WO2023005748A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113296718B (zh) * | 2021-07-27 | 2022-01-04 | 阿里云计算有限公司 | 数据处理方法以及装置 |
CN115883458A (zh) * | 2021-09-28 | 2023-03-31 | 阿里云计算有限公司 | 一种数据传输方法、系统、设备及存储介质 |
CN116107954A (zh) * | 2021-11-09 | 2023-05-12 | 华为技术有限公司 | 一种数据处理方法以及相关设备 |
CN113778345B (zh) * | 2021-11-10 | 2022-04-29 | 阿里云计算有限公司 | 索引的创建方法、计算设备及存储介质 |
CN114301575B (zh) * | 2021-12-21 | 2024-03-29 | 阿里巴巴(中国)有限公司 | 数据处理方法、系统、设备及介质 |
CN117955901A (zh) * | 2022-10-20 | 2024-04-30 | 华为技术有限公司 | 通信方法、系统及服务器 |
CN116954523B (zh) * | 2023-09-20 | 2024-01-26 | 苏州元脑智能科技有限公司 | 一种存储系统、数据存储方法、数据读取方法和存储介质 |
CN116996602B (zh) * | 2023-09-25 | 2024-01-26 | 苏州元脑智能科技有限公司 | 数据包的处理方法及装置、存储介质、电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102387219A (zh) * | 2011-12-13 | 2012-03-21 | 曙光信息产业(北京)有限公司 | 一种多网卡负载均衡系统和方法 |
CN107273213A (zh) * | 2017-06-27 | 2017-10-20 | 联想(北京)有限公司 | 一种计算控制方法、网卡及电子设备 |
CN111162935A (zh) * | 2019-12-17 | 2020-05-15 | 中国科学院计算技术研究所 | 一种基于包级别数据分流的网络通信方法及系统 |
CN112073327A (zh) * | 2020-08-19 | 2020-12-11 | 广东省新一代通信与网络创新研究院 | 一种抗拥塞的软件分流方法、装置及存储介质 |
CN112181125A (zh) * | 2020-08-28 | 2021-01-05 | 苏州浪潮智能科技有限公司 | 一种基于服务器的数据处理方法、装置及服务器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100205381A1 (en) * | 2009-02-06 | 2010-08-12 | Canion Rodney S | System and Method for Managing Memory in a Multiprocessor Computing Environment |
CN102497322A (zh) * | 2011-12-19 | 2012-06-13 | 曙光信息产业(北京)有限公司 | 一种基于分流网卡和多核cpu实现的高速包过滤设备和方法 |
CN104579695B (zh) * | 2013-10-23 | 2018-07-20 | 新华三技术有限公司 | 一种数据转发装置和方法 |
CN113037624A (zh) * | 2019-12-25 | 2021-06-25 | 华为技术有限公司 | 一种数据流控制的方法和装置 |
CN113296718B (zh) * | 2021-07-27 | 2022-01-04 | 阿里云计算有限公司 | 数据处理方法以及装置 |
-
2021
- 2021-07-27 CN CN202110850461.8A patent/CN113296718B/zh active Active
-
2022
- 2022-07-19 WO PCT/CN2022/106558 patent/WO2023005748A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102387219A (zh) * | 2011-12-13 | 2012-03-21 | 曙光信息产业(北京)有限公司 | 一种多网卡负载均衡系统和方法 |
CN107273213A (zh) * | 2017-06-27 | 2017-10-20 | 联想(北京)有限公司 | 一种计算控制方法、网卡及电子设备 |
CN111162935A (zh) * | 2019-12-17 | 2020-05-15 | 中国科学院计算技术研究所 | 一种基于包级别数据分流的网络通信方法及系统 |
CN112073327A (zh) * | 2020-08-19 | 2020-12-11 | 广东省新一代通信与网络创新研究院 | 一种抗拥塞的软件分流方法、装置及存储介质 |
CN112181125A (zh) * | 2020-08-28 | 2021-01-05 | 苏州浪潮智能科技有限公司 | 一种基于服务器的数据处理方法、装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
WO2023005748A1 (zh) | 2023-02-02 |
CN113296718A (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113296718B (zh) | 数据处理方法以及装置 | |
US10650016B2 (en) | Data ingestion process | |
CN104346433B (zh) | 用于数据库查询操作的可缩放加速的方法和系统 | |
CN114201421B (zh) | 一种数据流处理方法、存储控制节点及可读存储介质 | |
US10360913B2 (en) | Speech recognition method, device and system based on artificial intelligence | |
EP4350527A1 (en) | Data compression method and apparatus, and computing device and storage medium | |
US20210042578A1 (en) | Feature engineering orchestration method and apparatus | |
US20160277544A1 (en) | Protocol data unit interface | |
CN104077328B (zh) | MapReduce分布式系统的作业诊断方法及设备 | |
CN111262917A (zh) | 一种基于fpga云平台的远端数据搬移装置和方法 | |
US20200204688A1 (en) | Picture book sharing method and apparatus and system using the same | |
CN114363185B (zh) | 虚拟资源处理方法以及装置 | |
CN113742290B (zh) | 一种数据存储方法、装置、存储介质及电子装置 | |
WO2019127926A1 (zh) | 一种稀疏神经网络的计算方法及计算装置、电子装置、计算机可读存储介质以及计算机程序产品 | |
CN112335203A (zh) | 处理局域网诊断数据 | |
CN112433812B (zh) | 一种虚拟机跨集群迁移方法、系统、设备及计算机介质 | |
CN112771546A (zh) | 运算加速器和压缩方法 | |
CN110737678B (zh) | 一种数据查找方法、装置、设备和存储介质 | |
CN114615355B (zh) | 报文处理方法以及报文解析模块 | |
CN114584482B (zh) | 基于内存存储检测数据的方法、装置以及网卡 | |
CN115643310A (zh) | 一种压缩数据的方法、装置和系统 | |
CN115242787A (zh) | 消息处理系统及方法 | |
CN113296692B (zh) | 数据读取方法及装置 | |
CN114338529A (zh) | 五元组规则匹配方法及装置 | |
CN111125161B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40057911 Country of ref document: HK |