一种根据数据属性进行数据分层控制存储的方法及装置与流程

文档序号:36401595发布日期:2023-12-16 05:00阅读:25来源:国知局
一种根据数据属性进行数据分层控制存储的方法及装置与流程

本发明涉及数据处理,尤其是一种根据数据属性进行数据分层控制存储的方法及装置。


背景技术:

1、在现今中小规模的应用软件中,软件一般采用关系型数据库,中心式部署方式,经常要对核心业务数据进行统计,现有统计主要通过编写特定统计程序实现,但特定统计程序实现存在固有缺陷:

2、a)只能满足特定应用场景的数据统计需求,业务适应性较差,程序代码不能复用;

3、b)当统计规则发生变化时,需要修改程序代码,时间周期长,有时需要重构程序,以满足用户统计需求;

4、c)数据量达到一定规模后,容易发生性能问题,从而影响其他业务功能的使用,程序调试难度大;

5、d)当需要对外提供数据统计结果时,还需编写特定的数据接口。


技术实现思路

1、本发明提出一种根据数据属性进行数据分层控制存储的方法及装置,能够解决现有技术对数据使用关系型数据库存储带来的技术问题。

2、在本发明上述各方法实施例中,一种根据数据属性进行数据分层控制存储的方法,包括:

3、步骤s1:获取待存储的武器装备数据的各个属性,抽取其中具有层级属性的数据元;所述层级属性包括一级属性及二级属性,所述二级属性是一级属性的子属性,一个一级属性对应多个二级属性;每个数据元具有全部一级属性及与一级属性对应的二级属性;所述一级属性包括若干个分类属性和若干个维度属性;基于二级属性bij的属性值,对待存储的武器装备数据进行统计,得到与二级属性bij对应的统计值sumij,其中,i为一级属性的编号,j为对应于i级属性的二级属性的编号,,,m为一级属性的个数,ni为一级属性i下的二级属性的个数;令i=1;

4、步骤s2:若i大于m,得到以数据元的一级属性进行分类的分类统计结果,令e=1,进入步骤s7;否则,令j=1,对二级属性为bij的数据元进行统计,进入步骤s3;

5、步骤s3:若j大于ni,进入步骤s6,否则进入步骤s4;

6、步骤s4:取二级属性bij对应的统计值sumij,将{sumi1,……,sumi(j-1)}按从大到小的顺序进行排序,得到排序后的序列,=,k表示排序顺序,进入步骤s5;

7、步骤s5:赋值j等于j+1,进入步骤s3;

8、步骤s6:赋值i等于i+1,进入步骤s2;

9、步骤s7:基于统计值sumij形成的数据集aij确定数据层级统计值befij,1≤e≤p,p为分类属性数量,1≤f≤q,q为维度属性数量,数据层级统计值befij代表分类属性为e、维度属性为f、一级属性为i、且二级属性为j的数据的汇总统计值;若e大于p,进入步骤s15;否则令f=1,进入步骤s8;

10、步骤s8:若f大于q,则令f=q,进入步骤s10;否则进入步骤s9;

11、步骤s9:在数据集aij中,基于分类属性、维度属性获取相应数据lenefij,赋值f=f+1,进入步骤s8;其中,lenefij代表分类属性为e、维度属性为f、一级属性为i、且二级属性为j的数据的汇总统计值;

12、步骤s10:若f等于q,将数据lenefij利用压缩算法存储到befij对应的存储区域,赋值f=f-1,进入步骤s11;

13、步骤s11:若f小于1,进入步骤s14;否则进入步骤s12;

14、步骤s12:在be[f-1]ij对应的存储区域中取该存储区域存储的数值作为统计值,该统计值计为eefij,将lenefij与eefij做去重汇聚操作,将结果利用压缩算法存储到befij对应的存储区域;进入步骤s13;

15、步骤s13:赋值f=f-1,进入步骤s11;

16、步骤s14:赋值e=e+1,进入步骤s7;

17、步骤s15:将befij对应的数据保存至数据库中,方法结束。

18、可选地,所述分类属性包括管理状态、质量等级、武器寿命。

19、可选地,所述维度属性包括单位代码、装备代码。

20、在本发明上述各方法实施例中,一种根据数据属性进行数据分层控制存储的装置,包括:

