数据处理的方法、数据处理系统、终端及存储介质与流程

文档序号:33713117发布日期:2023-04-01 01:08阅读:47来源:国知局
1.本技术涉及数据处理
技术领域
:,特别是涉及一种数据处理的方法、数据处理系统、终端及存储介质。
背景技术
::2.随着技术的进步,针对结构化数据的分析技术得到了普遍应用,同时,对图像和视频数据的分析技术也得到了广泛普及。然而,针对这些场景开发相应的视频解析算法和业务代码。这样做虽然能实现功能目标,但有明显的弊端,例如代码可复用性差,不同场景下相似的数据处理逻辑,往往需要复制或重复开发相关代码。技术实现要素:3.本技术提供一种数据处理的方法、数据处理系统、终端及存储介质。4.其中,本技术提供的一种数据处理的方法,包括:接收sql任务指令,sql任务指令中包括第一标识和第二标识,第一标识用于指示待进行数据处理的目标列表,第二标识用于指示对目标列表进行数据处理的数据处理模块;对sql任务指令进行解析,基于第一标识获取待处理的目标列表以及基于第二标识确定数据处理模块;利用数据处理模块对目标列表进行数据处理,得到目标列表的数据处理结果。5.本技术提供一种数据处理系统,该数据处理系统用于处理如上述的数据处理方法,该数据处理系统包括至少一种计算框架、元数据管理层及调度框架;其中,元数据管理层用于管理目标列表;每一计算框架用于对结构化数据和目标列表进行数据处理;调度框架用于接收并解析用户的sql任务指令,从元数据管理层中确定目标列表的存储位置以及用于对目标列表进行数据处理的计算框架。6.本技术提供一种终端设备,终端设备包括处理器、与处理器连接的存储器,其中,存储器存储有程序指令;处理器用于执行存储器存储的程序指令以实现上述的数据处理方法。7.本技术提供一种计算机可读存储介质,存储介质存储有程序指令,程序指令被处理器执行时实现上述的数据处理方法。8.本技术通过利用用户自定义函数对数据处理模块进行封装,以便能够利用sql指令调用对应的数据处理模块对目标列表进行数据处理,无需为每个功能单独编写对应的代码,实现了代码的复用。另外,部分目标列表可以目标图像对应的列表,该列表由对应目标图像的相关信息映射得到,使得数据处理模块能够对包含目标图像的相关信息的列表进行处理,从而实现了利用sql指令对目标图像的相关信息进行数据处理。9.另外,因为已经将目标图像的相关信息映射为列表,故后续能够同其他结构化数据进行关联处理。附图说明10.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。11.图1是本技术提供的数据处理方法一实施例的流程示意图;12.图2是图1中s1之前步骤的流程示意图;13.图3是图1中s3一子步骤的流程示意图;14.图4是图1中s3另一步骤的流程示意图;15.图5是图1中s2子步骤的另一实施例流程示意图;16.图6是本技术提供的数据处理系统一实施例的结构示意图;17.图7是本技术提供的终端设备一实施例的结构示意图;18.图8是本技术提供的计算机存储介质一实施例的结构示意图。具体实施方式19.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。20.在申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。21.本技术实施例中的步骤并不一定是按照所描述的步骤顺序进行处理,可以按照需求有选择的将步骤打乱重排,或者删除实施例中的步骤,或者增加实施例中的步骤,本技术实施例中的步骤描述只是可选的顺序组合,并不代表本技术实施例的所有步骤顺序组合,实施例中的步骤顺序不能认为是对本技术的限制。22.本技术中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法或设备固有的其它步骤或单元。23.另外,本技术中尽管多次采用术语“第一”、“第二”等来描述各种数据(或各种应用或各种指令或各种操作)等,不过这些数据(或应用或指令或操作)不应受这些术语的限制。这些术语只是用于区分一种数据(或应用或指令或操作)和另一种数据(或应用或指令或操作)。24.结构化数据是一种可以使用关系型数据库表示和存储,并可以用二维表来逻辑表达实现的数据。25.半结构化数据是结构化数据的一种形式,其并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层,数据的结构和内容混在一起,没有明显的区分,其中html文档,json,xml和一些nosql数据库属于半结构化数据。26.非结构化数据是没有固定结构的数据,其包括所有格式的办公文档、文本、图片、xml、html、各类报表、图像和音频/视频信息等等都属于非结构化数据。其中,视图数据为视频和图像数据,是一类典型的非结构化数据。27.本技术提出的数据处理方法详细请参见图1,图1是本技术提供的数据处理方法一实施例的流程示意图。28.如图1所示,本技术提供的数据处理方法可以包括:29.s1,接收sql任务指令,sql任务指令中包括第一标识和第二标识,第一标识用于指示待进行数据处理的目标列表,第二标识用于指示对目标列表进行数据处理的数据处理模,数据处理模块由用户自定义函数进行封装得到。30.sql任务指令指的是通过sql语言编写的任务指令。具体地,数据处理系统接收用户发送的sql指令,sql指令信息中包括用于指示待进行数据处理的目标列表的第一标识和用于指示对目标列表进行数据处理的数据处理模块的第二标识。31.一些实施例中,sql任务指令中还包括第三标识。第三标识用于指示待与第一标识对应的列表进行关联分析的其他列表。其他列表包括结构化数据对应的列表和/或至少一张目标图像对应的列表。可以理解地,其他列表可以为结构化数据的列表,也可以为视图数据对应的列表。在执行s1时,数据处理系统还会获取第三标识对应的其他列表。32.其中,目标列表包括结构化数据对应的列表和/或至少一张目标图像对应的列表。至少一张目标图像对应的列表分别由各目标图像的相关信息映射得到。可以理解地,目标列表可以为结构化数据对应的列表,也可以为视图数据对应的列表。33.可选地,各目标图像的相关信息可以为各目标图像对应的像素点信息、图像标识信息、图像的存储地址中的一者或多者信息,也可以为经过特征提取后各目标图像的特征信息,此处不做限定。34.其中,数据处理模块由用户自定义函数(userdefinedfunction,udf)进行封装得到。可选地,数据处理模块可以由用户自定义聚合函数封装得到(user-definedaggregatefunction,udaf)。可选地,数据处理模块可以由用户自定义表生成函数封装得到(user-definedtable-generatingfunction,udtf)。可以理解地,单个数据处理模块可以执行至少一个数据处理功能。可选地,单个数据处理模块可以执行图片特征提取、图片比对、图片编解码、图片裁剪、视频解析、视频编解码中的一个或多个功能,此处不做限定。35.进一步地,数据处理模块的数量可以为多个,其中至少部分数据处理模块由不同的大数据框架中进行二次接口封装得到,以便能够基于各大数据框架对应的sql指令调用对应的数据处理模块进行数据处理。具体地,部分数据处理模块可以适配不同的大数据框架。示例性地,某一数据模块适配spark、flink、hadoop、storm等大数据框架,可以在spark、flink、hadoop、storm等大数据框架下对目标列表进行指定的数据处理操作。36.一些实施例中,用户可以根据实际场景需要,增加新的数据处理模块。可以理解地,新增的数据处理模块可以为用户自行编写或是用户从其他数据处理系统中所导出的。37.s2,对sql任务指令进行解析,基于第一标识获取待处理的目标列表以及基于第二标识确定数据处理模块。38.具体地,数据处理系统解析用户发送的sql任务指令,确定任务指令中第一标识对应的待执行处理操作的目标列表,并确定任务指令中第二标识对应的数据处理模块。39.可以理解地,待执行处理操作的目标列表可以为多个,数据处理模块也可以为多个。40.如上述,至少部分数据处理模块可以由不同的大数据框架进行二次接口封装得到,因此,在接收到sql指令之后,先判断该sql指令对应的大数据框架,然后使用该大数据框架对应的方式对sql指令进行解析,确定第一标识和第二标识。41.s3,利用数据处理模块对目标列表进行数据处理,得到目标列表的数据处理结果。42.具体地,数据处理系统利用所确定的数据处理模块,对所确定的目标列表进行数据处理,得到目标列表对应的处理结果。43.可选地,数据处理系统对确定的目标列表中的视图数据进行数据处理,可以包括提取视图数据中的特征信息、比对视图数据中的图像信息、对视图数据中的图像和/或视频进行编解码、解析视图数据中的视频信息等,此处不做限定。44.示例性地,s2所确定的目标列表包含了相机拍摄得到的人脸视图数据对应的列表和结构化数据中身份证的人脸特征值对应的列表,数据处理系统通过对人脸视图数据对应的列表进行特征提取操作,得到的人脸特征视图数据列表与身份证的人脸特征对应的结构化数据列表进行比对,实现非结构化的视图数据与结构化数据的融合分析。45.上述方案,利用用户自定义函数对数据处理模块进行封装,以便能够利用sql指令调用对应的数据处理模块对目标列表进行数据处理,无需为每个功能单独编写对应的代码,实现了代码的复用。另外,部分目标列表可以目标图像对应的列表,该列表由对应目标图像的相关信息映射得到,使得数据处理模块能够对包含目标图像的相关信息的列表进行处理,从而实现了利用sql指令对目标图像的相关信息进行数据处理。46.请参阅图2,图2是图1中s1之前步骤的流程示意图。47.如图2所示,s1之前步骤可以包括:48.s11,获取至少一张目标图像。49.一些实施例中,数据处理系统获取得到至少一张目标图像。50.可选地,目标图像可以为图像采集设备拍摄得到的图像。51.可选地,目标图像可以为图像采集设备从拍摄得到的视频中截取得到。52.s12,将各目标图像的相关信息分别映射成目标列表,各列表中包括对应目标图像的标识信息、图像数据。53.一些实施例中,数据处理系统对各目标图像进行处理,将各目标图像的相关信息分别映射成对应的目标列表。54.可选地,各目标图像的相关信息分别映射成目标列表可以是将各目标图像分别包含的各像素点数据分别映射成目标列表。55.可选地,各目标图像的相关信息分别映射成目标列表可以是将各目标图像的图像特征数据所对应的像素点数据分别映射成目标列表。可选地,还可以是将目标图像的存储地址和目标图像的标识与像素点数据一同映射成目标列表。56.其中,各列表中包括对应目标图像的标识信息和视图数据的内容。示例性地,视图数据的内容包括视图数据的标识信息、图片二进制内容或视频二进制内容等。57.一些实施例中,数据处理系统将各视图数据映射成列表,便于视图处理系统在后续步骤中以处理普通列表的方式对上述视图数据进行处理。进一步地,已映射成列表的视图数据可以更方便地与其他结构化数据进行关联分析。58.示例性地,各列表中还包含聚合字段,其中,聚合字段用于自定义表值聚合函数(user-definedtableaggregatefunctions,udtagg)的聚合键。59.例如,某张映射而成的目标列表可以如下所示。60.序号图片唯一标志图片二进制内容聚合键1id100000102id210001003id201100104id3111100161.上述方案,一方面,将非结构化的视图数据转换成对应的结构化数据,便于与目标结构化数据进行分析,另一方面,无需在视图数据传入视图处理系统前额外对视图数据进行预处理。62.请参阅图3,图3是图1中s3一子步骤的流程示意图。63.s31,将各目标列表进行聚合,得到至少一张最终列表,其中,最终列表数量小于目标列表数量。64.其中,目标列表包含对应目标图像的标识信息、图像数据。65.具体地,数据处理系统将各目标列表进行聚合,得到至少一张最终列表。66.示例性地,数据处理系统将多张包含有视图数据目标列表进行聚合,得到至少一张的最终列表。其中,最终列表中包括各视图数据的内容。示例性地,最终列表包括各视图数据的二进制内容。67.其中,步骤s31由数据处理模块执行。68.一些实施例中,步骤s31中的数据处理模块可以为自定义表值聚合函数(user-definedaggregatefunction,udtagg),其中,自定义表值聚合函数可以将一个含有至少一行和至少一列的表格聚合成另一个含有多行多列的表格。69.例如,最终列表为合并后包含多种饮料名称的表格,如下所示,该表有3列,分别为标识、名称和价格,共有5行信息。70.标识名称价格1拿铁62牛奶33摩卡54绿茶85红茶471.若需要找到价格最高的两种饮料,可以通过调用自定义表值聚合函数,该函数遍历所有5行数据,生成一个包含2行数据(名称及价格)的表格结果,如下表所示。72.名称价格拿铁6绿茶873.s32,对至少一张最终列表进行目标数据处理,得到关于各目标列表的数据处理结果。74.一些实施例中,数据处理系统对至少一张最终列表中的内容进行处理,按照大数据处理框架的接口规范,将数据处理结果整理成最终的返回结果,即关于各目标列表的数据处理结果。换言之,具体如何实现进行数据处理的方式此处不做限定。75.其中,s32的子步骤可以包括:76.s321,对于每一最终列表,并行对最终列表内记载的多张目标图像的图像数据进行特征值提取,得到各目标图像的特征值。77.可以理解地,数据处理系统对于在最终列表中记载的多张目标图像,采用单次输入单张目标图像的图像数据进行特征值提取方式,耗时较长。为了提升数据处理系统的工作效率,数据处理系统通过并行处理的方式同时对最终列表内记载的多张目标图像进行特征值提取,能够提升数据处理系统的性能。78.可选地,数据处理系统对最终列表内记载的多张目标图像的图像数据进行特征值提取的步骤可以由图形处理器(graphicprocessunit,gpu)执行。79.s322,基于各目标图像的特征值进行图像处理,得到各目标图像的图像处理结果。80.具体地,数据处理系统对各目标图像的特征值进行相应的图像处理操作,得到对应的图像处理结果,其中图像处理操作可以包括执行图像形态学处理、图像增强、图像复原、图像压缩、图像编码等,此处不做限定。81.在执行s32的步骤之前,可以具体执行以下步骤:82.s311,确定当前已有的目标列表的数量是否大于或等于预设数量。83.可以理解地,若一次只能输入单条包含视图数据的目标列表记录、输出单条对应的目标列表结果,则耗时较长,为了提升数据处理系统的工作效率,数据处理系统通过并行处理的方式同时处理若干条目标列表,能够提高数据处理系统的性能。84.其中,预设数量为大于或等于1的整数值。可选地,预设数量可以为16、32、64等,此处不做限定。85.一些实施例中,s311的判断为是,跳转至s32。86.一些实施例中,s311的判断为否,跳转至s312。87.s312,响应于当前已有的目标列表的数量小于预设数量,继续获取目标列表,直至已有的目标列表数量大于或等于预设数量。88.一些实施例中,数据处理系统将获得的目标列表存入缓存区中,继续获取目标列表,直到缓存区中的目标列表数量大于或等于预设数量。89.一些实施例中,当目标列表数量大于或等于预设数量,跳转至s32。90.在执行s31的步骤之前,还可以具体执行以下子步骤:91.s21,判断目标数据处理模块是否已进行初始化。92.一些实施例中,目标数据处理模块的初始化操作耗时较长,目标数据处理模块在完成单张目标列表的处理后,重新执行初始化。因此单个目标数据处理模块在处理一个目标列表时最多只执行一次初始化,可以提高目标列表的处理效率。示例性地,在缓存最先接收到的目标列表进行一次初始化之后,后续在接收到需要聚合到一张最终列表的其他目标列表之后不再对该目标数据处理模块进行初始化。93.数据处理系统判断当前目标数据处理模块是否已执行初始化操作。94.若目标数据处理模块已进行初始化,跳转至s22。95.若目标数据处理模块未进行初始化,目标数据处理模块执行初始化步骤,再跳转至s22。96.示例性地,初始化步骤可以包括设置图形处理器(graphicprocessunit,gpu)相关参数、初始化全局内存、加载公共配置等,此处不做限定。示例性地,全局内存可以包括:设置图形处理器用于目标数据处理模块执行的内存大小等。公共配置可以包括:端口配置、设置故障重启策略等。97.s22,响应于数据处理模块已进行一次初始化,则执行将各目标列表进行聚合,得到至少一张目标列表的步骤。98.一些实施例中,若数据处理模块已进行一次初始化,数据处理系统跳转至s22,执行将各目标列表进行聚合,得到至少一张目标列表的步骤。99.请参阅图4,图4是图1中s3一子步骤的流程示意图。100.s33,判断目标列表中各内容的数据处理是否成功。101.一些实施例中,数据处理系统对目标列表中的各内容采用批量方式进行数据处理,因此需要判断目标列表中各行视图数据内容的数据处理是否成功。示例性地,数据处理为去噪处理,判断目标列表中各内容的数据处理是否成功的方式可以是:比较视图数据执行图像去噪前的拉普拉斯梯度函数值与执行图像去噪的拉普拉斯梯度函数值的差异值。若目标列表中某行的差异值小于预设差异阈值,则该行数据处理失败;若目标列表中某行的差异值大于或等于预设差异阈值,则该行数据处理成功。若数据处理为其他处理,确定数据处理是否成功的方式可以由用户根据需求自定义,此处不对如果判断数据处理是否成功的方式做具体限定。102.若目标列表中某条内容的数据处理成功,跳转至s34。103.若目标列表中某条内容的数据处理失败,跳转至s35。104.s34,响应于内容的数据处理成功,生成用于表示成功的第四标识。105.一些实施例中,目标列表中某条内容的数据处理成功,数据处理系统对该条内容生成了用于表示成功的第四标识。106.s35,响应于内容的数据处理失败,生成用于表示失败的第五标识以及确定导致内容数据处理失败的原因。107.一些实施例中,目标列表中某条内容的数据处理失败,数据处理系统对该条内容生成了用于表示失败的第五标识,以及确定导致该条内容处理失败的原因。108.示例性地,数据处理系统在s34和s35所输出的表示成功的第四标识或表示失败第五标识,可以以图片处理错误码的形式表示。其中图片处理错误码至少包括处理成功和处理失败的标识,进一步还包括具体的失败原因代码,以便用户了解具体处理出错原因。109.s36,将数据处理结果、各内容的第四标识或第五标识及第五标识对应的原因发送至预设接收方。110.一些实施例中,数据处理系统将视图数据处理结果、各内容的第四标识或第五标识及第五标识对应的原因以计算结果表的形式发送至预设接收方。111.其中,计算结果表至少包含图片唯一标识、图片处理结果和错误码三个字段。可以理解地,错误码为上述的图片处理错误码,此处不作赘述。112.例如,计算结果表可以如下表所示:113.图片唯一标识图片处理结果错误码id1feature1e1114.s321的子步骤还可以包括:115.s3211,将各最终列表记载的目标图像的特征值与其他列表进行匹配,得到若干匹配结果。116.一些实施例中,最终列表中的视图数据的特征值与其他列表进行匹配的方式可以是计算二者的相似度,或对其他列表的数据进行特征提取,计算两者特征值的相似度等,具体如果进行匹配的方式可根据具体数据处理的需求确定,此处不做具体限定。本实施例以确定二者之间的相似度为例。为了建立最终列表中的视图数据与其他列表的关联关系,数据处理系统需要确定视图数据的特征值与其他列表的相似度。117.示例性地,其他列表中存储了相应的图像数据的特征值,数据处理系统通过比对最终列表所记载的视图数据的特征值和其他列表中存储的相应图像数据的特征值之间的相似度,从而确定视图数据与其他列表的对应匹配关系。118.可选地,视图数据的特征值与其他列表中存储的相应图像数据的特征值相似度比较可以使用汉明距离、余弦相似度、欧氏距离、曼哈顿距离、马氏距离等,此处不做限定。119.一些实施例中,最终列表中的视图数据的特征值与其他列表的相似度大于或等于相似度阈值,跳转至s3212。120.一些实施例中,最终列表中的视图数据的特征值与其他列表的相似度小于相似度阈值,跳转至s3213。121.s3212,确定目标匹配结果对应的其他列表的数据与对应的最终列表记载的目标图像匹配,目标匹配结果为满足预设匹配条件对应的匹配结果。122.一些实施例中,最终列表中视图数据的特征值和其他列表中存储的相应图像数据的特征值之间的相似度大于或等于相似度阈值,数据处理系统确定当前的最终列表与其他列表匹配。123.s3213,确定其他匹配结果对应的其他列表的数据与对应的最终列表记载的目标图像不匹配,其他匹配结果为不满足预设匹配条件对应的匹配结果。124.一些实施例中,最终列表中视图数据的特征值和结构化数据中存储的相应图像数据的特征值之间的相似度小相似度阈值,数据处理系统确定当前的最终列表与其他列表不匹配。125.s2的子步骤还可以包括:126.s24,为各目标列表中的各目标图像的标识信息建立连接,连接用于关联各标识信息对应的目标图像。127.具体地,对于各目标列表的数据,根据不同的数据定义对应的连接(connector)。示例性地,对于一个以超文本传输协议(hypertexttransferprotocol,http)方式提供图像数据下载的数据处理系统,在连接中,需要调用http接口以实现目标图像下载的功能。128.具体地,数据处理系统为各目标列表中的各目标图像的标识信息建立连接,实现对目标列表中指定的目标图像的关联。129.示例性地,各目标图像的标识信息为名称信息,数据处理系统关联各目标图像及其名称信息。130.一些实施例中,上述connector和udf都基于spark、flink等开源大数据计算框架进行扩展。兼容开源生态,充分利用已有的大数据计算设施,简化视图分析过程。131.上述connector和udf可按照用户需要自行扩展,因此具有良好的扩展性。同时,udf在使用时也可以根据业务灵活组合,代码具备很高的重用性。实现视图核心处理逻辑与业务的解耦合。132.s25,接收用户的sql查询指令,查询指令中包括待查询目标图像的标识信息。133.具体地,数据处理系统接收用户发送的sql查询指令,其中查询指令包含了待查询目标图像的标识信息。示例性地,用户发送的sql查询指令中包含了待查询目标图像的名称信息。134.s26,基于连接,显示待查询目标图像的标识信息对应的图像和/或图像数据。135.具体地,数据处理系统根据关联信息,显示待查询目标图像或对应的图像数据。136.示例性地,数据处理系统根据名称信息与待查询目标图像的关联,显示待查询目标图像或对应的图像数据。137.可选地,图像数据可以为图像的特征信息,此处不做限定。138.请参见图4,图4是图1中s2子步骤的另一实施例流程示意图。139.如图4所示,s2子步骤可以包括:140.s41,用户自定义函数被调用。141.可选地,用户自定义函数调用之前可以执行初始化步骤。示例性地,初始化步骤可以包括设置图形处理器(graphicprocessunit,gpu)相关参数、初始化全局内存、加载公共配置等,此处不做限定。142.其中,用户自定义函数对应为上文的数据处理模块,此处不再赘述。143.s42,判断遍历符合条件的记录是否到达末尾。144.若是,跳转s48。145.若否,跳转s43。146.一些实施例中,数据处理系统判断用户自定义函数符合处理条件的列表内容是否已到达列表末端,若是则说明当前的用户自定义函数完成对列表内容的处理;若否则说明当前的用户自定义函数仍未完成对列表内容的处理。147.s43,传入一条记录。148.传入一条记录可以是接收到需要缓存的视图数据。149.s44,缓存记录信息。150.一些实施例中,数据处理系统获取已映射成列表的视图数据中的一条数据,将该条数据中的图片唯一标识、图片二进制内容传入内存缓存区。151.s45,判断缓存信息是否大于阈值n。152.若是,跳转s46。153.若否,跳转s43。154.判断缓存信息是否大于阈值n的步骤对应上文s211,此处不做赘述。155.s46,调用视图处理算法。156.其中,视图数据处理算法对应上文的数据处理模块,此处不做赘述。157.一些实施例中,数据处理系统对内存缓存区存储的n条视图数据进行视图处理。可选地,视图处理可以包括图片特征提取、图片比对、图片编解码、图片裁剪、视频解析、视频编解码中的一种或多种,此处不做限定。158.其中,数据处理系统对内存缓存区中存储的n条数据进行批量并行处理。159.s47,按照用户自定义函数格式要求整理算法输出。160.按照用户自定义函数格式要求整理算法输出的步骤对应上文s31-s36,此处不做赘述。161.s48,结束。162.一些实施例中,若s41执行了初始化步骤,则执行反初始化步骤,例如数据处理系统关闭、释放在初始化阶段中打开或申请的资源。163.上述方案,利用sql语句对目标图像的相关信息进行数据处理,同时能通过图形计算单元(gpu)加速数据处理过程,提升图像相关信息处理的效率。164.其中,内置常用视图处理udf,并支持gpu计算,使用户能够通过sql方式直接分析视频、图片数据,并可通过gpu加速计算过程,从而能够以sql方式完成视图分析处理,无需过多感知视图分析、gpu计算的繁杂细节。165.另外,将目标图像数据映射成表格,并为其扩展相应的连接,从而能够通过sql语句处理目标图像数据,由于图像数据已映射成表格,也便于与其他结构化数据进行关联分析计算。166.而且,还可以在此基础之上,可以进一步封装出图形化的操作页面。通过较低的使用门槛,最大限度打通不同数据之间的关联计算,并可基于大数据计算框架获得良好的计算性能和扩展能力。同时,通过sql方式编写代码,相比于java/c++方式,也具有更好的维护性、便利性和更短的开发周期。167.请参见图5,图5是本技术提供的数据处理系统一实施例的结构示意图。168.如图5所示,数据处理系统400可以包括元数据管理层41、调度框架42、第一服务器43、第二服务器44、第三服务器45、第一计算框架46、第二计算框架47、第n计算框架48。169.其中,元数据管理层41用于管理视图数据以及结构化数据。170.一些实施例中,对于结构化数据的元数据,元数据管理层41可以直接从数据库或数据仓库系统中读取。在一种实施例中,元数据管理层41可以直接读取hive系统中的元数据。171.一些实施例中,对于视图数据,元数据管理层41需要按照一定规则将视频和/或图片映射成列表。在不同的数据处理系统、不同的使用场景中,列表的结构定义可以不同。172.例如,在一个以超文本传输协议(hypertexttransferprotocol,http)方式提供图片下载的数据处理系统,在元数据管理层41中对应的表结构定义可以为:[0173][0174]其中,调度框架42用于接收用户的指令,从元数据管理层中确定待进行数据处理的结构化数据和视图数据以及对待进行数据处理的结构化数据和视图数据进行数据处理的计算框架。[0175]一些实施例中,对于视图数据而言,调度框架42根据不同的视图数据类型进行定义。[0176]例如,在上述以超文本传输协议方式提供图片下载的数据处理系统中,对应的调度框架42需要调用超文本传输协议接口以完成图片的下载。[0177]第一服务器43包括中央处理单元431和图形处理器432。其中第一服务器43可以为多个,中央处理单元431也可以为多个,图形处理器432亦可以为多个,此处不做限定。[0178]第二服务器44包括中央处理单元441和图形处理器442。其中第二服务器44可以为多个,中央处理单元441也可以为多个,图形处理器442亦可以为多个,此处不做限定。[0179]第三服务器45包括中央处理单元451和图形处理器452。其中第三服务器45可以为多个,中央处理单元451也可以为多个,图形处理器452亦可以为多个,此处不做限定。[0180]其中,第一计算框架46、第二计算框架47、第n计算框架48用于对结构化数据和视图数据进行数据处理。[0181]一些实施例中,第一计算框架46可以有多个,第一计算框架46可以为spark、flink、storm等,此处不做限定。[0182]一些实施例中,第一计算框架46包含了至少一个数据处理模块,用于对视图信息进行分析或处理。数据处理模块完成缓存、计算等步骤后,根据用户指令将结果输出至预设接收方。[0183]其中,预设接收方可以为用户设备(userequipment,ue)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字处理(personaldigitalassistant,pda)、手持设备、计算设备、车载设备、可穿戴设备以及安防系统等。[0184]一些实施例中,第二计算框架47可以有多个,第二计算框架47可以为spark、flink、storm等,此处不做限定。[0185]一些实施例中,第二计算框架47包含了至少一个数据处理模块,用于对视图信息进行分析或处理。数据处理模块完成缓存、计算等步骤后,根据用户指令将结果输出至预设接收方。[0186]一些实施例中,第n计算框架48可以有多个,第n计算框架48可以为spark、flink、storm等,此处不做限定。[0187]一些实施例中,第n计算框架48包含了至少一个数据处理模块,用于对视图信息进行分析或处理。数据处理模块完成缓存、计算等步骤后,根据用户指令将结果输出至预设接收方。[0188]第一计算框架46包括视图处理用户自定义函数461和视图数据数据库驱动462。其中,第一计算框架46可以为大数据计算框架,第一计算框架46可以为多个。其中,视图处理用户自定义函数461对应上文的数据处理模块,此处不做赘述。其中,视图数据数据库驱动462用于读取映射成列表的视图数据内容。[0189]第二计算框架47包括视图处理用户自定义函数471和视图数据数据库驱动472。其中,第二计算框架47可以为大数据计算框架,第二计算框架47可以为多个。其中,视图处理用户自定义函数471对应上文的数据处理模块,此处不做赘述。其中,视图数据数据库驱动472用于读取映射成列表的视图数据内容。[0190]第n计算框架48包括视图处理用户自定义函数481和视图数据数据库驱动482。其中,第n计算框架46可以为大数据计算框架,第n计算框架48可以为多个。其中,视图处理用户自定义函数481对应上文的数据处理模块,此处不做赘述。其中,视图数据数据库驱动482用于读取映射成列表的视图数据内容。[0191]上述方案中的视图数据驱动和用户自定义函数基于多种大数据框架进行扩展,简化分析过程。进一步地,视图数据驱动和用户自定义函数根据用户需要可以自行扩展,同时用户自定义函数在使用时也可以根据业务灵活组合,提升重用性。[0192]请继续参见图6,图6是本技术提供的终端设备一实施例的结构示意图。本技术实施例的终端设备500包括处理器51、存储器52。[0193]该处理器51、存储器52与总线相连,该存储器52中存储有程序指令,处理器51用于执行程序指令以实现上述实施例的数据处理方法。[0194]在本技术实施例中,处理器51还可以称为cpu(centralprocessingunit,中央处理单元)。处理器51可能是一种集成电路芯片,具有信号的处理能力。处理器51还可以是通用处理器、数字信号处理器(dsp,digitalsignalprocess)、专用集成电路(asic,applicationspecificintegratedcircuit)、现场可编程门阵列(fpga,fieldprogrammablegatearray)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器51也可以是任何常规的处理器等。[0195]上述方案,利用用户自定义函数对数据处理模块进行封装,以便能够利用sql指令调用对应的数据处理模块对目标列表进行数据处理,无需为每个功能单独编写对应的代码,实现了代码的复用。另外,部分目标列表可以目标图像对应的列表,该列表由对应目标图像的相关信息映射得到,使得数据处理模块能够对包含目标图像的相关信息的列表进行处理,从而实现了利用sql指令对目标图像的相关信息进行数据处理。[0196]本技术还提供一种计算机存储介质,请继续参阅图7,图7是本技术提供的计算机存储介质一实施例的结构示意图,该计算机存储介质600中存储有程序指令61,该程序指令61在被处理器执行时,用以实现上述实施例的数据处理方法。[0197]上述方案,利用用户自定义函数对数据处理模块进行封装,以便能够利用sql指令调用对应的数据处理模块对目标列表进行数据处理,无需为每个功能单独编写对应的代码,实现了代码的复用。另外,部分目标列表可以目标图像对应的列表,该列表由对应目标图像的相关信息映射得到,使得数据处理模块能够对包含目标图像的相关信息的列表进行处理,从而实现了利用sql指令对目标图像的相关信息进行数据处理。[0198]本技术的实施例以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。[0199]以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,方式利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
:,均同理包括在本技术的专利保护范围内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1