本发明涉及数据处理,尤其涉及一种大数据处理json格式数据的拍平方法、装置、设备及存储介质。
背景技术:
1、在大量处理json格式数据时,目前通过later view和json函数来将结果拍平;但是这种方法在进行数据拍平时代码量较大,数据拍平效率较低且数据修改较麻烦。
技术实现思路
1、本发明提供了一种大数据处理json格式数据的拍平方法、装置、设备及存储介质;通过预设的数据处理方法可以提高json格式数据的拍平效率,有效减少代码量且便于数据的修改。
2、第一方面,本发明的实施例提供了一种大数据处理json格式数据的拍平方法,该方法包括:
3、获取json格式数据并对json格式数据进行解析得到元数据;
4、根据元数据的类型采用预设的数据处理方法对元数据进行处理;
5、其中,元数据的类型包括:object类型嵌套普通类型、object类型嵌套object类型、object类型嵌套数组、数组嵌套普通类型、数组嵌套object类型、数组嵌套数组和空值类型;
6、根据处理后的元数据确定待写入doris数据库的数据表,数据表包括:表名、字段名、字段类型和缓存数据;
7、根据预设方法将数据表写入doris数据库中。
8、可选地,根据元数据的类型采用预设的数据处理方法对元数据进行处理,包括:
9、若元数据的类型为object类型嵌套普通类型,则将元数据中的每一个元素作为数据表中的一个字段;
10、若元数据的类型为object类型嵌套object类型,则将子object类型数据的关键字与父object类型数据的关键字拼接作为数据表中的一个字段;
11、若元数据的类型为object类型嵌套数组,则根据数组中数据的类型选取对应的数据处理方法进行数据处理;
12、若元数据的类型为数组嵌套普通类型,则将元数据名称作为数据表中的一个字段;
13、若元数据的类型为数组嵌套object类型,则将元数据拆分为一个新数据表存储并重新命名;
14、若元数据的类型为数组嵌套数组,则在元数据中原数组所在数据表中作为一个新字段存储。
15、可选地,若元数据的类型为object类型嵌套数组,则根据数组中数据的类型选取对应的数据处理方法进行数据处理,包括:
16、若数组中的数据类型为普通类型,则将元数据名称作为数据表中的一个字段;
17、若数组中的数据类型为object类型,则将元数据拆分为一个新数据表存储并重新命名;
18、若数组中的数据类型为数组,则在元数据中原数组所在数据表中作为一个新字段存储。
19、可选地,根据元数据的类型采用预设的数据处理方法对元数据进行处理,还包括:
20、根据预设的数据处理方法对多重嵌套类型的元数据进行处理。
21、可选地,根据预设方法将数据表写入doris数据库中,包括:
22、建立json数据类型和doris数据类型之间的映射关系表;
23、根据映射关系表在doris数据库查询数据表对应的目标表、目标表字段和字段数据类型;
24、若查询到则将数据表写入doris数据库中。
25、可选地,根据预设方法将数据表写入doris数据库中,还包括:
26、若查询的目标表不存在,则根据数据表的字段在doris数据库中构建数据表;
27、若查询的目标表字段不存在,则在目标表中添加目标表字段;
28、若查询结果中存在多余字段,则直接忽略多余字段;
29、若数据表中的数据类型与字段数据类型不同,则通过sql语句修改数据类型。
30、可选地,根据预设方法将数据表写入doris数据库中,还包括:
31、若数据表的表名或数据表中的字段名超出doris数据库的限制,则在配置文件中配置命名转换;
32、若数据表中存在使用关键字作为字段名的字段且数量超过doris数据库的限制,则通过自定义处理逻辑来转换数据类型以此改变字段命名。
33、第二方面,本发明的实施例提供了一种大数据处理json格式数据的拍平装置,该装置包括:
34、解析模块,用于获取json格式数据并对json格式数据进行解析得到元数据;
35、预处理模块,用于根据元数据的类型采用预设的数据处理方法对元数据进行处理;
36、其中,元数据的类型包括:object类型嵌套普通类型、object类型嵌套object类型、object类型嵌套数组、数组嵌套普通类型、数组嵌套object类型、数组嵌套数组和空值类型;
37、确定模块,用于根据处理后的元数据确定待写入doris数据库的数据表,数据表包括:表名、字段名、字段类型和缓存数据;
38、写入模块,用于根据预设方法将数据表写入doris数据库中。
39、第三方面,本发明的实施例提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如第一方面中任一实现方式所述的方法。
40、第四方面,本发明的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面中任一实现方式所述的方法。
41、本发明提供了一种大数据处理json格式数据的拍平方法、装置、设备及存储介质,该方法如下:获取json格式数据并对json格式数据进行解析得到元数据;根据元数据的类型采用预设的数据处理方法对元数据进行处理;其中,元数据的类型包括:object类型嵌套普通类型、object类型嵌套object类型、object类型嵌套数组、数组嵌套普通类型、数组嵌套object类型、数组嵌套数组和空值类型;根据处理后的元数据确定待写入doris数据库的数据表,数据表包括:表名、字段名、字段类型和缓存数据;根据预设方法将数据表写入doris数据库中。本发明通过预设的数据处理方法可以提高json格式数据的拍平效率,有效减少代码量且便于数据的修改。
42、应当理解,
技术实现要素:
部分中所描述的内容并非旨在限定本发明的实施例的关键或重要特征,亦非用于限制本发明的范围。本发明的其它特征将通过以下的描述变得容易理解。
1.一种大数据处理json格式数据的拍平方法,其特征在于,该方法包括:
2.根据权利要求1所述的大数据处理json格式数据的拍平方法,其特征在于,所述根据所述元数据的类型采用预设的数据处理方法对所述元数据进行处理,包括:
3.根据权利要求2所述的大数据处理json格式数据的拍平方法,其特征在于,所述若所述元数据的类型为object类型嵌套数组,则根据数组中数据的类型选取对应的数据处理方法进行数据处理,包括:
4.根据权利要求3所述的大数据处理json格式数据的拍平方法,其特征在于,所述根据所述元数据的类型采用预设的数据处理方法对所述元数据进行处理,还包括:
5.根据权利要求1所述的大数据处理json格式数据的拍平方法,其特征在于,所述根据预设方法将所述数据表写入所述doris数据库中,包括:
6.根据权利要求1所述的大数据处理json格式数据的拍平方法,其特征在于,所述根据预设方法将所述数据表写入所述doris数据库中,还包括:
7.根据权利要求1所述的大数据处理json格式数据的拍平方法,其特征在于,所述根据预设方法将所述数据表写入所述doris数据库中,还包括:
8.一种大数据处理json格式数据的拍平装置,其特征在于,该装置包括:
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。