21、初始化模块:配置为获取待存储的武器装备数据的各个属性,抽取其中具有层级属性的数据元;所述层级属性包括一级属性及二级属性,所述二级属性是一级属性的子属性,一个一级属性对应多个二级属性;每个数据元具有全部一级属性及与一级属性对应的二级属性;所述一级属性包括若干个分类属性和若干个维度属性;基于二级属性bij的属性值,对待存储的武器装备数据进行统计,得到与二级属性bij对应的统计值sumij,其中,i为一级属性的编号,j为对应于i级属性的二级属性的编号,,,m为一级属性的个数,ni为一级属性i下的二级属性的个数;令i=1;

22、第一判断模块:配置为若i大于m,得到以数据元的一级属性进行分类的分类统计结果,令e=1,触发第三判断模块;否则,令j=1,对二级属性为bij的数据元进行统计,触发第二判断模块;

23、第二判断模块:配置为若j大于ni,触发第二赋值模块,否则触发排序模块;

24、排序模块:配置为取二级属性bij对应的统计值sumij,将{sumi1,……,sumi(j-1)}按从大到小的顺序进行排序,得到排序后的序列,=,k表示排序顺序,触发第一赋值模块;

25、第一赋值模块:配置为赋值j等于j+1,触发第二判断模块;

26、第二赋值模块:配置为赋值i等于i+1,触发第一判断模块;

27、第三判断模块:配置为基于统计值sumij形成的数据集aij确定数据层级统计值befij,其中,1≤e≤p,p为分类属性数量,1≤f≤q,q为维度属性数量,数据层级统计值befij代表分类属性为e、维度属性为f、一级属性为i、且二级属性为j的数据的汇总统计值;若e大于p,将触发存储模块;否则,令f=1,触发第四判断模块;

28、第四判断模块:配置为若f大于q,则令f=q,触发第三赋值模块;否则触发第一数值获取模块;

29、第一数值获取模块:配置为在数据集aij中,基于分类属性、维度属性获取相应数据lenefij,赋值f=f+1,触发第四判断模块;其中,lenefij代表分类属性为e、维度属性为f、一级属性为i、且二级属性为j的数据的汇总统计值;

30、第三赋值模块:配置为若f等于q,将数据lenefij利用压缩算法存储到befij对应的存储区域,赋值f=f-1,触发第五判断模块;

31、第五判断模块:配置为若f小于1,触发第五赋值模块;否则,触发去重模块;

32、去重模块:配置为在be[f-1]ij对应的存储区域中取该存储区域存储的数值作为统计值,该统计值计为eefij,将lenefij与eefij做去重汇聚操作,将结果利用压缩算法存储到befij对应的存储区域;触发第四赋值模块;

33、第四赋值模块:配置为赋值f=f-1,触发第五判断模块;

34、第五赋值模块:配置为赋值e=e+1,触发步骤第三判断模块;

35、存储模块:配置为将befij对应的数据保存至数据库中。

36、可选地,所述分类属性包括管理状态、质量等级、武器寿命。

37、可选地,所述维度属性包括单位代码、装备代码。

38、在本发明上述各方法实施例中,一种计算机可读存储介质,所述存储介质中存储有多条指令,所述多条指令用于由处理器加载并执行如前所述的方法。

39、在本发明上述各方法实施例中,一种电子设备,所述电子设备,包括:

40、处理器,用于执行多条指令;

41、存储器,用于存储多条指令;

42、其中,所述多条指令用于由所述存储器存储,并由所述处理器加载并执行如前所述的方法。

43、本发明具有以下优点:

44、1、适用于关系型数据库软件的设计与开发,适用的场景如下:

45、a) 统计要素信息发生变化时,需要增加数据统计要素;

46、b) 统计维度发生变化时,需要按照管理层级增加统计;

47、c) 数据量规模变大时,程序查询相应时间变慢,需要修改程序。

48、2、相比通过特定程序代码统计业务数据,本发明利用已有的定义的数据脚本,可以大幅提高数据的获取速度,无需人工干预,可以大幅降低人工维护成本,只需通过语句定义设置,即可实现自动读取和分析,通过重新聚合的数据结构,生成可执行的数据脚本,推送接口数据实现反向递归与聚类相结合的设计。

49、3、本发明反向递归与聚类相结合的统计模型思想下设计的业务系统软件对于此场景有较好的适应性和扩展性。当统计需求变化时,无需修改软件程序代码,减少了程序代码修改工作量。

50、下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1