CN115757593A - 一种数据处理方法、装置及存储介质 - Google Patents
一种数据处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN115757593A CN115757593A CN202211562318.XA CN202211562318A CN115757593A CN 115757593 A CN115757593 A CN 115757593A CN 202211562318 A CN202211562318 A CN 202211562318A CN 115757593 A CN115757593 A CN 115757593A
- Authority
- CN
- China
- Prior art keywords
- data processing
- data source
- metadata
- form object
- language instruction
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理方法、装置及存储介质,包括:获取数据源对应的元数据,根据元数据生成对应的表单对象;接收用户输入的领域语言指令,根据领域语言指令屏蔽数据源的底层细节;根据领域语言指令对表单对象进行持久化操作,持久化操作包括查询操作、新增操作、编辑操作和删除操作;将持久化操作转换为对应数据源的结构化查询语言,执行结构化查询语言得到数据处理结果。本发明实施例能够根据数据源的底层操作接口,屏蔽掉所述领域语言指令中的数据源的底层细节,将所述持久化操作转换为对应数据源的结构化查询语言,执行所述结构化查询语言得到数据处理结果,从而能够采用一致性的方式对数据源进行统一处理,能够有效提高数据处理的效率。
Description
技术领域
本发明涉及数据处理技术领域,尤其是涉及一种数据处理方法、装置及存储介质。
背景技术
随着计算机和数字化技术在企业中的大规模使用,数据的增长速度也在加快,数据管理和数据处理的需求也越来越多。现有的数据处理方法通常为:通过结构化查询语言SQL直接操作数据源,将原始数据导出成Excel表格,在编辑处理之后再导入到数据源中。但是现有的数据处理方法无法对所有的数据统一处理,导致数据处理的效率较低。
发明内容
本发明提供了一种数据处理方法、装置及存储介质,以解决现有的数据处理方法无法对所有的数据统一处理,导致数据处理的效率较低的技术问题。
本发明的一个实施例提供了一种数据处理方法,包括:
获取数据源对应的元数据,根据所述元数据生成对应的表单对象;
接收用户输入的领域语言指令,根据所述领域语言指令屏蔽所述数据源的底层细节;
根据所述领域语言指令对所述表单对象进行持久化操作,所述持久化操作包括查询操作、新增操作、编辑操作和删除操作;
将所述持久化操作转换为对应数据源的结构化查询语言,执行所述结构化查询语言得到数据处理结果。
进一步的,所述获取数据源对应的元数据,根据所述元数据生成对应的表单对象,包括:
根据数据源的接口获取所述元数据,分析所述元数据中生成语言定义的可编程元素,得到所述元数据对应的表单对象。
进一步的,根据所述领域语言指令对所述表单对象进行持久化操作,包括:
对所述领域语言指令进行语法分析,在所述语法分析结果为正确时,根据所述领域语言指令对所述表单对象进行持久化操作。
进一步的,所述将所述持久化操作转换为对应数据源的结构化查询语言,包括:
对所述持久化操作对应的领域语言指令进行文本解析,得到所述领域语言指令中每个语法的要素语句;
根据要素语句的出现次序和层次,将所述要素语句组合成语法树;
将所述语法树转换为结构化查询语言。
进一步的,所述语法树包括根节点和若干个叶子结点,所述叶子结点为所述要素语句。
进一步的,所述语法分析包括基础语法分析和对象语法分析。
本发明的一个实施例提供了一种数据处理装置,包括:
表单对象生成模块,用于获取数据源对应的元数据,根据所述元数据生成对应的表单对象;
底层细节屏蔽模块,用于接收用户输入的领域语言指令,根据所述领域语言指令屏蔽所述数据源的底层细节;
持久化操作模块,用于根据所述领域语言指令对所述表单对象进行持久化操作,所述持久化操作包括查询操作、新增操作、编辑操作和删除操作;
数据处理模块,用于将所述持久化操作转换为对应数据源的结构化查询语言,执行所述结构化查询语言得到数据处理结果。
进一步的,所述表单对象生成模块,具体用于:根据数据源的接口获取所述元数据,分析所述元数据中生成语言定义的可编程元素,得到所述元数据对应的表单对象。
进一步的,所述数据处理模块,具体用于:
对所述持久化操作对应的领域语言指令进行文本解析,得到所述领域语言指令中每个语法的要素语句;
根据要素语句的出现次序和层次,将所述要素语句组合成语法树;
将所述语法树转换为结构化查询语言。
本发明的一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如上述的数据处理方法。
本发明实施例能够根据数据源的底层操作接口,屏蔽掉所述领域语言指令中的数据源的底层细节,将所述持久化操作转换为对应数据源的结构化查询语言,执行所述结构化查询语言得到数据处理结果,从而能够采用一致性的方式对数据源进行统一处理,能够有效提高数据处理的效率。
附图说明
图1是本发明实施例提供的数据处理方法的流程示意图;
图2是本发明实施例提供的数据处理方法的另一流程示意图;
图3是本发明实施例提供的数据处理方法的又一流程示意图;
图4是本发明实施例提供的领域解析器内部示意图;
图5是本发明实施例提供的数据处理装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
请参阅图1-4,本发明的一个实施例提供了如图1所示的一种数据处理方法,包括:
S1、获取数据源对应的元数据,根据元数据生成对应的表单对象;
本发明实施例可以采用领域语言解析器来执行本实施例的数据处理方法,在存储数据源至数据库时,同时存储数据源对应的元数据,元数据描述了数据的构成和结构特征,通过元数据能够获保存在表xx l_job_i nfo里的数据每个列的表头名称和数据类型,表头名称和数据类型用于生成对应的表单对象,每个列的表头名称和数据类型作为表单对象的属性,其中每个列在数据源里的类型信息,通过如表1所示的映射表格编码为表单对象的属性类型。
表1:映射表格
列类型 | 对象属性类型 |
Int,bigInt,tinyInt,numeric | Integer |
Varchar,text | String |
datetime | LocalDatetime |
S2、接收用户输入的领域语言指令,根据领域语言指令屏蔽数据源的底层细节;
在本发明实施例中,领域语言解析器驱动和执行数据源的底层操作接口,用户可以根据领域语言的语言和指令,屏蔽数据源的底层细节,使得领域语言解析器能够识别所输入的领域语言指令,另一方面,本发明实施例能够根据数据源的底层操作接口,屏蔽掉领域语言指令中的数据源的底层细节,从而能够采用一致性的方式对数据源进行统一处理,能够有效提高数据处理的效率。
S3、根据领域语言指令对表单对象进行持久化操作,持久化操作包括查询操作、新增操作、编辑操作和删除操作;
在本发明实施例中,基本的对象操作指令包括i nsert、update和de l ete,分别对应于新增、编辑和删除数据。例如:
Account a=new Account(Name='Account Examp l e');
i nsert a;
则表示新增一条Account记录。
本发明实施例中领域语言的语法除了对象操作指令外,还有控制流语法,用于完成复杂的数据处理逻辑。控制流语法包括条件语句和循环语句。
S4、将持久化操作转换为对应数据源的结构化查询语言,执行结构化查询语言得到数据处理结果。
在一个实施例中,获取数据源对应的元数据,根据元数据生成对应的表单对象,包括:
根据数据源的接口获取元数据,分析元数据中生成语言定义的可编程元素,得到元数据对应的表单对象。
在本发明实施例中,可以通过数据源的特定接口获取其对应的元数据,也可以通过自动以的方式获取元数据,并由外部实体对元数据进行管理维护。这些元数据作为输入数据输入至领域语言解析器中,在领域语言解析器中形成若干个表单对象,通过领域语言指令可以以面向对象的方式操作表单对象的属性,并将表单对象作为整个实体,进行查询、新增、编辑和删除等持久化操作。
在本发明实施例中,数据源中的数据通常采用表单的形式进行存储,表单对象即将表单抽象化为对象,便于通过领域语言指令面向对象的方式对数据进行处理。
在一个实施例中,根据领域语言指令对表单对象进行持久化操作,包括:
对领域语言指令进行语法分析,在语法分析结果为正确时,根据领域语言指令对表单对象进行持久化操作。
在本发明实施例中,语法分析包括基础语法分析和对象语法分析,基础语法包括设置变量语句SET、条件语句I F、条件语句ELSE I F、条件语句ELSE,对象语法包括:创建CREATE、新增I NSERT、获取GET、更新UPDATE、删除DELETE、遍历FOREACH。
在一个实施例中,将持久化操作转换为对应数据源的结构化查询语言,包括:
对持久化操作对应的领域语言指令进行文本解析,得到领域语言指令中每个语法的要素语句;
根据要素语句的出现次序和层次,将要素语句组合成语法树;
将语法树转换为结构化查询语言。
在本发明实施例中,将出现在前的要素语句作为根节点,将出现在后的且层次在根节点之后的要素语句作为叶节点,根据根节点和叶节点组合成语法树,该语法树包括了多条指令,本发明实施例将语法树转换为结构化查询语言SQL,实现了将领域语言指令转换成结构化查询语言,通过执行结构化查询语言即可完成数据的处理。
在一个实施例中,语法树包括根节点和若干个叶子结点,叶子结点为要素语句。
实施本发明实施例,具有以下有益效果:
本发明实施例能够根据数据源的底层操作接口,屏蔽掉领域语言指令中的数据源的底层细节,将持久化操作转换为对应数据源的结构化查询语言,执行结构化查询语言得到数据处理结果,从而能够采用一致性的方式对数据源进行统一处理,能够有效提高数据处理的效率。
请参阅图5,基于与上述实施例相同的发明构思,本发明的一个实施例提供了一种数据处理装置,包括:
表单对象生成模块10,用于获取数据源对应的元数据,根据元数据生成对应的表单对象;
底层细节屏蔽模块20,用于接收用户输入的领域语言指令,根据领域语言指令屏蔽数据源的底层细节;
持久化操作模块30,用于根据领域语言指令对表单对象进行持久化操作,持久化操作包括查询操作、新增操作、编辑操作和删除操作;
数据处理模块40,用于将持久化操作转换为对应数据源的结构化查询语言,执行结构化查询语言得到数据处理结果。
在一个实施例中,表单对象生成模块10,具体用于:根据数据源的接口获取元数据,分析元数据中生成语言定义的可编程元素,得到元数据对应的表单对象。
在一个实施例中,持久化操作模块30,具体用于:
对领域语言指令进行语法分析,在语法分析结果为正确时,根据领域语言指令对表单对象进行持久化操作。
在一个实施例中,数据处理模块40,具体用于:
对持久化操作对应的领域语言指令进行文本解析,得到领域语言指令中每个语法的要素语句;
根据要素语句的出现次序和层次,将要素语句组合成语法树;
将语法树转换为结构化查询语言。
在一个实施例中,语法树包括根节点和若干个叶子结点,叶子结点为要素语句。
在一个实施例中,语法分析包括基础语法分析和对象语法分析。
本发明的一个实施例提供了一种计算机可读存储介质,计算机可读存储介质包括存储的计算机程序;其中,计算机程序在运行时控制计算机可读存储介质所在的设备执行如上述的数据处理方法。
以上是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取数据源对应的元数据,根据所述元数据生成对应的表单对象;
接收用户输入的领域语言指令,根据所述领域语言指令屏蔽所述数据源的底层细节;
根据所述领域语言指令对所述表单对象进行持久化操作,所述持久化操作包括查询操作、新增操作、编辑操作和删除操作;
将所述持久化操作转换为对应数据源的结构化查询语言,执行所述结构化查询语言得到数据处理结果。
2.如权利要求1所述的数据处理方法,其特征在于,所述获取数据源对应的元数据,根据所述元数据生成对应的表单对象,包括:
根据数据源的接口获取所述元数据,分析所述元数据中生成语言定义的可编程元素,得到所述元数据对应的表单对象。
3.如权利要求1所述的数据处理方法,其特征在于,根据所述领域语言指令对所述表单对象进行持久化操作,包括:
对所述领域语言指令进行语法分析,在所述语法分析结果为正确时,根据所述领域语言指令对所述表单对象进行持久化操作。
4.如权利要求1所述的数据处理方法,其特征在于,所述将所述持久化操作转换为对应数据源的结构化查询语言,包括:
对所述持久化操作对应的领域语言指令进行文本解析,得到所述领域语言指令中每个语法的要素语句;
根据要素语句的出现次序和层次,将所述要素语句组合成语法树;
将所述语法树转换为结构化查询语言。
5.如权利要求4所述的数据处理方法,其特征在于,所述语法树包括根节点和若干个叶子结点,所述叶子结点为所述要素语句。
6.如权利要求3所述的数据处理方法,其特征在于,所述语法分析包括基础语法分析和对象语法分析。
7.一种数据处理装置,其特征在于,包括:
表单对象生成模块,用于获取数据源对应的元数据,根据所述元数据生成对应的表单对象;
底层细节屏蔽模块,用于接收用户输入的领域语言指令,根据所述领域语言指令屏蔽所述数据源的底层细节;
持久化操作模块,用于根据所述领域语言指令对所述表单对象进行持久化操作,所述持久化操作包括查询操作、新增操作、编辑操作和删除操作;
数据处理模块,用于将所述持久化操作转换为对应数据源的结构化查询语言,执行所述结构化查询语言得到数据处理结果。
8.如权利要求7所述的数据处理装置,其特征在于,所述表单对象生成模块,具体用于:根据数据源的接口获取所述元数据,分析所述元数据中生成语言定义的可编程元素,得到所述元数据对应的表单对象。
9.如权利要求7所述的数据处理装置,其特征在于,所述数据处理模块,具体用于:
对所述持久化操作对应的领域语言指令进行文本解析,得到所述领域语言指令中每个语法的要素语句;
根据要素语句的出现次序和层次,将所述要素语句组合成语法树;
将所述语法树转换为结构化查询语言。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如权利要求1-6中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211562318.XA CN115757593A (zh) | 2022-12-07 | 2022-12-07 | 一种数据处理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211562318.XA CN115757593A (zh) | 2022-12-07 | 2022-12-07 | 一种数据处理方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115757593A true CN115757593A (zh) | 2023-03-07 |
Family
ID=85343969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211562318.XA Pending CN115757593A (zh) | 2022-12-07 | 2022-12-07 | 一种数据处理方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115757593A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116955366A (zh) * | 2023-09-21 | 2023-10-27 | 宝略科技(浙江)有限公司 | 一种数据导入处理方法、系统、装置及存储介质 |
-
2022
- 2022-12-07 CN CN202211562318.XA patent/CN115757593A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116955366A (zh) * | 2023-09-21 | 2023-10-27 | 宝略科技(浙江)有限公司 | 一种数据导入处理方法、系统、装置及存储介质 |
CN116955366B (zh) * | 2023-09-21 | 2023-12-22 | 宝略科技(浙江)有限公司 | 一种数据导入处理方法、系统、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108959433B (zh) | 一种从软件项目数据中提取知识图谱并问答的方法与系统 | |
CN105260403B (zh) | 通用跨数据库访问方法 | |
CN113032362B (zh) | 数据血缘分析方法、装置、电子设备和存储介质 | |
US8103705B2 (en) | System and method for storing text annotations with associated type information in a structured data store | |
CN109582647B (zh) | 一种面向非结构化证据文件的分析方法及系统 | |
CN106934062A (zh) | 一种查询elasticsearch的实现方法及系统 | |
US20100293161A1 (en) | Automatically avoiding unconstrained cartesian product joins | |
CN111078729B (zh) | 医疗数据溯源方法、装置、系统、存储介质以及电子设备 | |
CN110674229A (zh) | 一种基于ast的关系型数据库sql表关系分析及展现方法 | |
US20060122973A1 (en) | Mechanism for defining queries in terms of data objects | |
CN112347123A (zh) | 数据血缘的分析方法、装置和服务器 | |
CN117093599A (zh) | 面向异构数据源的统一sql查询方法 | |
CN115840589A (zh) | 一种支持异构分布式数据库的发布方法 | |
CN113342325A (zh) | 可视化建模方法、系统、电子设备及存储介质 | |
US20100153430A1 (en) | Method of and Apparatus for Extraction and Analysis of Macro Operations within Query Language Statement | |
CN116795859A (zh) | 数据分析方法、装置、计算机设备和存储介质 | |
CN117076742A (zh) | 数据血缘追踪方法、装置及电子设备 | |
CN117112608A (zh) | 一种基于Antlr4的数据库语句转换方法及装置 | |
CN115757593A (zh) | 一种数据处理方法、装置及存储介质 | |
CN110209699B (zh) | 一种基于openEHR Composition模板的数据接口动态生成与执行方法 | |
Navathe et al. | Active Database Modeling and Design Tools: Issues, Approache, and Architecture | |
CN108509187B (zh) | 一种自动生成软件平台mib功能代码的方法及系统 | |
Iftekhar et al. | Reverse engineering of relational database schema to UML Model | |
CN117807106A (zh) | 基于json和sql的数据库操作系统及方法 | |
CN113343036B (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 |