CN115129708A - 数据处理方法、装置和存储介质及电子设备 - Google Patents
数据处理方法、装置和存储介质及电子设备 Download PDFInfo
- Publication number
- CN115129708A CN115129708A CN202110322547.3A CN202110322547A CN115129708A CN 115129708 A CN115129708 A CN 115129708A CN 202110322547 A CN202110322547 A CN 202110322547A CN 115129708 A CN115129708 A CN 115129708A
- Authority
- CN
- China
- Prior art keywords
- target
- data
- reference data
- protocol type
- data processing
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理方法、装置和存储介质及电子设备。具体的,该方法包括:获取在目标客户端中触发的数据处理请求;按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据;按照第二参考数据查找目标函数,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作;获取执行目标操作后生成的执行结果,并将执行结果作为数据处理请求对应的响应结果返回至目标客户端,该方法可以应用在云技术场景下,该方法还可以涉及存储领域中的索引管理、对象存储、存储网关等技术本发明解决了因协议不适配而导致的数据处理效率较低的技术问题。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种数据处理方法、装置和存储介质及电子设备。
背景技术
在存储服务的场景下,由于不同存储空间对应的网络协议可能也不同,进而在当前存储空间获取到不适配对应的网络协议的数据处理请求的情况下,无法做出及时且有效的响应,尤其是在一些私有的网络协议下,这种无法做出及时且有效的响应的情况尤为严重。
而现有技术的处理方式是,将网络协议或通信框架进行改造,但上述改造的问题在于操作复杂且繁琐,会大幅度降低数据的处理效率。即,现有技术中存在因协议不适配而导致的数据处理效率较低的技术问题。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法、装置和存储介质及电子设备,以至少解决因协议不适配而导致的数据处理效率较低的技术问题。
根据本发明实施例的一个方面,提供了一种数据处理方法,包括:获取在目标客户端中触发的数据处理请求,其中,上述数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,上述数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,上述目标协议类型为上述目标存储空间对应的协议类型,上述第一参考数据用于表示执行上述目标操作所需调用的目标函数的索引信息,上述第一参考数据对应的协议类型不同于上述目标协议类型;按照上述目标协议类型的类型指示信息将上述第一参考数据转换为第二参考数据;按照上述第二参考数据查找上述目标函数,并调用查找出的上述目标函数来对上述目标存储空间中的存储数据执行上述目标操作;获取执行上述目标操作后生成的执行结果,并将上述执行结果作为上述数据处理请求对应的响应结果返回至上述目标客户端。
根据本发明实施例的另一方面,还提供了一种数据处理装置,包括:第一获取单元,用于获取在目标客户端中触发的数据处理请求,其中,上述数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,上述数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,上述目标协议类型为上述目标存储空间对应的协议类型,上述第一参考数据用于表示执行上述目标操作所需调用的目标函数的索引信息,上述第一参考数据对应的协议类型不同于上述目标协议类型;转换单元,用于按照上述目标协议类型的类型指示信息将上述第一参考数据转换为第二参考数据;查找单元,用于按照上述第二参考数据查找上述目标函数,并调用查找出的上述目标函数来对上述目标存储空间中的存储数据执行上述目标操作;第二获取单元,用于获取执行上述目标操作后生成的执行结果,并将上述执行结果作为上述数据处理请求对应的响应结果返回至上述目标客户端。
作为一种可选的实施方式,上述查找模块,包括以下至少之一:第一查找子模块,用于按照第一索引标识查找属于目标函数类型的上述目标函数,其中,上述第一索引标识与上述目标函数在上述目标函数池中的类型存储标识相对应;第二查找子模块,用于按照第二索引标识查找与目标函数编码对应的上述目标函数,其中,上述第二索引标识与上述目标函数在上述目标函数池中的编码存储标识相对应。
作为一种可选的实施方式,包括:确定单元,用于在上述获取在目标客户端中触发的数据处理请求之后,确定上述数据处理请求中携带的序列数据,其中,上述序列数据为对上述目标协议类型的类型指示信息以及上述第一参考数据进行序列化处理后获得的、允许网络传输的二进制数据;处理单元,用于在上述获取在目标客户端中触发的数据处理请求之后,对上述序列数据进行反序列化处理,以获得可识别的上述目标协议类型的类型指示信息以及上述第一参考数据。
作为一种可选的实施方式,上述第二获取单元,包括以下至少之一:第一生成模块,用于在上述目标操作执行完成的情况下,生成第一处理结果,其中,上述第一处理结果用于表示上述目标操作已执行成功;第二生成模块,用于在上述目标操作执行中断的情况下,生成第二处理结果,其中,上述第二处理结果用于表示上述目标操作已执行失败;第三生成模块,用于在上述目标操作执行完成/中断的情况下,生成第三处理结果,其中,上述第三处理结果用于表示上述目标操作关联的执行日志。
作为一种可选的实施方式,包括:第一调整单元,用于在上述调用查找出的上述目标函数来对上述目标存储空间中的存储数据执行上述目标操作之后,包括:将目标线程的运行状态调整为占用状态,其中,上述目标线程用于执行上述目标函数的调用任务,处于上述占用状态的上述目标线程禁止执行上述调用任务外的任一任务;第二调整单元,用于在上述将上述执行结果作为上述数据处理请求对应的响应结果返回至上述目标客户端之后,包括:将上述目标线程的运行状态调整为空闲状态,其中,处于上述空闲状态的上述目标线程允许执行包括上述调用任务在内的任一任务。
作为一种可选的实施方式,包括:第三调整单元,用于在上述调用查找出的上述目标函数来对上述目标存储空间中的存储数据执行上述目标操作之后,包括:在目标线程的运行状态为空闲状态,且上述目标线程的运行负载已达到目标阈值的情况下,将上述目标线程的运行状态从上述空闲状态调整为占用状态,其中,上述目标线程用于执行上述目标函数的调用任务,处于上述占用状态的上述目标线程禁止执行上述调用任务外的任一任务,处于上述空闲状态的上述目标线程允许执行包括上述调用任务在内的任一任务;第四调整单元,用于在上述将上述执行结果作为上述数据处理请求对应的响应结果返回至上述目标客户端之后,包括:在上述目标线程的运行状态为上述占用状态,且上述运行负载已低于上述目标阈值的情况下,将上述目标线程的运行状态调整为上述空闲状态。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述数据处理方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的数据处理方法。
在本发明实施例中,获取在目标客户端中触发的数据处理请求,其中,上述数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,上述数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,上述目标协议类型为上述目标存储空间对应的协议类型,上述第一参考数据用于表示执行上述目标操作所需调用的目标函数的索引信息,上述第一参考数据对应的协议类型不同于上述目标协议类型;按照上述目标协议类型的类型指示信息将上述第一参考数据转换为第二参考数据;按照上述第二参考数据查找上述目标函数,并调用查找出的上述目标函数来对上述目标存储空间中的存储数据执行上述目标操作;获取执行上述目标操作后生成的执行结果,并将上述执行结果作为上述数据处理请求对应的响应结果返回至上述目标客户端,通过在请求数据处理时,在数据处理请求中额外提供待处理数据所在的存储空间对应的协议类型,再利用协议转换的方式,将数据处理请求中原本不适配该协议类型的参考数据,转换为适配于该协议类型的参考数据,进而达到了快速完成数据处理请求与待处理数据之间的协议适配的技术目的,从而实现了提高了数据的处理效率的技术效果,进而解决了因协议不适配而导致的数据处理效率较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的数据处理方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的数据处理方法的流程的示意图;
图3是根据本发明实施例的一种可选的数据处理方法的示意图;
图4是根据本发明实施例的另一种可选的数据处理方法的示意图;
图5是根据本发明实施例的另一种可选的数据处理方法的示意图;
图6是根据本发明实施例的另一种可选的数据处理方法的示意图;
图7是根据本发明实施例的另一种可选的数据处理方法的示意图;
图8是根据本发明实施例的另一种可选的数据处理方法的示意图;
图9是根据本发明实施例的另一种可选的数据处理方法的示意图;
图10是根据本发明实施例的另一种可选的数据处理方法的示意图;
图11是根据本发明实施例的另一种可选的数据处理方法的示意图;
图12是根据本发明实施例的另一种可选的数据处理方法的示意图;
图13是根据本发明实施例的另一种可选的数据处理方法的示意图;
图14是根据本发明实施例的一种可选的数据处理装置的示意图;
图15是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,为方便理解本发明实施例,下面对本发明中所涉及的部分术语或名词进行解释说明:
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
目前,存储系统的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件系统上,文件系统将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件系统将每个对象分别写入该逻辑卷的物理存储空间,且文件系统会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件系统能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储系统为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
根据本发明实施例的一个方面,提供了一种数据处理方法,可选地,作为一种可选的实施方式,上述数据处理方法可以但不限于应用于如图1所示的环境中。其中,可以但不限于包括用户设备102、网络110及服务器112,其中,该用户设备102上可以但不限于包括显示器108、处理器106及存储器104。
具体过程可如下步骤:
步骤S102,用户设备102获取数据处理请求;
步骤S104-S106,用户设备102通过网络110将数据处理请求发送给服务器112,其中,数据处理请求中携带有目标存储空间对应的协议类型的类型指示信息以及第一参考数据;
步骤S108,服务器112通过数据库114查找数据处理请求对应的目标协议类型,并通过处理引擎116将第一参考数据处理为目标存储空间对应的协议类型的第二参考数据,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作,从而生成响应结果;
步骤S110-S114,服务器112通过网络110将响应结果发送给用户设备102,用户设备102中的处理器106根据响应结果生成对应的图像,并将上述图像显示在显示器108中,以及将上述图像存储在存储器104中。
除图1示出的示例之外,上述步骤可以由用户设备102独立完成,即由用户设备102执行响应结果的生成等步骤,从而减轻服务器的处理压力。该用户设备102包括但不限于手持设备(如手机)、笔记本电脑、台式电脑、车载设备等,本发明并不限制用户设备102的具体实现方式。
可选地,作为一种可选的实施方式,如图2所示,数据处理方法包括:
S202,获取在目标客户端中触发的数据处理请求,其中,数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,目标协议类型为目标存储空间对应的协议类型,第一参考数据用于表示执行目标操作所需调用的目标函数的索引信息,第一参考数据对应的协议类型不同于目标协议类型;
S204,按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据;
S206,按照第二参考数据查找目标函数,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作;
S208,获取执行目标操作后生成的执行结果,并将执行结果作为数据处理请求对应的响应结果返回至目标客户端。
可选地,在本实施例中,上述数据处理方法可以但不限于应用在存储服务的场景下,例如云存储的服务场景、信令传输的服务场景,具体的以云存储的服务场景为例说明,在面向于用户侧的客户端上检测到对目标图像的显示请求,将显示请求发送至服务器,并由服务器调用与显示请求对应的目标函数,以及通过目标函数的调用,执行对云存储空间中的图像数据的调用操作,从而将图像数据发送至客户端进行显示,以完成对显示请求的响应;再者,以信令传输的服务场景为例说明,服务于对象存储的清单盘点、检索、索引等,还可以定期检查数据是否异常,以及面向文件系统、虚拟机、目录-文件夹底层等。
可选地,在本实施例中,目标操作的类型可以但不限于为与数据处理请求相对应,目标操作可以但不限于通过目标函数的调用完成执行,其中,目标操作可以但不限于包括以下至少之一:调用、清理、检查、盘点、检索、索引等。
可选地,在本实施例中,协议可以但不限于为网络协议,具体的,网络协议可以但不限于为计算机网络中进行数据交换而建立的规则、标准或约定的集合,或可理解为一套Input/ouput约束规则,例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作原所输入的命令彼此不认识,为了能进行通信,规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,达到目的终端之后,再变换为该终端字符集的字符,此外,除了需变换字符集字符外还需转换其他特征,如显示格式、行长、行数、屏幕滚动方式也需进行相应的转换。可选地,协议可以但不限于分为通用协议和私用协议,通用协议可以但不限于为国际标准协议,例如传输控制协议/Internet协议(Transport Control Protocol/Internet Protocol,简称TCP/IP)、HTTP协议、基于SSL的HTTP协议(Hypertext Transfer Protocol over SecureSocket Layer,简称HTTPS)、SOAP协议、受限应用协议(Constrained ApplicationProtocol,简称CoAP)等;私用协议可以但不限于为用于公司内部的协议发起方(request)以及协议响应方(response)认可同一套协议,并按照协议约束进行通信。
进一步可选地,在本实施例中,类型指示信息可以但不限于指示协议为通用协议还是私用协议,或用于指示协议标识(如TCP/IP协议、SOAP协议等)。可选地,协议目标函数的调用对象可以但不限于为虚拟服务器,且该虚拟服务器在上述私用协议场景中,可以但不限于为协议响应方,该协议响应方用于通过目标函数的调用,对存储在目标存储空间中的存储数据进行目标操作。可选地,目标存储空间可以但不限用于存储虚拟化的资源,并以存储资源池(storage pool)的方式提供,且该目标存储空间可以但不限于分布在多个服务器主机上。
可选地,在本实施例中,索引信息可以但不限于为目标函数在函数池中的存储路径或存储标识,例如索引信息可以但不限于为路径信息,利用该索引信息可在函数池中对应的目标存储位置处快速调用对应的目标函数,其中,索引信息与目标存储位置相对应;再例如索引信息可以但不限于为标识信息,存储池中的存储数据预先分配有对应的标识信息,使得在目标函数的调用阶段,利用该索引信息可在函数池中快速调用与目标标识对应的目标函数,其中,索引信息与目标标识相对应。
需要说明的是,通过在数据处理请求的响应过程中,在数据处理请求中额外提供待处理数据所在的目标存储空间对应的协议类型,再利用协议转换的方式,将数据处理请求中原本不适配该协议类型的参考数据,转换为适配于该协议类型的参考数据。可选地,数据处理请求可以但不限于通过目标客户端的应用程序接口或用户界面的触发以获取。
进一步举例说明,可选的假设目标客户端对应的用户界面如图3所示,目标客户端302为目标网址(以www.abc.com为例说明)对应的用户界面,在该用户界面上展示有多个虚拟图标;进一步例如图3中的(a)所示,假设在虚拟图标304上检测到选定操作,进而触发对应的数据处理请求,并将该数据处理请求的响应结果显示在目标客户端302上,例如图3中的(b)所示。可选地,响应结果可以但不限于为虚拟图标304对应的目标图像306,其中,虚拟图标304可以但不限于为存储在目标客户端302、且负载较低的图像数据,目标图像306可以但不限于为存储在云存储空间内的、且负载较高的图像数据。
此外,可选的基于图3所示场景,继续例如图4所示,进一步在已通过图4中的(a)所示的虚拟图标304已触发数据处理请求的情况下,再例如图4中的(b)所示,还可以但不限于通过目标客户端302的用户界面上的虚拟按钮402以触发下一数据处理请求,可理解为通过虚拟图标304触发的数据处理请求是请求显示与虚拟图标304对应的目标图像306,而通过虚拟按钮402触发的数据处理请求是请求显示与虚拟图标304下一顺位的虚拟图标对应的目标图像404,例如图4中的(c)所示。
进一步举例说明,可选的假设目标客户端对应的应用程序接口如图5所示,由目标客户端502触发数据处理请求504,并通过网络将该数据处理请求504传输至目标服务器506,其中,该数据处理请求504可以但不限于请求对目标存储空间510中的存储数据512执行目标操作(如调用、清理、检查、盘点、检索、索引等);具体的,以目标操作为检查操作为例说明,可选地通过目标服务器506调用与数据处理请求504对应的目标函数508,并由目标函数508的调用对目标存储空间510中的存储数据512执行检查操作,其中,存储数据512可以但不限于为目标存储空间510中的全部,也可以但不限于为目标存储空间510中的与数据处理请求504对应的部分存储数据。
进一步举例说明,可选的例如图6所示,将数据处理请求中携带有目标协议类型的类型指示信息604以及第一参考数据606统称为目标参考数据602,此外目标参考数据602还包括其他参考数据,例如用于表示历史执行数据的“Seq_id”、用于表示字节长度的“Length”、用于表示数据处理请求对应的“请求数据”等。
进一步举例说明,可选的基于图6所示场景,继续例如图7所示,执行目标操作后生成的执行结果702与目标参考数据602相对应,可以但不限于包括用于表示目标操作的执行是否存在异常情况的“Errno”、用于表示历史执行数据的“Seq_id”、用于表示字节长度的“Length”、用于表示响应结果对应的“返回数据”等。
通过本申请提供的实施例,获取在目标客户端中触发的数据处理请求,其中,数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,目标协议类型为目标存储空间对应的协议类型,第一参考数据用于表示执行目标操作所需调用的目标函数的索引信息,第一参考数据对应的协议类型不同于目标协议类型;按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据;按照第二参考数据查找目标函数,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作;获取执行目标操作后生成的执行结果,并将执行结果作为数据处理请求对应的响应结果返回至目标客户端,通过在请求数据处理时,在数据处理请求中额外提供待处理数据所在的存储空间对应的协议类型,再利用协议转换的方式,将数据处理请求中原本不适配该协议类型的参考数据,转换为适配于该协议类型的参考数据,进而达到了快速完成数据处理请求与待处理数据之间的协议适配的技术目的,从而实现了提高了数据的处理效率的技术效果。
作为一种可选的方案,按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据,包括:
S1,按照目标协议类型的类型指示信息确定目标存储空间对应的协议类型;
S2,在获取到第一参考数据对应的初始协议类型的情况下,获取属于初始协议类型的数据与属于目标协议类型的数据之间的映射关系;
S3,确定与第一参考数据之间具有映射关系的第二参考数据。
可选地,在本实施例中,可以但不限于利用协议转换的方式将第一参考数据转换为第二参考数据,其中,协议转换可以但不限于将一个设备的标准或协议转换成适用于另一设备的协议的过程,目的是为了使得不同协议之间实现交互操作,协议通常是以软件的形式出现,比如路由器讲一个网络中的数据格式、数据速率等转换成适用于另一个网络的协议,且主要的协议转换消息涉及数据消息、事件、命令和时间同步的转换。
需要说明的是,可利用预先建立的映射关系,实现对不同协议类型的数据之间的协议转换。具体的,获取第一参考数据对应的初始协议类型,以及目标存储空间对应的目标协议类型,在根据预先建立的映射关系,确定目标协议类型的第一参考数据,即第二参考数据,其中,初始协议类型以及目标协议类型的获取顺序在此不做限定。
进一步举例说明,可选的例如图8所示,包括了四种协议类型802下的参考数据804。具体的,相同的参考数据804在不同协议类型802下以不同的协议格式进行传递、交互、处理等,且不同协议类型802下的参考数据804之间可完成对应的协议转换,但协议转换后的参考数据804仍保留实质的表意。假设初始协议类型为的“RPC”,对应的参考数据804包括了用于表示“RPC”的协议版本“RPC0”、用于表示所需调用的目标函数的索引标识“SAerviceID”以及“MethodID”、用于表示历史执行数据的“Seqid”、用于表示字节长度的“Length”、用于表示数据处理请求对应的“PB数据”等,且该“RPC”协议类型对应的参考数据804用于表示待执行的目标操作的执行方式;再者,将初始协议类型“RPC”对应的参考数据804进行协议转化,以获得目标协议类型“HTTP”对应的参考数据804,且该目标协议类型“HTTP”对应的参考数据804也用于表示待执行的目标操作的执行方式。
通过本申请提供的实施例,按照目标协议类型的类型指示信息确定目标存储空间对应的协议类型;在获取到第一参考数据对应的初始协议类型的情况下,获取属于初始协议类型的数据与属于目标协议类型的数据之间的映射关系;确定与第一参考数据之间具有映射关系的第二参考数据,达到了利用映射关系快速完成参考数据之间的转换的目的,实现了提高数据的转换效率的效果。
作为一种可选的方案,确定与第一参考数据之间具有映射关系的第二参考数据,包括:
S1,获取第一参考数据中携带有的N个第一子数据,以及每个第一子数据在第二参数数据中的排序信息,其中,N为大于等于1的整数;
S2,确定与N个第一子数据之间具有映射关系的M个第二子数据,其中,M为大于等于1的整数;
S3,基于排序信息对M个第二子数据进行整合处理,以确定第二参考数据。
可选地,在本实施例中,网络协议通常可理解为包括三个组成要素,要素一为语义,要素二为语法,要素三为时序,具体的,语义可以但不限于解释控制信息每个部分的意义,规定了需要发出何种控制信息,以及完成的动作与做出什么样的响应;语法可以但不限于是用户数据与控制信息的结构与格式,以及数据出现的顺序;时序可以但不限于是对事件发生顺序的详细说明,通俗来讲,语义表示要做什么,语法表示要怎么做,时序表示做的顺序。可选地,在本实施例中,第一子数据可以但不限用于表示语义以及语法,第一子数据在第二参数数据中的排序信息可以但不限用于表示时序,进而在获取到第一子数据以及第一子数据在第二参数数据中的排序信息的情况下,完成不同协议类型的数据之间的协议转换。
进一步举例说明,可选的例如图8所示,以协议类型802“RPC”为例说明,在协议类型802“RPC”对应的参考数据804中,用于表示字节长度的“Length”、用于表示所需调用的目标函数的索引标识“SAerviceID”以及“MethodID”可理解为三要素中的语义;用于表示数据处理请求对应的“PB数据”可理解为三要素中的语法;在参考数据804的序列信息可可理解为三要素中的时序。
通过本申请提供的实施例,获取第一参考数据中携带有的N个第一子数据,以及每个第一子数据在第二参数数据中的排序信息,其中,N为大于等于1的整数;确定与N个第一子数据之间具有映射关系的M个第二子数据,其中,M为大于等于1的整数;基于排序信息对M个第二子数据进行整合处理,以确定第二参考数据,达到了利用子数据以及排序信息准确确定第二参考数据的目的,实现了提高第二参考数据的确定准确性的效果。
作为一种可选的方案,按照第二参考数据查找目标函数,包括:
S1,获取第二参考数据中携带的目标索引标识,其中,目标索引标识与目标函数在目标函数池中的存储标识相对应;
S2,按照目标索引标识在目标函数池中查找目标函数。
可选地,在本实施例中,目标函数可以但不限于通过存储标识对应的方式存储在目标函数池中。
需要说明的是,由于通过存储标识对应的方式预先将目标函数存储在目标函数池中,进而通过携带的目标索引标识,在函数池中查找对应的目标函数。
通过本申请提供的实施例,获取第二参考数据中携带的目标索引标识,其中,目标索引标识与目标函数在目标函数池中的存储标识相对应;按照目标索引标识在目标函数池中查找目标函数,达到了利用存储标识快速查找目标函数的目的,实现了提高目标函数的查找效率的效果。
作为一种可选的方案,按照目标索引标识在目标函数池中查找目标函数,包括以下至少之一:
S1,按照第一索引标识查找属于目标函数类型的目标函数,其中,第一索引标识与目标函数在目标函数池中的类型存储标识相对应;
S2,按照第二索引标识查找与目标函数编码对应的目标函数,其中,第二索引标识与目标函数在目标函数池中的编码存储标识相对应。
可选地,在本实施例中,可以但不限于按照第一索引标识在目标函数池中查找属于目标函数类型的目标函数;或,可以但不限于按照第二索引标识在目标函数池中查找属于目标函数编码的目标函数;或,可以但不限于先按照第一索引标识查找属于目标函数类型的候选函数,再按照第二索引标识在候选函数中查找与目标函数编码对应的目标函数。
需要说明的是,目标函数可以但不限于通过类型存储标识对应的方式存储在目标函数池中,和/或目标函数可以但不限于通过编码存储标识对应的方式存储在目标函数池中。可选地,编码存储标识的查找粒度可以但不限于小于类型存储标识。
进一步举例说明,可选的例如图9所示,存储函数以函数类型(例如类型1、类型2……类型N)以及函数编码(例如函数A、函数B、函数C、函数D……函数F)存储在目标函数池902中,其中,第一索引标识904用于确定目标函数的函数类型(例如类型N),第二索引标识906用于确定目标函数的函数编码(例如函数A)。如此一来,即使函数编码在目标函数池902中存在重复的情况,但由于已确定目标函数的函数类型(例如类型N),使得避免因函数重复而导致无法查找到准确的目标函数的问题发生。
通过本申请提供的实施例,按照第一索引标识查找属于目标函数类型的目标函数,其中,第一索引标识与目标函数在目标函数池中的类型存储标识相对应;按照第二索引标识查找与目标函数编码对应的目标函数,其中,第二索引标识与目标函数在目标函数池中的编码存储标识相对应,达到了避免因函数重复而导致无法查找到准确的目标函数的问题发生的目的,实现了提高目标函数的查找准确性的效果。
作为一种可选的方案,在获取在目标客户端中触发的数据处理请求之后,包括:
S1,确定数据处理请求中携带的序列数据,其中,序列数据为对目标协议类型的类型指示信息以及第一参考数据进行序列化处理后获得的、允许网络传输的二进制数据;
S2,对序列数据进行反序列化处理,以获得可识别的目标协议类型的类型指示信息以及第一参考数据。
可选地,在本实施例中,可以但不限于采用Protobuf消息的序列化和反序列化能力,包含了函数定义,以统一对外暴露的应用程序接口,并利用Protobuf提供的RpcChannel::CallMethod接口,使得客户端调用任何一个应用程序接口,最终都是调用到CallMethod。这个函数的典型实现就是将调用参数序列化,然后投递给网络模块进行发送,其中,Protobuf为Google出品的性能优异、跨语言、跨平台的序列化库,执行序列化和反序列化操作的可以但不限于为Protobuf,但不仅限于为Protobuf,在此不做限定。
可选地,在本实施例中,序列化的作用可以但不限于在传递和保存对象时,保证对象的完整性和可传递性,对象转换为有序字节流,以便在网络上传输或保存在本地文件中,而反序列化的作用可以但不限于根据字节流中保存的对象状态及描述信息,或还原已序列化数据的原始表义。
需要说明的是,确定数据处理请求中携带的序列数据,其中,序列数据为对目标协议类型的类型指示信息以及第一参考数据进行序列化处理后获得的、允许网络传输的二进制数据;对序列数据进行反序列化处理,以获得可识别的目标协议类型的类型指示信息以及第一参考数据。
进一步举例说明,可选的例如图10所示,目标客户端1002为数据处理请求1006的触发方,目标服务器1004为数据处理请求1006的响应方。具体的,获取由目标客户端1002触发的数据处理请求1006,并由目标客户端1002将该数据处理请求1006对应的待传递数据进行序列化处理,以获得序列数据1008;通过网络传输,将该序列数据1008传递至目标服务器1004;同时,由于序列数据1008当前的数据格式不被目标服务器1004所识别,因此还需对序列数据1008进行反序列化处理,以获得目标服务器1004可识别的参考数据1010。
通过本申请提供的实施例,确定数据处理请求中携带的序列数据,其中,序列数据为对目标协议类型的类型指示信息以及第一参考数据进行序列化处理后获得的、允许网络传输的二进制数据;对序列数据进行反序列化处理,以获得可识别的目标协议类型的类型指示信息以及第一参考数据,达到了使得处理后的数据格式满足网络传输的目的,实现了提高数据的交互效率的效果。
作为一种可选的方案,获取执行目标操作后生成的执行结果,包括以下至少之一:
S1,在目标操作执行完成的情况下,生成第一处理结果,其中,第一处理结果用于表示目标操作已执行成功;
S2,在目标操作执行中断的情况下,生成第二处理结果,其中,第二处理结果用于表示目标操作已执行失败;
S3,在目标操作执行完成/中断的情况下,生成第三处理结果,其中,第三处理结果用于表示目标操作关联的执行日志。
可选地,在本实施例中,执行日志可以但不限用于记录目标操作的执行数据,如成功次数、失败次数、失败原因、成功时长等。
需要说明的是,根据目标操作的不同执行状态,可生成对应的处理结果,如第一处理结果的生成条件为目标操作已执行成功,第二处理结果的生成条件为目标操作已执行失败,而第三处理结果的生成条件为目标操作已经执行。
进一步举例说明,可选的例如图6或图7中所示“Seq_id”,可以但不限用于表示目标操作关联的执行次数,假设目标操作已执行5次,则在图6中所示的场景下,“Seq_id”可以但不限于为“5”,即该“Seq_id”可以但不限用于表示目标操作已执行5次;再者,在图7中所示的场景下,假设该目标操作已执行完成,则该“Seq_id”可以但不限于为“6(5+1)”,即该“Seq_id”可以但不限用于表示目标操作已执行6次。
通过本申请提供的实施例,在目标操作执行完成的情况下,生成第一处理结果,其中,第一处理结果用于表示目标操作已执行成功;在目标操作执行中断的情况下,生成第二处理结果,其中,第二处理结果用于表示目标操作已执行失败;在目标操作执行完成/中断的情况下,生成第三处理结果,其中,第三处理结果用于表示目标操作关联的执行日志,达到了将目标操作的执行过程通过处理结果的方式及时反馈的目的,实现了提高目标操作的反馈及时性的效果。
作为一种可选的方案,在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后,包括:将目标线程的运行状态调整为占用状态,其中,目标线程用于执行目标函数的调用任务,处于占用状态的目标线程禁止执行调用任务外的任一任务;
作为一种可选的方案,在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,包括:将目标线程的运行状态调整为空闲状态,其中,处于空闲状态的目标线程允许执行包括调用任务在内的任一任务。
可选地,在本实施例中,上述数据处理方法可以但不限于采用多线程框架,实现多种并发模型的使用,例如一个连接/任务/请求对应一个线程,这种模型server实现较为简单,适合调用方负载稳定,不需频繁扩缩容的场景。
需要说明的是,在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后,将目标线程的运行状态调整为占用状态;以及在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,将目标线程的运行状态调整为空闲状态。
进一步举例说明,可选的例如图11所示,在目标线程1104当前被数据处理请求1102对应的线程任务1106占用的情况下,将目标线程1104的运行状态调整为占用状态;同理,在数据处理请求1102对应的线程任务1106已处理完成的情况下,将目标线程1104的运行状态调整为空闲状态(图中未示出)。可理解为,目标线程1104被设置为仅允许由一个线程任务1106占用。
通过本申请提供的实施例,在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后,包括:将目标线程的运行状态调整为占用状态,其中,目标线程用于执行目标函数的调用任务,处于占用状态的目标线程禁止执行调用任务外的任一任务;在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,包括:将目标线程的运行状态调整为空闲状态,其中,处于空闲状态的目标线程允许执行包括调用任务在内的任一任务,实现了提高数据的处理稳定性的效果。
作为一种可选的方案,在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后,包括:在目标线程的运行状态为空闲状态,且目标线程的运行负载已达到目标阈值的情况下,将目标线程的运行状态从空闲状态调整为占用状态,其中,目标线程用于执行目标函数的调用任务,处于占用状态的目标线程禁止执行调用任务外的任一任务,处于空闲状态的目标线程允许执行包括调用任务在内的任一任务;
作为一种可选的方案,在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,包括:在目标线程的运行状态为占用状态,且运行负载已低于目标阈值的情况下,将目标线程的运行状态调整为空闲状态。
可选地,在本实施例中,上述数据处理方法可以但不限于采用多线程框架,实现多种并发模型的使用,例如支持线程复用,多个任务根据IO的复用方式,提供并行的数据处理服务,适用于调用方高并发、负载不稳定的场景。
需要说明的是,在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后,将目标线程的运行状态调整为占用状态;以及在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,将目标线程的运行状态调整为空闲状态。
进一步举例说明,可选的例如图12所示,在目标线程1202当前被线程任务1204、线程任务1206、线程任务1208、线程任务1210占用的情况下,将目标线程1202的运行状态调整为占用状态(图中未示出);同理,线程任务1210已经结束,且当前目标线程1202只被线程任务1204、线程任务1206、线程任务1208占用的情况下,将目标线程1202的运行状态调整为空闲状态。可理解为,目标线程1204被设置为仅允许由多个线程任务占用,但该占用是有上限要求的(例如对线程任务的数量有上限要求、对线程任务对应的数据传输总量有上限要求等)。
通过本申请提供的实施例,在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后,包括:在目标线程的运行状态为空闲状态,且目标线程的运行负载已达到目标阈值的情况下,将目标线程的运行状态从空闲状态调整为占用状态,其中,目标线程用于执行目标函数的调用任务,处于占用状态的目标线程禁止执行调用任务外的任一任务,处于空闲状态的目标线程允许执行包括调用任务在内的任一任务;在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,包括:在目标线程的运行状态为占用状态,且运行负载已低于目标阈值的情况下,将目标线程的运行状态调整为空闲状态,实现了提高数据的处理效率的效果。
作为一种可选的方案,为方便理解,以适配部门框架和协议的远程过程调用(Remote Procedure Call,简称RPC)框架为例,说明将上述数据处理方法应用在信令传输场景的具体实现过程,其中,RPC可以但不限用于表示一个节点请求另一个节点提供的服务,例如,信令传输可以但不限用于表示存储服务场景,一般分为信令与数据传输,其中信令传输的请求数据负载不高,通常在几KB到几MB,但请请求量大;数据传输的请求负数负载较高,通常如1MB、1GB等;
进一步,具体如图13所示,在上述数据处理方法执行之前,利用目标服务器1304实现接口的注册和路由,通过一个快速查询器将目标函数的索引标识(如serviceid、methodid)注册进去,当目标服务器1304调用时,从该快速查询器中找到对应的方法执行;
再者,在上述数据处理方法的执行过程中,目标客户端1302除了需要将调用(目标)函数的参数发送到目标服务器1304外,还需要将索引标识发送到目标服务器1304,进而借助上述数据就能完成一次RPC的调用。另外RPC框架为了支持多种协议,还需要一个字段用来记录协议类型(协议头),为了完成调用跟踪需要一个seqid,以及序列化后的数据长度(Length)等;
进一步,可以但不限于采用代理模块(例如Protobuf)的序列化和反序列化能力,并利用Protobuf提供的统一接口(例如RpcChannel::CallMethod),使得客户端调用任何一个对外接口,最终都是调用到该统一接口,然后将序列化处理好的序列数据(如Router、Report等)投递给网络模块进行发送;
目标服务器1304在接收到网络模块发送的序列数据后,对该序列数据进行反序列化处理,并根据反序列化处理好的数据找到对应的目标函数,进而调用该目标函数对存储数据执行目标操作。
通过本申请提供的实施例,在产品方面,上述RPC框架支持了对象存储的清单、巡检、LIST等服务;在技术方面上述RPC框架即可与业界对标的通信协议,也可与私有的部门框架进行适配,降低了业务开发难度,使用简单、且通信效率高。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述数据处理方法的数据处理装置。如图14所示,该装置包括:
第一获取单元1402,用于获取在目标客户端中触发的数据处理请求,其中,数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,目标协议类型为目标存储空间对应的协议类型,第一参考数据用于表示执行目标操作所需调用的目标函数的索引信息,第一参考数据对应的协议类型不同于目标协议类型;
转换单元1404,用于按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据;
查找单元1406,用于按照第二参考数据查找目标函数,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作;
第二获取单元1408,用于获取执行目标操作后生成的执行结果,并将执行结果作为数据处理请求对应的响应结果返回至目标客户端。
可选地,在本实施例中,上述数据处理装置可以但不限于应用在存储服务的场景下,例如云存储的服务场景、信令传输的服务场景,具体的以云存储的服务场景为例说明,在面向于用户侧的客户端上检测到对目标图像的显示请求,将显示请求发送至服务器,并由服务器调用与显示请求对应的目标函数,以及通过目标函数的调用,执行对云存储空间中的图像数据的调用操作,从而将图像数据发送至客户端进行显示,以完成对显示请求的响应;再者,以信令传输的服务场景为例说明,服务于对象存储的清单盘点、检索、索引等,还可以定期检查数据是否异常,以及面向文件系统、虚拟机、目录-文件夹底层等。
可选地,在本实施例中,目标操作的类型可以但不限于为与数据处理请求相对应,目标操作可以但不限于通过目标函数的调用完成执行,其中,目标操作可以但不限于包括以下至少之一:调用、清理、检查、盘点、检索、索引等。
可选地,在本实施例中,协议可以但不限于为网络协议,具体的,网络协议可以但不限于为计算机网络中进行数据交换而建立的规则、标准或约定的集合,或可理解为一套Input/ouput约束规则,例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作原所输入的命令彼此不认识,为了能进行通信,规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,达到目的终端之后,再变换为该终端字符集的字符,此外,除了需变换字符集字符外还需转换其他特征,如显示格式、行长、行数、屏幕滚动方式也需进行相应的转换。可选地,协议可以但不限于分为通用协议和私用协议,通用协议可以但不限于为国际标准协议,例如传输控制协议/Internet协议(Transport Control Protocol/Internet Protocol,简称TCP/IP)、HTTP协议、基于SSL的HTTP协议(Hypertext Transfer Protocol over SecureSocket Layer,简称HTTPS)、SOAP协议、受限应用协议(Constrained ApplicationProtocol,简称CoAP)等;私用协议可以但不限于为用于公司内部的协议发起方(request)以及协议响应方(response)认可同一套协议,并按照协议约束进行通信。
进一步可选地,在本实施例中,类型指示信息可以但不限于指示协议为通用协议还是私用协议,或用于指示协议标识(如TCP/IP协议、SOAP协议等)。可选地,协议目标函数的调用对象可以但不限于为虚拟服务器,且该虚拟服务器在上述私用协议场景中,可以但不限于为协议响应方,该协议响应方用于通过目标函数的调用,对存储在目标存储空间中的存储数据进行目标操作。可选地,目标存储空间可以但不限用于存储虚拟化的资源,并以存储资源池(storage pool)的方式提供,且该目标存储空间可以但不限于分布在多个服务器主机上。
可选地,在本实施例中,索引信息可以但不限于为目标函数在函数池中的存储路径或存储标识,例如索引信息可以但不限于为路径信息,利用该索引信息可在函数池中对应的目标存储位置处快速调用对应的目标函数,其中,索引信息与目标存储位置相对应;再例如索引信息可以但不限于为标识信息,存储池中的存储数据预先分配有对应的标识信息,使得在目标函数的调用阶段,利用该索引信息可在函数池中快速调用与目标标识对应的目标函数,其中,索引信息与目标标识相对应。
需要说明的是,通过在数据处理请求的响应过程中,在数据处理请求中额外提供待处理数据所在的目标存储空间对应的协议类型,再利用协议转换的方式,将数据处理请求中原本不适配该协议类型的参考数据,转换为适配于该协议类型的参考数据。可选地,数据处理请求可以但不限于通过目标客户端的应用程序接口或用户界面的触发以获取。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
通过本申请提供的实施例,获取在目标客户端中触发的数据处理请求,其中,数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,目标协议类型为目标存储空间对应的协议类型,第一参考数据用于表示执行目标操作所需调用的目标函数的索引信息,第一参考数据对应的协议类型不同于目标协议类型;按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据;按照第二参考数据查找目标函数,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作;获取执行目标操作后生成的执行结果,并将执行结果作为数据处理请求对应的响应结果返回至目标客户端,通过在请求数据处理时,在数据处理请求中额外提供待处理数据所在的存储空间对应的协议类型,再利用协议转换的方式,将数据处理请求中原本不适配该协议类型的参考数据,转换为适配于该协议类型的参考数据,进而达到了快速完成数据处理请求与待处理数据之间的协议适配的技术目的,从而实现了提高了数据的处理效率的技术效果。
作为一种可选的方案,转换单元1404,包括:
第一确定模块,用于按照目标协议类型的类型指示信息确定目标存储空间对应的协议类型;
第一获取模块,用于在获取到第一参考数据对应的初始协议类型的情况下,获取属于初始协议类型的数据与属于目标协议类型的数据之间的映射关系;
第二确定模块,用于确定与第一参考数据之间具有映射关系的第二参考数据。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第二确定模块,包括:
获取子模块,用于获取第一参考数据中携带有的N个第一子数据,以及每个第一子数据在第二参数数据中的排序信息,其中,N为大于等于1的整数;
第一确定子模块,用于确定与N个第一子数据之间具有映射关系的M个第二子数据,其中,M为大于等于1的整数;
第二确定子模块,用于基于排序信息对M个第二子数据进行整合处理,以确定第二参考数据。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,查找单元1406,包括:
第二获取模块,用于获取第二参考数据中携带的目标索引标识,其中,目标索引标识与目标函数在目标函数池中的存储标识相对应;
查找模块,用于按照目标索引标识在目标函数池中查找目标函数。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,查找模块,包括以下至少之一:
第一查找子模块,用于按照第一索引标识查找属于目标函数类型的目标函数,其中,第一索引标识与目标函数在函数池中的类型存储标识相对应;
第二查找子模块,用于按照第二索引标识查找与目标函数编码对应的目标函数,其中,第二索引标识与目标函数在函数池中的编码存储标识相对应。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,包括:
确定单元,用于在获取在目标客户端中触发的数据处理请求之后,确定数据处理请求中携带的序列数据,其中,序列数据为对目标协议类型的类型指示信息以及第一参考数据进行序列化处理后获得的、允许网络传输的二进制数据;
处理单元,用于在获取在目标客户端中触发的数据处理请求之后,对序列数据进行反序列化处理,以获得可识别的目标协议类型的类型指示信息以及第一参考数据。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,第二获取单元1408,包括以下至少之一:
第一生成模块,用于在目标操作执行完成的情况下,生成第一处理结果,其中,第一处理结果用于表示目标操作已执行成功;
第二生成模块,用于在目标操作执行中断的情况下,生成第二处理结果,其中,第二处理结果用于表示目标操作已执行失败;
第三生成模块,用于在目标操作执行完成/中断的情况下,生成第三处理结果,其中,第三处理结果用于表示目标操作关联的执行日志。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,包括:
第一调整单元,用于在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后将目标线程的运行状态调整为占用状态,其中,目标线程用于执行目标函数的调用任务,处于占用状态的目标线程禁止执行调用任务外的任一任务;
第二调整单元,用于在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,将目标线程的运行状态调整为空闲状态,其中,处于空闲状态的目标线程允许执行包括调用任务在内的任一任务。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
作为一种可选的方案,包括:
第三调整单元,用于在调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作之后,在目标线程的运行状态为空闲状态,且目标线程的运行负载已达到目标阈值的情况下,将目标线程的运行状态从空闲状态调整为占用状态,其中,目标线程用于执行目标函数的调用任务,处于占用状态的目标线程禁止执行调用任务外的任一任务,处于空闲状态的目标线程允许执行包括调用任务在内的任一任务;
第四调整单元,用于在将执行结果作为数据处理请求对应的响应结果返回至目标客户端之后,在目标线程的运行状态为占用状态,且运行负载已低于目标阈值的情况下,将目标线程的运行状态调整为空闲状态。
具体实施例可以参考上述数据处理方法中所示示例,本示例中在此不再赘述。
根据本发明实施例的又一个方面,还提供了一种用于实施上述数据处理方法的电子设备,如图15所示,该电子设备包括存储器1502和处理器1504,该存储器1502中存储有计算机程序,该处理器1504被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取在目标客户端中触发的数据处理请求,其中,数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,目标协议类型为目标存储空间对应的协议类型,第一参考数据用于表示执行目标操作所需调用的目标函数的索引信息,第一参考数据对应的协议类型不同于目标协议类型;
S2,按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据;
S3,按照第二参考数据查找目标函数,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作;
S4,获取执行目标操作后生成的执行结果,并将执行结果作为数据处理请求对应的响应结果返回至目标客户端。
可选地,本领域普通技术人员可以理解,图15所示的结构仅为示意,电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图15其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图15中所示更多或者更少的组件(如网络接口等),或者具有与图15所示不同的配置。
其中,存储器1502可用于存储软件程序以及模块,如本发明实施例中的数据处理方法和装置对应的程序指令/模块,处理器1504通过运行存储在存储器1502内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据处理方法。存储器1502可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1502可进一步包括相对于处理器1504远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1502具体可以但不限于用于存储数据处理请求、第一参考数据、第二参考数据以及执行结果等信息。作为一种示例,如图15所示,上述存储器1502中可以但不限于包括上述数据处理装置中的第一获取单元1402、转换单元1404、查找单元1406及第二获取单元1408。此外,还可以包括但不限于上述数据处理装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1506用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1506包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1506为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1508,用于显示上述数据处理请求、第一参考数据、第二参考数据以及执行结果等信息;和连接总线1510,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(Peer To Peer,简称P2P)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述数据处理方法,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取在目标客户端中触发的数据处理请求,其中,数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,目标协议类型为目标存储空间对应的协议类型,第一参考数据用于表示执行目标操作所需调用的目标函数的索引信息,第一参考数据对应的协议类型不同于目标协议类型;
S2,按照目标协议类型的类型指示信息将第一参考数据转换为第二参考数据;
S3,按照第二参考数据查找目标函数,并调用查找出的目标函数来对目标存储空间中的存储数据执行目标操作;
S4,获取执行目标操作后生成的执行结果,并将执行结果作为数据处理请求对应的响应结果返回至目标客户端。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (15)
1.一种数据处理方法,其特征在于,包括:
获取在目标客户端中触发的数据处理请求,其中,所述数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,所述数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,所述目标协议类型为所述目标存储空间对应的协议类型,所述第一参考数据用于表示执行所述目标操作所需调用的目标函数的索引信息,所述第一参考数据对应的协议类型不同于所述目标协议类型;
按照所述目标协议类型的类型指示信息将所述第一参考数据转换为第二参考数据;
按照所述第二参考数据查找所述目标函数,并调用查找出的所述目标函数来对所述目标存储空间中的存储数据执行所述目标操作;
获取执行所述目标操作后生成的执行结果,并将所述执行结果作为所述数据处理请求对应的响应结果返回至所述目标客户端。
2.根据权利要求1所述的方法,其特征在于,所述按照所述目标协议类型的类型指示信息将所述第一参考数据转换为第二参考数据,包括:
按照所述目标协议类型的类型指示信息确定所述目标存储空间对应的协议类型;
在获取到所述第一参考数据对应的初始协议类型的情况下,获取属于所述初始协议类型的数据与属于所述目标协议类型的数据之间的映射关系;
确定与所述第一参考数据之间具有所述映射关系的所述第二参考数据。
3.根据权利要求2所述的方法,其特征在于,所述确定与所述第一参考数据之间具有所述映射关系的所述第二参考数据,包括:
获取所述第一参考数据中携带有的N个第一子数据,以及每个所述第一子数据在所述第二参数数据中的排序信息,其中,N为大于等于1的整数;
确定与所述N个第一子数据之间具有所述映射关系的M个第二子数据,其中,M为大于等于1的整数;
基于所述排序信息对所述M个第二子数据进行整合处理,以确定所述第二参考数据。
4.根据权利要求1所述的方法,其特征在于,所述按照所述第二参考数据查找所述目标函数,包括:
获取所述第二参考数据中携带的目标索引标识,其中,所述目标索引标识与所述目标函数在所述目标函数池中的存储标识相对应;
按照所述目标索引标识在所述目标函数池中查找所述目标函数。
5.根据权利要求4所述的方法,其特征在于,所述按照所述目标索引标识在所述目标函数池中查找所述目标函数,包括以下至少之一:
按照第一索引标识查找属于目标函数类型的所述目标函数,其中,所述第一索引标识与所述目标函数在所述目标函数池中的类型存储标识相对应;
按照第二索引标识查找与目标函数编码对应的所述目标函数,其中,所述第二索引标识与所述目标函数在所述目标函数池中的编码存储标识相对应。
6.根据权利要求1至5中任一项所述的方法,其特征在于,在所述获取在目标客户端中触发的数据处理请求之后,包括:
确定所述数据处理请求中携带的序列数据,其中,所述序列数据为对所述目标协议类型的类型指示信息以及所述第一参考数据进行序列化处理后获得的、允许网络传输的二进制数据;
对所述序列数据进行反序列化处理,以获得可识别的所述目标协议类型的类型指示信息以及所述第一参考数据。
7.根据权利要求1至5中任一项所述的方法,其特征在于,所述获取执行所述目标操作后生成的执行结果,包括以下至少之一:
在所述目标操作执行完成的情况下,生成第一处理结果,其中,所述第一处理结果用于表示所述目标操作已执行成功;
在所述目标操作执行中断的情况下,生成第二处理结果,其中,所述第二处理结果用于表示所述目标操作已执行失败;
在所述目标操作执行完成/中断的情况下,生成第三处理结果,其中,所述第三处理结果用于表示所述目标操作关联的执行日志。
8.根据权利要求1至5中任一项所述的方法,其特征在于,
在所述调用查找出的所述目标函数来对所述目标存储空间中的存储数据执行所述目标操作之后,包括:将目标线程的运行状态调整为占用状态,其中,所述目标线程用于执行所述目标函数的调用任务,处于所述占用状态的所述目标线程禁止执行所述调用任务外的任一任务;
在所述将所述执行结果作为所述数据处理请求对应的响应结果返回至所述目标客户端之后,包括:将所述目标线程的运行状态调整为空闲状态,其中,处于所述空闲状态的所述目标线程允许执行包括所述调用任务在内的任一任务。
9.根据权利要求1至5中任一项所述的方法,其特征在于,
在所述调用查找出的所述目标函数来对所述目标存储空间中的存储数据执行所述目标操作之后,包括:在目标线程的运行状态为空闲状态,且所述目标线程的运行负载已达到目标阈值的情况下,将所述目标线程的运行状态从所述空闲状态调整为占用状态,其中,所述目标线程用于执行所述目标函数的调用任务,处于所述占用状态的所述目标线程禁止执行所述调用任务外的任一任务,处于所述空闲状态的所述目标线程允许执行包括所述调用任务在内的任一任务;
在所述将所述执行结果作为所述数据处理请求对应的响应结果返回至所述目标客户端之后,包括:在所述目标线程的运行状态为所述占用状态,且所述运行负载已低于所述目标阈值的情况下,将所述目标线程的运行状态调整为所述空闲状态。
10.一种数据处理装置,其特征在于,包括:
第一获取单元,用于获取在目标客户端中触发的数据处理请求,其中,所述数据处理请求用于请求对目标存储空间中的存储数据执行目标操作,所述数据处理请求中携带有目标协议类型的类型指示信息以及第一参考数据,所述目标协议类型为所述目标存储空间对应的协议类型,所述第一参考数据用于表示执行所述目标操作所需调用的目标函数的索引信息,所述第一参考数据对应的协议类型不同于所述目标协议类型;
转换单元,用于按照所述目标协议类型的类型指示信息将所述第一参考数据转换为第二参考数据;
查找单元,用于按照所述第二参考数据查找所述目标函数,并调用查找出的所述目标函数来对所述目标存储空间中的存储数据执行所述目标操作;
第二获取单元,用于获取执行所述目标操作后生成的执行结果,并将所述执行结果作为所述数据处理请求对应的响应结果返回至所述目标客户端。
11.根据权利要求10所述的装置,其特征在于,所述转换单元,包括:
第一确定模块,用于按照所述目标协议类型的类型指示信息确定所述目标存储空间对应的协议类型;
第一获取模块,用于在获取到所述第一参考数据对应的初始协议类型的情况下,获取属于所述初始协议类型的数据与属于所述目标协议类型的数据之间的映射关系;
第二确定模块,用于确定与所述第一参考数据之间具有所述映射关系的所述第二参考数据。
12.根据权利要求11所述的装置,其特征在于,所述第二确定模块,包括:
获取子模块,用于获取所述第一参考数据中携带有的N个第一子数据,以及每个所述第一子数据在所述第二参数数据中的排序信息,其中,N为大于等于1的整数;
第一确定子模块,用于确定与所述N个第一子数据之间具有所述映射关系的M个第二子数据,其中,M为大于等于1的整数;
第二确定子模块,用于基于所述排序信息对所述M个第二子数据进行整合处理,以确定所述第二参考数据。
13.根据权利要求10所述的装置,其特征在于,所述查找单元,包括:
第二获取模块,用于获取所述第二参考数据中携带的目标索引标识,其中,所述目标索引标识与所述目标函数在所述目标函数池中的存储标识相对应;
查找模块,用于按照所述目标索引标识在所述目标函数池中查找所述目标函数。
14.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至9任一项中所述的方法。
15.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至9任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110322547.3A CN115129708A (zh) | 2021-03-25 | 2021-03-25 | 数据处理方法、装置和存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110322547.3A CN115129708A (zh) | 2021-03-25 | 2021-03-25 | 数据处理方法、装置和存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115129708A true CN115129708A (zh) | 2022-09-30 |
Family
ID=83374967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110322547.3A Pending CN115129708A (zh) | 2021-03-25 | 2021-03-25 | 数据处理方法、装置和存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115129708A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541015A (zh) * | 2023-05-15 | 2023-08-04 | 上海携宁计算机科技股份有限公司 | 一种后端存储方法、装置、服务器及存储介质 |
-
2021
- 2021-03-25 CN CN202110322547.3A patent/CN115129708A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116541015A (zh) * | 2023-05-15 | 2023-08-04 | 上海携宁计算机科技股份有限公司 | 一种后端存储方法、装置、服务器及存储介质 |
CN116541015B (zh) * | 2023-05-15 | 2024-03-19 | 上海携宁计算机科技股份有限公司 | 一种后端存储方法、装置、服务器及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7463544B2 (ja) | ブロックチェーンメッセージ処理方法、装置、コンピュータデバイスおよびコンピュータプログラム | |
US20240204978A1 (en) | Interface for digital operator platform including response caching | |
CN111447103B (zh) | 虚拟设备的管理系统及方法、电子设备及介质 | |
WO2020173080A1 (zh) | 调用链信息查询方法以及设备 | |
US9350682B1 (en) | Compute instance migrations across availability zones of a provider network | |
CN110083455B (zh) | 图计算处理方法、装置、介质及电子设备 | |
CN105554065A (zh) | 处理报文的方法、转换单元和应用单元 | |
CN109547524B (zh) | 基于物联网的用户行为存储方法、装置、设备及存储介质 | |
CN111641676B (zh) | 一种第三方云监控服务的构建方法及装置 | |
WO2022063032A1 (zh) | 一种面向分布式系统的故障信息关联上报方法及相关设备 | |
US8543680B2 (en) | Migrating device management between object managers | |
Kim et al. | Human-centric storage resource mechanism for big data on cloud service architecture | |
CN114338650A (zh) | 文件传输方法、装置、电子设备及可读存储介质 | |
CN111984849A (zh) | 一种信息查询方法、装置、设备及介质 | |
CN115129708A (zh) | 数据处理方法、装置和存储介质及电子设备 | |
CN114567571B (zh) | 性能测试方法、装置、电子设备和计算机可读存储介质 | |
IL268670A (en) | Automatic detection of server clusters | |
US11637737B2 (en) | Network data management framework | |
CN113986835A (zh) | FastDFS分布式文件的管理方法、装置、设备及存储介质 | |
JP6412641B2 (ja) | 通信リンクの送信方法、装置及び端末 | |
CN108733805B (zh) | 文件交互方法、系统、计算机设备和存储介质 | |
JP2022530953A (ja) | 管理デバイスによってリモートデバイスを管理する方法 | |
CN114945023B (zh) | 一种网络连接复用方法、装置、设备及介质 | |
CN117632445B (zh) | 请求处理方法以及装置、任务执行方法以及装置 | |
CN110830531B (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 |