一种数据生成的方法和相关装置与流程

文档序号:28629818发布日期:2022-01-26 14:49阅读:47来源:国知局
一种数据生成的方法和相关装置与流程

1.本技术涉及数据处理技术领域,尤其涉及一种数据生成的方法和相关装置。


背景技术:

2.随着信息技术以及互联网的快速发展,各行各业均产生呈爆炸式增长的数据。该数据不仅包括结构化数据,而且包括半结构化数据以及非结构化数据。在大数据平台的建设过程中,需要准备大量的结构化数据、半结构化数据和非结构化数据,作为测试数据对大数据平台进行测试。
3.在获取到的半结构化数据较少的情况下,一般采用人工构造方式生成大量的测试半结构化数据。但是,发明人经过研究发现,半结构化数据具有丰富信息量的特性,上述人工构造方式,不仅需要耗费大量的时间和精力等,而且所生成的测试半结构化数据的质量较低。


技术实现要素:

4.有鉴于此,本技术实施例提供一种数据生成的方法和相关装置,不仅可以节省大量的时间和精力,而且可以提高所生成的测试半结构化数据的质量。
5.第一方面,本技术实施例提供了一种数据生成的方法,所述方法包括:
6.确定待生成测试半结构化数据的预设数据模板,所述预设数据模板是数据分析待生成测试半结构化数据对应的目标半结构化数据构建的;
7.获取待生成测试半结构化数据的预设数据格式和预设数据量,所述预设数据格式和所述预设数据量是根据半结构化数据测试需求确定的;
8.根据所述预设数据格式、所述预设数据量和所述预设数据模板,生成测试半结构化数据。
9.可选的,所述预设数据模板包括所述目标半结构化数据的数据结构和字段约束。
10.可选的,所述预设数据模板的构建步骤包括:
11.从上游接口获取所述目标半结构化数据;
12.对所述目标半结构化数据的数据结构和字段约束进行数据分析,获得所述预设数据模板。
13.可选的,所述根据所述预设数据格式、所述预设数据量和所述预设数据模板,生成测试半结构化数据,包括:
14.按照所述预设数据格式和所述预设数据模板,开始生成所述测试半结构化数据;
15.统计所述测试半结构化数据的生成数据量;
16.若所述生成数据量达到所述预设数据量,结束生成所述测试半结构化数据。
17.可选的,所述预设数据格式包括xml格式和json格式中的一种或多种;所述预设数据量包括所述测试半结构化数据的预设数据大小和所述测试半结构化数据的预设数据数量中的一种或多种。
18.可选的,所述方法还包括:
19.存储所述测试半结构化数据;
20.利用所述测试半结构化数据对大数据平台进行半结构化数据测试。
21.第二方面,本技术实施例提供了一种数据生成的装置,所述装置包括:确定单元、获取单元和生成单元;
22.所述确定单元,用于确定待生成测试半结构化数据的预设数据模板,所述预设数据模板是数据分析待生成测试半结构化数据对应的目标半结构化数据构建的;
23.所述获取单元,用于获取待生成测试半结构化数据的预设数据格式和预设数据量,所述预设数据格式和所述预设数据量是根据半结构化数据测试需求确定的;
24.所述生成单元,用于根据所述预设数据格式、所述预设数据量和所述预设数据模板,生成测试半结构化数据。
25.第三方面,本技术实施例提供了一种终端设备,所述终端设备包括处理器以及存储器:
26.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
27.所述处理器用于根据所述程序代码中的指令执行上述第一方面所述的数据生成的方法。
28.第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述第一方面所述的数据生成的方法。
29.第五方面,本技术实施例提供了、一种计算机程序产品,包括计算机程序或指令;当所述计算机程序或指令被处理器执行时,执行上述第一方面所述的数据生成方法。
30.与现有技术相比,本技术至少具有以下优点:
31.采用本技术实施例的技术方案,首先,确定待生成测试半结构化数据的预设数据模板,该预设数据模板是预先数据分析待生成测试半结构化数据对应的目标半结构化数据所得到的;然后,获取待生成测试半结构化数据的预设数据格式和预设数据量,该预设数据格式和该预设数据量是根据半结构化数据测试需求所确定的;最后,根据预设数据格式、预设数据量和预设数据模板,生成测试半结构化数据。由此可见,通过预先数据分析待生成测试半结构化数据对应的目标半结构化数据得到预设数据模板,能够分析目标半结构化数据的数据特性;以此结合半结构化数据测试需求所确定的预设数据格式和预设数据量,能够代替人工构造方式,自动化生成测试半结构化数据。基于此,该测试半结构化数据的自动化生成方式,不仅可以节省大量的时间和精力,而且可以提高所生成的测试半结构化数据的质量。
附图说明
32.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
33.图1为本技术实施例中一种应用场景所涉及的系统框架示意图;
34.图2为本技术实施例提供的一种数据生成的方法的流程示意图;
35.图3为本技术实施例提供的一种半结构化数据测试的方法的流程示意图;
36.图4为本技术实施例提供的一种数据生成的装置的结构示意图。
具体实施方式
37.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
38.在大数据平台的建设过程中,需要准备大量的结构化数据、半结构化数据和非结构化数据,作为测试数据对大数据平台进行测试。在获取到的半结构化数据较少的情况下,一般采用人工构造方式生成大量的测试半结构化数据。但是,发明人经过研究发现,半结构化数据具有丰富信息量的特性,上述人工构造方式,不仅需要耗费大量的时间和精力等,而且所生成的测试半结构化数据的质量较低。
39.为了解决这一问题,在本技术实施例中,确定待生成测试半结构化数据的预设数据模板,该预设数据模板是预先数据分析待生成测试半结构化数据对应的目标半结构化数据所得到的;获取待生成测试半结构化数据的预设数据格式和预设数据量,该预设数据格式和该预设数据量是根据半结构化数据测试需求所确定的;根据预设数据格式、预设数据量和预设数据模板,生成测试半结构化数据。可见,通过预先数据分析待生成测试半结构化数据对应的目标半结构化数据得到预设数据模板,能够分析目标半结构化数据的数据特性;以此结合半结构化数据测试需求所确定的预设数据格式和预设数据量,能够代替人工构造方式,自动化生成测试半结构化数据。基于此,该测试半结构化数据的自动化生成方式,不仅可以节省大量的时间和精力,而且可以提高所生成的测试半结构化数据的质量。
40.举例来说,本技术实施例的场景之一,可以是应用到如图1所示的场景中。该场景包括终端设备101和服务器102,用户通过终端设备101输入半结构化数据测试需求,终端设备101将目标半结构化数据和半结构化数据测试需求发送至服务器102;服务器102采用本技术实施例所提供的数据生成的具体实现方式,实现测试半结构化数据的自动化生成。
41.首先,在上述应用场景中,虽然将本技术实施例提供的实施方式的动作描述由服务器102执行;但是,本技术实施例在执行主体方面不受限制,只要执行了本技术实施例提供的实施方式所公开的动作即可。
42.其次,上述场景仅是本技术实施例提供的一个场景示例,本技术实施例并不限于此场景。
43.需要说明的是,本发明提供的数据生成的方法和相关装置可用于大数据领域。上述仅为示例,并不对本发明提供的数据生成的方法和相关装置的应用领域进行限定。
44.下面结合附图,通过实施例来详细说明本技术实施例中数据生成的方法和相关装置的具体实现方式。
45.示例性方法
46.参见图2,示出了本技术实施例中一种数据生成的方法的流程示意图。在本实施例中,所述方法例如可以包括以下步骤:
47.步骤201:确定待生成测试半结构化数据的预设数据模板,所述预设数据模板是数
据分析待生成测试半结构化数据对应的目标半结构化数据构建的。
48.由于相关技术中,在获取到的半结构化数据较少的情况下,一般采用人工构造方式生成大量的半结构化数据,考虑到半结构化数据具有丰富信息量的特性,采用人工构造方式,人工构造具有丰富信息量的测试半结构化数据,需要耗费大量的时间和精力等,且人工构造容易出现各种问题,导致所生成的测试半结构化数据的质量较低。
49.因此,对于任意半结构化数据而言,可以预先对该半结构化数据进行数据分析,得到该半结构化数据的数据特性,以构建该半结构化数据对应的数据模板。本技术实施例中,对于待生成测试半结构化数据而言,需要预先对待生成测试半结构化数据对应的目标半结构化数据进行数据分析,得到该目标半结构化数据的数据特性,以构建该目标半结构化数据对应的数据模板,作为待生成测试半结构化数据的预设数据模板;则为了实现待生成测试半结构化数据的生成,首先需要确定待生成测试半结构化数据的预设数据模板。
50.其中,每种类型的半结构化数据均具有特定数据结构和特定字段约束,以描述该类型的半结构化数据的规范要求,从而区别于其他类型的半结构化数据;则对目标半结构化数据进行数据分析,得到目标半结构化数据的数据特性,实际上是分析得到目标半结构化数据的数据结构和字段约束,构建为待生成测试半结构化数据的预设数据模板。因此,在本技术实施例一种可选的实施方式中,所述预设数据模板包括所述目标半结构化数据的数据结构和字段约束。
51.在构建预设数据模板的具体实施过程中,首先,上游接口可以获取到目标半结构化数据,该目标半结构化数据表示用于测试的半结构化数据,则该目标半结构化数据与待生成测试半结构化数据对应;然后,需要对该目标半结构化数据的数据结构和字段约束进行数据分析,从而构建该目标半结构化数据对应的数据模板,作为待生成测试半结构化数据的预设数据模板。因此,在本技术实施例一种可选的实施方式中,所述预设数据模板的构建步骤例如可以包括以下步骤a-步骤b:
52.步骤a:从上游接口获取所述目标半结构化数据。
53.步骤b:对所述目标半结构化数据的数据结构和字段约束进行数据分析,获得所述预设数据模板。
54.其中,预设数据模板可以存储在数据模板库中,在需要执行步骤201时,从数据模板库中确定到该预设数据模板,以便后续在生成测试半结构化数据时,使用该预设数据模板。
55.步骤202:获取待生成测试半结构化数据的预设数据格式和预设数据量,所述预设数据格式和所述预设数据量是根据半结构化数据测试需求确定的。
56.本技术实施例中,为了实现待生成测试半结构化数据的生成,不仅需要确定待生成测试半结构化数据的预设数据模板,而且需要明确待生成测试半结构化数据所采用的数据格式,作为预设数据格式,并明确待生成测试半结构化数据所需的数据量,作为预设数据量;该预设数据格式和预设数据量可以是通过半结构化数据测试需求所确定的。因此,在步骤201之后还需要获取待生成测试半结构化数据的预设数据格式和预设数据量。
57.其中,待生成测试半结构化数据所采用的数据格式可以是xml格式,也可以是json格式,还可以一部分待生成测试半结构化数据采用xml格式,另一部分待生成测试半结构化数据采用json格式。待生成测试半结构化数据所需的数据量,可以是预先设定的数据大小,
即,预设数据大小;也可以是预先设定的数据数量,即,预设数据数量;还可以是预设数据大小和预设数据数量的结合。因此,在本技术实施例一种可选的实施方式中,所述预设数据格式包括xml格式和json格式中的一种或多种;所述预设数据量包括所述测试半结构化数据的预设数据大小和所述测试半结构化数据的预设数据数量中的一种或多种。
58.步骤203:根据所述预设数据格式、所述预设数据量和所述预设数据模板,生成测试半结构化数据。
59.本技术实施例中,步骤201确定待生成测试半结构化数据的预设数据模板,步骤202获取待生成测试半结构化数据的预设数据格式和预设数据量之后,在预设数据模板表征待生成测试半结构化数据对应的目标半结构化数据的数据特性,预设数据格式表征待生成测试半结构化数据所采用的数据格式,以及预设数据量表征待生成测试半结构化数据所需的数据量的基础上;通过预设数据格式、预设数据量和预设数据模板,即可自动化生成测试半结构化数据。
60.步骤203具体实施时,首先,以预设数据格式和预设数据模板为基础,开始测试半结构化数据的生成;然后,在测试半结构化数据的生成过程中,需要统计所生成的测试半结构化数据的数据量,作为生成数据量;最后,判断生成数据量是否达到预设数据量,若是,表示所生成的测试半结构化数据的数据量满足预设数据量,则可以结束测试半结构化数据的生成。因此,在本技术实施例一种可选的实施方式中,所述步骤203例如可以包括以下步骤2031-步骤2033:
61.步骤2031:按照所述预设数据格式和所述预设数据模板,开始生成所述测试半结构化数据。
62.步骤2032:统计所述测试半结构化数据的生成数据量。
63.步骤2033:若所述生成数据量达到所述预设数据量,结束生成所述测试半结构化数据。
64.通过本实施例提供的各种实施方式,首先,确定待生成测试半结构化数据的预设数据模板,该预设数据模板是预先数据分析待生成测试半结构化数据对应的目标半结构化数据所得到的;然后,获取待生成测试半结构化数据的预设数据格式和预设数据量,该预设数据格式和该预设数据量是根据半结构化数据测试需求所确定的;最后,根据预设数据格式、预设数据量和预设数据模板,生成测试半结构化数据。由此可见,通过预先数据分析待生成测试半结构化数据对应的目标半结构化数据得到预设数据模板,能够分析目标半结构化数据的数据特性;以此结合半结构化数据测试需求所确定的预设数据格式和预设数据量,能够代替人工构造方式,自动化生成测试半结构化数据。基于此,该测试半结构化数据的自动化生成方式,不仅可以节省大量的时间和精力,而且可以提高所生成的测试半结构化数据的质量。
65.在上述数据生成实施例的基础上,对于生成的测试半结构化数据,考虑到其需要具有复用性等特点,还可以将其存储在半结构化数据库中,后续对大数据平台进行半结构化数据测试,需要利用存储的测试半结构化数据。因此,在本技术实施例一种可选的实施方式中,所述方法还包括:
66.参见图3,示出了本技术实施例中一种半结构化数据测试的方法的流程示意图。在本实施例中,所述方法例如可以包括以下步骤:
67.步骤301:确定待生成测试半结构化数据的预设数据模板,所述预设数据模板是数据分析待生成测试半结构化数据对应的目标半结构化数据构建的。
68.步骤302:获取待生成测试半结构化数据的预设数据格式和预设数据量,所述预设数据格式和所述预设数据量是根据半结构化数据测试需求确定的。
69.步骤303:根据所述预设数据格式、所述预设数据量和所述预设数据模板,生成测试半结构化数据。
70.本技术实施例中,步骤301-步骤303和上述实施例中步骤201-步骤203相同,因此,步骤301-步骤303的具体实施方式可参见上述实施例中步骤201-步骤203的具体实施方式,在此不再赘述。
71.步骤304:存储所述测试半结构化数据。
72.步骤305:利用所述测试半结构化数据对大数据平台进行半结构化数据测试。
73.通过本实施例提供的各种实施方式,首先,确定待生成测试半结构化数据的预设数据模板,该预设数据模板是预先数据分析待生成测试半结构化数据对应的目标半结构化数据所得到的;其次,获取待生成测试半结构化数据的预设数据格式和预设数据量,该预设数据格式和该预设数据量是根据半结构化数据测试需求所确定的;接着,根据预设数据格式、预设数据量和预设数据模板,生成测试半结构化数据;然后,对测试半结构化数据进行存储;最后,利用测试半结构化数据对大数据平台进行半结构化数据测试。由此可见,通过预先数据分析待生成测试半结构化数据对应的目标半结构化数据得到预设数据模板,能够分析目标半结构化数据的数据特性;以此结合半结构化数据测试需求所确定的预设数据格式和预设数据量,能够代替人工构造方式,自动化生成测试半结构化数据;存储生成的测试半结构化数据,以便后续调用测试半结构化数据,实现大数据平台的半结构化数据测试。基于此,该测试半结构化数据的自动化生成方式,不仅可以节省大量的时间和精力,而且可以提高所生成的测试半结构化数据的质量,从而提升大数据平台的半结构化数据测试的效率和效果。
74.示例性装置
75.参见图4,示出了本技术实施例中一种数据生成的装置的结构示意图。在本实施例中,所述装置例如具体可以包括:确定单元401、获取单元402和生成单元403;
76.所述确定单元401,用于确定待生成测试半结构化数据的预设数据模板,所述预设数据模板是数据分析待生成测试半结构化数据对应的目标半结构化数据构建的;
77.所述获取单元402,用于获取待生成测试半结构化数据的预设数据格式和预设数据量,所述预设数据格式和所述预设数据量是根据半结构化数据测试需求确定的;
78.所述生成单元403,用于根据所述预设数据格式、所述预设数据量和所述预设数据模板,生成测试半结构化数据。
79.在本技术实施例一种可选的实施方式中,所述预设数据模板包括所述目标半结构化数据的数据结构和字段约束。
80.在本技术实施例一种可选的实施方式中,所述装置还包括:分析单元;
81.所述获取单元,还用于从上游接口获取所述目标半结构化数据;
82.所述分析单元,用于对所述目标半结构化数据的数据结构和字段约束进行数据分析,获得所述预设数据模板。
83.在本技术实施例一种可选的实施方式中,所述生成单元403,包括:开始生成子单元、统计子单元和结束生成子单元;
84.所述开始生成子单元,用于按照所述预设数据格式和所述预设数据模板,开始生成所述测试半结构化数据;
85.所述统计子单元,用于统计所述测试半结构化数据的生成数据量;
86.所述结束生成子单元,用于若所述生成数据量达到所述预设数据量,结束生成所述测试半结构化数据。
87.在本技术实施例一种可选的实施方式中,所述预设数据格式包括xml格式和json格式中的一种或多种;所述预设数据量包括所述测试半结构化数据的预设数据大小和所述测试半结构化数据的预设数据数量中的一种或多种。
88.在本技术实施例一种可选的实施方式中,所述装置还包括:存储单元和测试单元;
89.所述存储单元,用于存储所述测试半结构化数据;
90.所述测试单元,用于利用所述测试半结构化数据对大数据平台进行半结构化数据测试。
91.通过本实施例提供的各种实施方式,首先,确定待生成测试半结构化数据的预设数据模板,该预设数据模板是预先数据分析待生成测试半结构化数据对应的目标半结构化数据所得到的;然后,获取待生成测试半结构化数据的预设数据格式和预设数据量,该预设数据格式和该预设数据量是根据半结构化数据测试需求所确定的;最后,根据预设数据格式、预设数据量和预设数据模板,生成测试半结构化数据。由此可见,通过预先数据分析待生成测试半结构化数据对应的目标半结构化数据得到预设数据模板,能够分析目标半结构化数据的数据特性;以此结合半结构化数据测试需求所确定的预设数据格式和预设数据量,能够代替人工构造方式,自动化生成测试半结构化数据。基于此,该测试半结构化数据的自动化生成方式,不仅可以节省大量的时间和精力,而且可以提高所生成的测试半结构化数据的质量。
92.此外,本技术实施例还提供了一种终端设备,所述终端设备包括处理器以及存储器:
93.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
94.所述处理器用于根据所述程序代码中的指令执行上述方法实施例所述的数据生成的方法。
95.本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述方法实施例所述的数据生成的方法。
96.本技术实施例还提供了一种计算机程序产品,包括计算机程序或指令;当所述计算机程序或指令被处理器执行时,执行上述方法实施例所述的数据生成方法。
97.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
98.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和
软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
99.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
100.以上所述,仅是本技术的较佳实施例而已,并非对本技术作任何形式上的限制。虽然本技术已以较佳实施例揭露如上,然而并非用以限定本技术。任何熟悉本领域的技术人员,在不脱离本技术技术方案范围情况下,都可利用上述揭示的方法和技术内容对本技术技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本技术技术方案的内容,依据本技术的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本技术技术方案保护的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1