CN115033246A - 数据处理方法以及相关设备 - Google Patents
数据处理方法以及相关设备 Download PDFInfo
- Publication number
- CN115033246A CN115033246A CN202210738873.7A CN202210738873A CN115033246A CN 115033246 A CN115033246 A CN 115033246A CN 202210738873 A CN202210738873 A CN 202210738873A CN 115033246 A CN115033246 A CN 115033246A
- Authority
- CN
- China
- Prior art keywords
- data processing
- data
- jsonobject
- service
- json
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种数据处理方法以及相关设备,可以从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。本实施例可以通过数据源端设置的转换插件,将业务数据转换为jsonObject对象进行逻辑处理,实现对数据处理过程与业务应用程序进行解耦,这样业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,有利于增强对数据处理的灵活度,提高了业务需求响应能力。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种数据处理方法以及相关设备。
背景技术
随着计算机技术的不断发展,利用互联网通信技术进行业务的交互处理逐渐成为主流趋势。在一些业务处理场景中,需要对接外部数据接口获取json格式的业务数据,按照目前的设计,json字符串通过接口接收到后,直接保存在数据库中,如果同步到供业务使用的分析库中,需要将json字符串的内容按照数据库结构进行解析,然后进行同步。
在目前相关技术中,一般采用通过应用进行同步的方式,如果json字符串发生变更,比如增加一个变量或者一个对象,则需要优化编码逻辑并进行版本发布,才能满足需求;而且需求响应时效慢,涉及到对大量历史数据的处理,数据追溯时间较长。
发明内容
本申请实施例提供一种数据处理方法以及相关设备,相关设备可以包括数据处理装置、电子设备、计算机可读存储介质和计算机程序产品,可以增强对数据处理的灵活度,提高业务需求响应能力。
本申请实施例提供一种数据处理方法,包括:
从json报文的数据库中获取json格式的业务数据,其中,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;
通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;
基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;
将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
相应的,本申请实施例提供一种数据处理装置,包括:
获取单元,用于从json报文的数据库中获取json格式的业务数据,其中,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;
转换单元,用于通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;
处理单元,用于基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;
存储单元,用于将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
可选的,在本申请的一些实施例中,所述处理单元可以包括划分子单元、确定子单元和选取子单元,如下:
所述划分子单元,用于基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
确定子单元,用于针对每个对象集合,根据所述对象集合对应的对象类型,确定所述对象集合的逻辑处理流程;
选取子单元,用于基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果,所述数据处理结果包括目标字段对应的业务子数据。
可选的,在本申请的一些实施例中,所述划分子单元具体可以用于获取数据处理模型,所述数据处理模型包括数据划分模块和至少一个对象类型对应的数据处理线路,所述数据处理线路包括至少一个数据处理模块;通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
所述选取子单元具体可以用于根据各个对象集合的逻辑处理流程,确定各个对象集合对应的数据处理线路;针对每个对象集合,通过所述对象集合对应的数据处理线路,对所述对象集合进行字段解析选取处理,得到数据处理结果。
可选的,在本申请的一些实施例中,步骤“通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合”,可以包括:
获取所述数据划分模块对应的操作算子;
识别所述操作算子对应的操作类型;
当所述操作类型为数据划分操作时,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合。
可选的,在本申请的一些实施例中,所述数据处理还包括配置单元,所述配置单元可以用于获取所述JsonObject对象对应的数据处理模型的配置信息;基于所述配置信息,对所述数据处理模型进行解析,生成操作算子,所述操作算子用于指示需要执行的数据处理逻辑。
可选的,在本申请的一些实施例中,步骤“获取数据处理模型”,可以包括:
展示原始数据处理模型的编辑页面,所述编辑页面包括原始数据处理模型,所述原始数据处理模型包括数据划分模块和至少一个对象类型对应的原始数据处理线路;
基于需要处理的JsonObject对象的对象类型业务需求,对所述编辑页面中的原始数据处理模型进行线路更新操作,生成并展示所述数据处理模型。
本申请实施例提供的一种电子设备,包括处理器和存储器,所述存储器存储有多条指令,所述处理器加载所述指令,以执行本申请实施例提供的数据处理方法中的步骤。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现本申请实施例提供的数据处理方法中的步骤。
此外,本申请实施例还提供一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现本申请实施例提供的数据处理方法中的步骤。
本申请实施例提供了一种数据处理方法以及相关设备,可以从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。本实施例可以通过数据源端设置的转换插件,将业务数据转换为jsonObject对象进行逻辑处理,实现对数据处理过程与业务应用程序进行解耦,这样业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,有利于增强对数据处理的灵活度,提高了业务需求响应能力。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的数据处理方法的场景示意图;
图1b是本申请实施例提供的数据处理方法的流程图;
图1c是本申请实施例提供的数据处理方法的说明图;
图2是本申请实施例提供的数据处理方法的另一流程图;
图3是本申请实施例提供的数据处理装置的结构示意图;
图4是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种数据处理方法以及相关设备,相关设备可以包括数据处理装置、电子设备、计算机可读存储介质和计算机程序产品。该数据处理装置具体可以集成在电子设备中,该电子设备可以是终端或服务器等设备。
可以理解的是,本实施例的数据处理方法可以是在终端上执行的,也可以是在服务器上执行,还可以由终端和服务器共同执行的。以上举例不应理解为对本申请的限制。
如图1a所示,以终端和服务器共同执行数据处理方法为例。本申请实施例提供的数据处理系统包括终端10和服务器11等;终端10与服务器11之间通过网络连接,比如,通过有线或无线网络连接等,其中,数据处理装置可以集成在终端中。
其中,终端10,可以用于:从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。其中,终端10可以包括手机、智能电视、平板电脑、笔记本电脑、或个人计算机(PC,Personal Computer)等。终端10上还可以设置客户端,该客户端可以是应用程序客户端或浏览器客户端等等。
其中,服务器11,可以用于:向终端10发送json格式的业务数据。其中,服务器11可以是单台服务器,也可以是由多个服务器组成的服务器集群或云服务器。本申请所公开的数据处理方法或装置,其中多个服务器可组成为一区块链,而服务器为区块链上的节点。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本实施例将从数据处理装置的角度进行描述,该数据处理装置具体可以集成在电子设备中,该电子设备可以是服务器或终端等设备。
如图1b所示,该数据处理方法的具体流程可以如下:
101、从json报文的数据库中获取json格式的业务数据,其中,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据。
其中,json(JavaScript Object Notation,JS对象简谱)是一种轻量级的数据交换格式,它采用完全独立于编程语言的文本格式来存储和表示数据。json报文为json格式的数据信息。
具体地,在json中,对象是一个无序的、键/值对的集合,一个对象以左花括号{开始,以右花括号}结束,左右花括号之间为对象中的若干键/值对。键/值对中,键为字符串类型,而值可以是json中的任意类型,键和值之间需要使用冒号分隔开,不同的键/值对之间需要使用逗号分隔开。
本实施例中,这里的业务数据的数据类型不限。例如,该业务数据可以是征信数据。具体地,业务数据可以以客户为维度,格式为json字符串,不同客户的数据json字符串内容各不相同。比如,业务数据可以是至少一个客户对应的json字符串。
在一些业务处理场景中,需要对接外部业务数据接口获取json格式的业务数据,按照目前的设计,json字符串通过接口接收到后,直接保存在数据库中,如果同步到供业务使用的分析库中,需要将json字符串的内容按照数据库结构进行解析,然后进行同步。
对于目前采用的通过应用进行同步的方式,如果json字符串发生变更,比如增加一个变量或者一个对象,则需要优化编码逻辑并进行版本发布,才能满足需求;而且需求响应时效慢,涉及到对大量历史数据的处理,数据追溯时间较长。
而本申请提供的数据处理方法,可以通过数据源端设置的转换插件,将业务数据转换为jsonObject对象进行逻辑处理,实现对数据处理过程与业务应用程序进行解耦,这样业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,有利于增强对数据处理的灵活度,提高了业务需求响应能力。
102、通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象。
其中,JsonObject对象具体即json字符串中的键值对象。json字符串包括若干键值对,JsonObject对象可以是其中的某个键值对。
具体地,本实施例可以借助kettle工具来对json格式的业务数据进行转换,得到相应的至少一个JsonObject对象。
其中,kettle作为一个端对端的数据集成平台,纯java编写,可以在Windows、Linux、Unix等上运行,数据抽取高效稳定。kettle可以对多种数据源进行抽取(Extraction)、加载(Loading)、数据落湖(Data Lake Injection)、对数据进行各种清洗(Clearing)、转换(Transformation)、混合(Blending),并支持多维联机分析处理(OLAP)和数据挖掘(Data mining)。部分特色功能包括无代码拖拽式构建数据管道、多数据源对接、数据管道可视化、模板化开发数据管道、可视化计划任务等。
其中,Kettle提供了图形用户界面Spoon,允许用户在界面上方便快捷地制作执行流程图,形成transformation脚本文件,transformation脚本文件用来完成针对数据的基础转换。
具体地,Spoon这个工具可以使用图形界面化的操作实现数据转换过程,可以新建转换、作业两种文件。一个作业中可以包含多个转换,主要的业务逻辑就是在转换里完成的,比如数据的清洗,数据的同步,输出文件等。
transformation操作需要将输出数据库中的数据抽取出来,经过相应的转换,将转换后的数据放入输入数据库,具体可以通过描述性的表格实现信息的存储。
103、基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果。
其中,不同JsonObject对象中的键可以不同,可选的,键不同的JsonObject对象,对应的逻辑处理流程可以不同。
可选的,本实施例中,步骤“基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果”,可以包括:
基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
针对每个对象集合,根据所述对象集合对应的对象类型,确定所述对象集合的逻辑处理流程;
基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果,所述数据处理结果包括目标字段对应的业务子数据。
其中,基于JsonObject对象中的键对JsonObject对象进行划分处理,具体可以是键对应的对象类型,对各JsonObject对象进行分类处理,得到不同对象类型对应的对象集合,具体地,一个对象集合中的JsonObject对象的键相同。
比如,JsonObject对象1为关于省份的键值对,JsonObject对象2为关于爱好的键值对,由于键对应的对象类型不同,JsonObject对象1和JsonObject对象2分别属于不同的对象集合。
具体地,每个对象集合可以以表格的形式进行呈现,每个表可以定义一个Java处理逻辑步骤(也即上述实施例中的逻辑处理流程),每个Java处理逻辑步骤对应一个字段选择的输出。比如,对于对象类型为“爱好”的表格(对象集合),可以从中选择输出爱好为“下棋”的字段,并将这些字段(也即目标字段的业务子数据)以表格的形式输出。
可选的,本实施例中,步骤“基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合”,可以包括:
获取数据处理模型,所述数据处理模型包括数据划分模块和至少一个对象类型对应的数据处理线路,所述数据处理线路包括至少一个数据处理模块;
通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
步骤“基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果”,包括:
根据各个对象集合的逻辑处理流程,确定各个对象集合对应的数据处理线路;
针对每个对象集合,通过所述对象集合对应的数据处理线路,对所述对象集合进行字段解析选取处理,得到数据处理结果。
其中,数据处理模型可以是处理业务数据的策略模型;数据处理线路为数据处理模型的模型分支,数据处理线路为进行业务处理的线路,不同数据处理线路对应不同的逻辑处理流程。具体地,数据处理线路可以用于从对应的对象集合中选取目标字段的业务子数据。
其中,通过数据处理线路,对对象集合进行字段解析选取处理,具体可以是通过数据处理线路中包含的各个数据处理模块,对对象集合进行字段解析选取处理,得到数据处理结果。
具体地,该数据处理模型可以是借助kettle工具中的Spoon编辑生成。
可选的,本实施例中,步骤“通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合”,可以包括:
获取所述数据划分模块对应的操作算子;
识别所述操作算子对应的操作类型;
当所述操作类型为数据划分操作时,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合。
可选的,本实施例中,步骤“获取所述数据划分模块对应的操作算子”之前,还可以包括:
获取所述JsonObject对象对应的数据处理模型的配置信息;
基于所述配置信息,对所述数据处理模型进行解析,生成操作算子,所述操作算子用于指示需要执行的数据处理逻辑。
其中,配置信息可以包括业务数据对应的路径信息、所要选取的目标字段、以及处理逻辑等信息。
其中,在进行数据处理前,可以先对数据处理模型进行配置,并将数据处理模型解析和初始化为一系列操作算子,当接收到数据流(即业务数据)时,将按照操作算子的顺序对数据流执行计算分析。其中,操作算子对应各种各样的操作类型,操作类型可以包括数据划分操作、字段选择操作等。
可选的,本实施例中,步骤“获取数据处理模型”,可以包括:
展示原始数据处理模型的编辑页面,所述编辑页面包括原始数据处理模型,所述原始数据处理模型包括数据划分模块和至少一个对象类型对应的原始数据处理线路;
基于需要处理的JsonObject对象的对象类型业务需求,对所述编辑页面中的原始数据处理模型进行线路更新操作,生成并展示所述数据处理模型。
其中,原始数据处理模型可以是业务策略调整前的数据处理模型,数据处理模型为业务策略调整后对应的模型。
在一些实施例中,由于业务策略的调整,业务数据的数据结构发生变化,如json格式的业务数据中的jsonObject对象的对象类型发生变化,则可以通过Spoon可视化流程的设计,基于所调整的对象类型,在编辑页面中对原始数据处理模型中的原始数据处理线路进行相应的更新调整,得到最新业务需求对应的数据处理模型。比如,增加了对象类型“性别”,则可以在原始数据处理模型中增加一条新的数据处理线路——即对象类型“性别”对应的数据处理线路,得到数据处理线路。
可选的,本实施例中,在编辑页面上,数据处理模型中的线程和模块对应的图标可以相当于一个控件,对图标进行操作即可以对图标对应的线程或模块进行操作,其中,操作可以根据实际情况进行设置,本实施例对此不作限制。其中,可以通过对编辑页面中各个控件的操作,来对数据处理模型进行调整。
104、将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
本实施例通过借助kettle工具的流程设计能力和任务管理平台,可以灵活得对数据处理和数据同步进行优化,通过spoon可视化流程设计的方式,可以更直观得体现数据转换逻辑和同步逻辑。具体地,基于本申请提供的数据处理方法,可以跟业务应用进行解耦,业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,而且还可以根据排期投产时间对历史数据进行追溯处理,降低运行风险。另外,对不同业务场景下的复杂数据,可以更好地进行支持。当数据结构发生变化时,可以通过调整spoon核心转换的逻辑,更快得做出反应。当数据源发生变化时,可以通过spoon组件进行灵活设置实现对接。
在一具体实施例中,基于本申请的数据处理方法的数据处理流程的具体过程可以如下:
a.定义数据同步处理工作流,数据源对接json报文所在的数据库,读取数据库中信息后,在流程中加入Java代码逻辑,实现不同数据格式的解析能力。具体地,输入为json字符串,在Java逻辑中将json字符串转换为JsonObject对象,不同的JsonObject对象对应不同的表,将对象变量值对应到表中的字段。每个表定义一个Java处理逻辑步骤,每个步骤对应一个字段选择的输出,通过字段选择输出结果到表输出中,实现一对多的目标库表字段内容插入目的。
b.在任务控制台中,新增同步任务。通过任务参数配置,读取上述定义的数据同步处理工作流。在任务控制台中,也可以查看每次同步的信息,如每次任务调度的起止时间和运行日志等。
如图1c所示,展示的是基于kettle的数据处理模型中核心转换组件设计,具体地,json格式的业务数据可以以描述性表格的形式输入,借助kettle工具来对json格式的业务数据进行转换,得到JsonObject对象,然后,可以通过数据划分模块基于JsonObject对象中的键对JsonObject对象进行划分处理,得到多个对象集合(分别为图1c中的process json、process json2、process json3…process json10),然后,针对每个对象集合,可以通过对象集合对应的数据处理线路,对该对象集合进行字段解析选取处理,得到数据处理结果,每个对象集合对应的数据处理结果可以以表的形式输出。
由上可知,本实施例可以从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。本实施例可以通过数据源端设置的转换插件,将业务数据转换为jsonObject对象进行逻辑处理,实现对数据处理过程与业务应用程序进行解耦,这样业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,有利于增强对数据处理的灵活度,提高了业务需求响应能力。
根据前面实施例所描述的方法,以下将以该数据处理装置具体集成在终端举例作进一步详细说明。
本申请实施例提供一种数据处理方法,如图2所示,该数据处理方法的具体流程可以如下:
201、终端从json报文的数据库中获取json格式的业务数据,其中,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据。
具体地,业务数据可以以客户为维度,格式为json字符串,不同客户的数据json字符串内容各不相同。比如,业务数据可以是至少一个客户对应的json字符串。
202、终端通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象。
其中,JsonObject对象具体即json字符串中的键值对象。json字符串包括若干键值对,JsonObject对象可以是其中的某个键值对。
具体地,本实施例可以借助kettle工具来对json格式的业务数据进行转换,得到相应的至少一个JsonObject对象。
203、终端基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果。
其中,不同JsonObject对象中的键可以不同,可选的,键不同的JsonObject对象,对应的逻辑处理流程可以不同。
可选的,本实施例中,步骤“基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果”,可以包括:
基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
针对每个对象集合,根据所述对象集合对应的对象类型,确定所述对象集合的逻辑处理流程;
基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果,所述数据处理结果包括目标字段对应的业务子数据。
其中,基于JsonObject对象中的键对JsonObject对象进行划分处理,具体可以是键对应的对象类型,对各JsonObject对象进行分类处理,得到不同对象类型对应的对象集合,具体地,一个对象集合中的JsonObject对象的键相同。
具体地,每个对象集合可以以表格的形式进行呈现,每个表可以定义一个Java处理逻辑步骤(也即上述实施例中的逻辑处理流程),每个Java处理逻辑步骤对应一个字段选择的输出。比如,对于对象类型为“爱好”的表格(对象集合),可以从中选择输出爱好为“下棋”的字段,并将这些字段(也即目标字段的业务子数据)以表格的形式输出。
可选的,本实施例中,步骤“基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合”,可以包括:
获取数据处理模型,所述数据处理模型包括数据划分模块和至少一个对象类型对应的数据处理线路,所述数据处理线路包括至少一个数据处理模块;
通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
步骤“基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果”,包括:
根据各个对象集合的逻辑处理流程,确定各个对象集合对应的数据处理线路;
针对每个对象集合,通过所述对象集合对应的数据处理线路,对所述对象集合进行字段解析选取处理,得到数据处理结果。
其中,数据处理模型可以是处理业务数据的策略模型;数据处理线路为数据处理模型的模型分支,数据处理线路为进行业务处理的线路,不同数据处理线路对应不同的逻辑处理流程。具体地,数据处理线路可以用于从对应的对象集合中选取目标字段的业务子数据。
204、终端将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
本实施例通过借助kettle工具的流程设计能力和任务管理平台,可以灵活得对数据处理和数据同步进行优化,通过spoon可视化流程设计的方式,可以更直观得体现数据转换逻辑和同步逻辑。具体地,基于本申请提供的数据处理方法,可以跟业务应用进行解耦,业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,而且还可以根据排期投产时间对历史数据进行追溯处理,降低运行风险。另外,对不同业务场景下的复杂数据,可以更好地进行支持。当数据结构发生变化时,可以通过调整spoon核心转换的逻辑,更快得做出反应。当数据源发生变化时,可以通过spoon组件进行灵活设置实现对接。
由上可知,本实施例可以通过终端从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。本实施例可以通过数据源端设置的转换插件,将业务数据转换为jsonObject对象进行逻辑处理,实现对数据处理过程与业务应用程序进行解耦,这样业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,有利于增强对数据处理的灵活度,提高了业务需求响应能力。
为了更好地实施以上方法,本申请实施例还提供一种数据处理装置,如图3所示,该数据处理装置可以包括获取单元301、转换单元302、处理单元303、以及存储单元304,如下:
(1)获取单元301;
获取单元,用于从json报文的数据库中获取json格式的业务数据,其中,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据。
(2)转换单元302;
转换单元,用于通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象。
(3)处理单元303;
处理单元,用于基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果。
可选的,在本申请的一些实施例中,所述处理单元可以包括划分子单元、确定子单元和选取子单元,如下:
所述划分子单元,用于基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
确定子单元,用于针对每个对象集合,根据所述对象集合对应的对象类型,确定所述对象集合的逻辑处理流程;
选取子单元,用于基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果,所述数据处理结果包括目标字段对应的业务子数据。
可选的,在本申请的一些实施例中,所述划分子单元具体可以用于获取数据处理模型,所述数据处理模型包括数据划分模块和至少一个对象类型对应的数据处理线路,所述数据处理线路包括至少一个数据处理模块;通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
所述选取子单元具体可以用于根据各个对象集合的逻辑处理流程,确定各个对象集合对应的数据处理线路;针对每个对象集合,通过所述对象集合对应的数据处理线路,对所述对象集合进行字段解析选取处理,得到数据处理结果。
可选的,在本申请的一些实施例中,步骤“通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合”,可以包括:
获取所述数据划分模块对应的操作算子;
识别所述操作算子对应的操作类型;
当所述操作类型为数据划分操作时,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合。
可选的,在本申请的一些实施例中,所述数据处理还包括配置单元,所述配置单元可以用于获取所述JsonObject对象对应的数据处理模型的配置信息;基于所述配置信息,对所述数据处理模型进行解析,生成操作算子,所述操作算子用于指示需要执行的数据处理逻辑。
可选的,在本申请的一些实施例中,步骤“获取数据处理模型”,可以包括:
展示原始数据处理模型的编辑页面,所述编辑页面包括原始数据处理模型,所述原始数据处理模型包括数据划分模块和至少一个对象类型对应的原始数据处理线路;
基于需要处理的JsonObject对象的对象类型业务需求,对所述编辑页面中的原始数据处理模型进行线路更新操作,生成并展示所述数据处理模型。
(4)存储单元304;
存储单元,用于将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
由上可知,本实施例可以通过获取单元301从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;由转换单元302通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;通过处理单元303基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;通过存储单元304将所述数据处理结果存储到所述应用程序的业务对应的分析库中。本实施例可以通过数据源端设置的转换插件,将业务数据转换为jsonObject对象进行逻辑处理,实现对数据处理过程与业务应用程序进行解耦,这样业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,有利于增强对数据处理的灵活度,提高了业务需求响应能力。
本申请实施例还提供一种电子设备,如图4所示,其示出了本申请实施例所涉及的电子设备的结构示意图,该电子设备可以是终端或者服务器等,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,该电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本实施例可以从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。本实施例可以通过数据源端设置的转换插件,将业务数据转换为jsonObject对象进行逻辑处理,实现对数据处理过程与业务应用程序进行解耦,这样业务系统不需要因数据源发生变化进行架构改造,也不需要因为数据结构发生变化进行核心逻辑改动,有利于增强对数据处理的灵活度,提高了业务需求响应能力。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种数据处理方法中的步骤。例如,该指令可以执行如下步骤:
从json报文的数据库中获取json格式的业务数据,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种数据处理方法中的步骤,因此,可以实现本申请实施例所提供的任一种数据处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述数据处理方面的各种可选实现方式中提供的方法。
以上对本申请实施例所提供的一种数据处理方法以及相关设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
从json报文的数据库中获取json格式的业务数据,其中,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;
通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;
基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;
将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
2.根据权利要求1所述的方法,其特征在于,所述基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果,包括:
基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
针对每个对象集合,根据所述对象集合对应的对象类型,确定所述对象集合的逻辑处理流程;
基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果,所述数据处理结果包括目标字段对应的业务子数据。
3.根据权利要求2所述的方法,其特征在于,所述基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合,包括:
获取数据处理模型,所述数据处理模型包括数据划分模块和至少一个对象类型对应的数据处理线路,所述数据处理线路包括至少一个数据处理模块;
通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合;
所述基于所述逻辑处理流程,对所述对象集合进行字段解析选取处理,得到数据处理结果,包括:
根据各个对象集合的逻辑处理流程,确定各个对象集合对应的数据处理线路;
针对每个对象集合,通过所述对象集合对应的数据处理线路,对所述对象集合进行字段解析选取处理,得到数据处理结果。
4.根据权利要求3所述的方法,其特征在于,所述通过所述数据划分模块,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合,包括:
获取所述数据划分模块对应的操作算子;
识别所述操作算子对应的操作类型;
当所述操作类型为数据划分操作时,基于JsonObject对象中的键对所述JsonObject对象进行划分处理,得到多个对象集合。
5.根据权利要求4所述的方法,其特征在于,所述获取所述数据划分模块对应的操作算子之前,还包括:
获取所述JsonObject对象对应的数据处理模型的配置信息;
基于所述配置信息,对所述数据处理模型进行解析,生成操作算子,所述操作算子用于指示需要执行的数据处理逻辑。
6.根据权利要求3所述的方法,其特征在于,所述获取数据处理模型,包括:
展示原始数据处理模型的编辑页面,所述编辑页面包括原始数据处理模型,所述原始数据处理模型包括数据划分模块和至少一个对象类型对应的原始数据处理线路;
基于需要处理的JsonObject对象的对象类型业务需求,对所述编辑页面中的原始数据处理模型进行线路更新操作,生成并展示所述数据处理模型。
7.一种数据处理装置,其特征在于,包括:
获取单元,用于从json报文的数据库中获取json格式的业务数据,其中,所述数据库中的json报文为应用程序进行业务处理后得到的json格式的数据;
转换单元,用于通过数据源端设置的转换插件对所述业务数据进行转换,得到JsonObject对象;
处理单元,用于基于JsonObject对象中的键,对所述JsonObject对象进行逻辑处理,得到数据处理结果;
存储单元,用于将所述数据处理结果存储到所述应用程序的业务对应的分析库中。
8.一种电子设备,其特征在于,包括存储器和处理器;所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序,以执行权利要求1至6任一项所述的数据处理方法中的操作。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至6任一项所述的数据处理方法中的步骤。
10.一种计算机程序产品,包括计算机程序或指令,其特征在于,该计算机程序或指令被处理器执行时实现权利要求1至6任一项所述的数据处理方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210738873.7A CN115033246A (zh) | 2022-06-24 | 2022-06-24 | 数据处理方法以及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210738873.7A CN115033246A (zh) | 2022-06-24 | 2022-06-24 | 数据处理方法以及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115033246A true CN115033246A (zh) | 2022-09-09 |
Family
ID=83127320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210738873.7A Pending CN115033246A (zh) | 2022-06-24 | 2022-06-24 | 数据处理方法以及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115033246A (zh) |
-
2022
- 2022-06-24 CN CN202210738873.7A patent/CN115033246A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102187314B (zh) | 生成适用于数据集的资源脚本的方法和系统 | |
CN111427561A (zh) | 业务代码的生成方法、装置、计算机设备和存储介质 | |
CN111124379B (zh) | 页面生成方法、装置、电子设备及存储介质 | |
US8326588B2 (en) | Fair path selection during simulation of decision nodes | |
CN110580158A (zh) | 一种代码生成方法、装置、存储介质及电子设备 | |
CN113742014A (zh) | 界面渲染方法、装置、电子设备及存储介质 | |
CN113158619A (zh) | 文档处理方法、装置、计算机可读存储介质及计算机设备 | |
CN116360735A (zh) | 一种表单生成方法、装置、设备和介质 | |
CN108388576B (zh) | 交互式生成图谱的方法和系统 | |
CN112667517A (zh) | 自动化测试脚本的获取方法、装置、设备及存储介质 | |
CN115469849B (zh) | 一种业务处理系统、方法、电子设备和存储介质 | |
CN113268232A (zh) | 一种页面皮肤生成方法、装置和计算机可读存储介质 | |
CN115033246A (zh) | 数据处理方法以及相关设备 | |
CN116009847A (zh) | 代码生成方法、装置、电子设备及存储介质 | |
CN114327709A (zh) | 一种控制页面生成方法、装置、智能设备及存储介质 | |
CN114579120A (zh) | 一种应用代码处理方法、装置、电子设备及存储介质 | |
CN114066398A (zh) | 业务模型的管理方法、装置、存储介质和终端设备 | |
CN110058855B (zh) | 一种软件的界面和工作流的更新方法、装置及设备 | |
CN114449063A (zh) | 一种报文处理方法、装置及设备 | |
CN114860566A (zh) | 源代码测试方法、装置、电子设备及存储介质 | |
CN112418796A (zh) | 子流程节点激活方法、装置、电子设备及存储介质 | |
CN113806596B (zh) | 运营数据管理方法及相关装置 | |
CN113706209B (zh) | 运营数据处理方法及相关装置 | |
CN108595552A (zh) | 数据立方体发布方法、装置、电子设备和存储介质 | |
CN113704593B (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 |