一种将结构化数据转化为非结构化数据的方法及系统技术方案

技术编号:20363156 阅读:23 留言:0更新日期:2019-02-16 16:39
本申请公开了一种将结构化数据转化为非结构化数据的方法及系统,方法包括:配置JSON模板,解析JSON模板到结构体数组,根据结构体数组读取数组源,得到JSON文件。本申请能够高效准确的完成结构化数据到非结构化数据格式的转换。

【技术实现步骤摘要】
一种将结构化数据转化为非结构化数据的方法及系统
本申请涉及数据转化
,尤其涉及一种将结构化数据转化为非结构化数据的方法及系统。
技术介绍
目前,在使用基于分布式文件存储的数据库等非关系型数据库的开发项目中,往往涉及到铺底数据或者码表的导入,需要将结构化数据,比如说表格,转换成非关系型数据库支出的格式,比如说JSON(JavaScriptObjectNotation,JS对象简谱,一种轻量级的数据交换格式)。目前通常使用的方法是手工转换,复制粘贴的重复工作效率十分低下,并且容易出错。并且如果使用传统的转换非结构化数据方法,大部分都是与JSON报文强耦合,需要修改JSON格式的时候还需要多次修改代码。因此,如何高效准确的完成结构化数据到非结构化数据格式的转换,是一项亟待解决的问题。
技术实现思路
有鉴于此,本申请提供了一种将结构化数据转化为非结构化数据的方法,能够高效准确的完成结构化数据到非结构化数据格式的转换。本申请提供了一种将结构化数据转化为非结构化数据的方法,所述方法包括:配置JSON模板;解析所述JSON模板到结构体数组;根据所述结构体数组读取数组源,得到JSON文件。优选地,所述解析所述JSON模板到结构体数组包括:通过递归函数解析所述JSON模板到结构体数组。优选地,所述根据所述结构体数组读取数组源,得到JSON文件包括:根据所述结构体数组从表格中读取数据,生成JSON文件。优选地,所述JSON模板中的第一个节点作为主索引,所述主索引对应主表的主字段,所述主表中的每一行对应JSON文件的每一行。优选地,所述根据所述结构体数组读取数组源,得到JSON文件包括:根据所述结构体数组从数据库中读取数据,生成JSON文件。一种将结构化数据转化为非结构化数据的系统,包括:配置模块,用于配置JSON模板;解析模块,用于解析所述JSON模板到结构体数组;转化模块,用于根据所述结构体数组读取数组源,得到JSON文件。优选地,所述解析模块具体用于:通过递归函数解析所述JSON模板到结构体数组。优选地,所述转化模块具体用于:根据所述结构体数组从表格中读取数据,生成JSON文件。优选地,所述JSON模板中的第一个节点作为主索引,所述主索引对应主表的主字段,所述主表中的每一行对应JSON文件的每一行。优选地,所述转化模块具体用于:根据所述结构体数组从数据库中读取数据,生成JSON文件。综上所述,本申请公开了一种将结构化数据转化为非结构化数据的方法,当需要将结构化数据转化为非结构化数据时,首先配置JSON模板,然后解析JSON模板到结构体数组,最后根据结构体数组读取数组源,得到JSON文件。本申请能够高效准确的完成结构化数据到非结构化数据格式的转换。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请公开的一种将结构化数据转化为非结构化数据的方法实施例1的方法流程图;图2为本申请公开的一种将结构化数据转化为非结构化数据的方法实施例2的方法流程图;图3为本申请公开的一种将结构化数据转化为非结构化数据的方法实施例3的方法流程图;图4为本申请公开的生成JSON文件的算法流程图;图5为本申请公开的一种将结构化数据转化为非结构化数据的系统实施例1的结构示意图;图6为本申请公开的一种将结构化数据转化为非结构化数据的系实施例2的结构示意图;图7为本申请公开的一种将结构化数据转化为非结构化数据的系实施例3的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。如图1所示,为申请提供的一种将结构化数据转化为非结构化数据的方法实施例1的方法流程图,所述方法可以包括以下步骤:S101、配置JSON模板;结构化数据,即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据;结构定义不易改变,数据定长。非结构化数据,即不方便用数据库二维逻辑表来表现的数据。其字段长度可变,并且每个字段的记录又可以由可重复或不可重复的子字段构成。当需要将结构化数据转化为非结构化数据时,首先定义需要的JSON模板。S102、解析JSON模板到结构体数组;当定义好需要的JSON模板后,进一步进行解析,解析JSON模板到结构体数组。S103、根据结构体数组读取数组源,得到JSON文件。然后根据得到的结构体数组读取到数组源,即读取到需要进行转化的数据,通过转化得到JSON文件。综上所述,在上述实施例中,当需要将结构化数据转化为非结构化数据时,首先配置JSON模板,然后解析JSON模板到结构体数组,最后根据结构体数组读取数组源,得到JSON文件。本申请能够高效准确的完成结构化数据到非结构化数据格式的转换。如图2所示,为申请提供的一种将结构化数据转化为非结构化数据的方法实施例2的方法流程图,所述方法可以包括以下步骤:S201、配置JSON模板;结构化数据,即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据;结构定义不易改变,数据定长。非结构化数据,即不方便用数据库二维逻辑表来表现的数据。其字段长度可变,并且每个字段的记录又可以由可重复或不可重复的子字段构成。当需要将结构化数据转化为非结构化数据时,首先定义需要的JSON模板。S202、解析JSON模板到结构体数组;当定义好需要的JSON模板后,进一步进行解析,解析JSON模板到结构体数组。S203、根据结构体数组从数据库中读取数据,生成JSON文件。然后根据得到的结构体数组从数据库中读取到数组源,即读取到需要进行转化的数据,通过转化得到JSON文件。综上所述,在上述实施例中,当需要将结构化数据转化为非结构化数据时,首先配置JSON模板,然后解析JSON模板到结构体数组,最后根据结构体数组从数据库中读取数据,得到JSON文件。本申请能够高效准确的完成结构化数据到非结构化数据格式的转换。如图3所示,为申请提供的一种将结构化数据转化为非结构化数据的方法实施例3的方法流程图,所述方法可以包括以下步骤:S301、配置JSON模板;结构化数据,即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据;结构定义不易改变,数据定长。非结构化数据,即不方便用数据库二维逻辑表来表现的数据。其字段长度可变,并且每个字段的记录又可以由可重复或不可重复的子字段构成。当需要将结构化数据转化为非结构化数据时,首先定义需要的JSON模板。形如(以excel作为数据源为例):{"classNm":"支出(主表)[3]","classifyId":"支出(主表)[4]","isShow":"支出(主表)[5]","keyword":["关键字[2]"],"title":"支出(主表)[2]","tranCat":"支出(主表)[1]","mcc":[{"mccName":"MCC本文档来自技高网...

【技术保护点】
1.一种将结构化数据转化为非结构化数据的方法,其特征在于,所述方法包括:配置JSON模板;解析所述JSON模板到结构体数组;根据所述结构体数组读取数组源,得到JSON文件。

【技术特征摘要】
1.一种将结构化数据转化为非结构化数据的方法,其特征在于,所述方法包括:配置JSON模板;解析所述JSON模板到结构体数组;根据所述结构体数组读取数组源,得到JSON文件。2.根据权利要求1所述的方法,其特征在于,所述解析所述JSON模板到结构体数组包括:通过递归函数解析所述JSON模板到结构体数组。3.根据权利要求2所述的方法,其特征在于,所述根据所述结构体数组读取数组源,得到JSON文件包括:根据所述结构体数组从表格中读取数据,生成JSON文件。4.根据权利要求3所述的方法,其特征在于,所述JSON模板中的第一个节点作为主索引,所述主索引对应主表的主字段,所述主表中的每一行对应JSON文件的每一行。5.根据权利要求3所述的方法,其特征在于,所述根据所述结构体数组读取数组源,得到JSON文件包括:根据所述结构体数组从数据库中读...

【专利技术属性】
技术研发人员:翁星晨朱晓峰
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1