
1.本公开涉及数据处理技术领域,尤其涉及智能交通技术领域。
背景技术:2.目前,如果需要对数据规格进行升级,可以等待正在进行的数据生产任务执行完毕,将数据生产任务所涉及的数据全量存入数据库,然后对数据库中的数据进行规格升级。
技术实现要素:3.本公开提供了一种数据生产方法、装置、电子设备、存储介质及程序产品。
4.根据本公开的一方面,提供了一种数据生产方法,包括:
5.在线对数据母库中的数据进行数据规格升级;
6.将进行中的旧规格数据任务适配升级前的服务进行数据生产,得到旧规格数据,所述旧规格数据任务为所述数据母库完成数据规格升级前产生的数据生产任务;
7.对所述旧规格数据进行数据规格升级,得到第一新规格数据,将所述第一新规格数据存入所述数据母库;
8.将新规格数据任务适配升级后的服务进行数据生产,得到第二新规格数据,所述新规格数据任务为所述数据母库完成数据规格升级后产生的数据生产任务;
9.将所述第二新规格数据存入所述数据母库。
10.根据本公开的二方面,提供了一种数据生产装置,包括:
11.升级模块,用于在线对数据母库中的数据进行数据规格升级;
12.生产模块,用于将进行中的旧规格数据任务适配升级前的服务进行数据生产,得到旧规格数据,所述旧规格数据任务为所述数据母库完成数据规格升级前产生的数据生产任务;
13.所述升级模块,还用于对所述旧规格数据进行数据规格升级,得到第一新规格数据;
14.存储模块,用于将所述第一新规格数据存入所述数据母库;
15.所述生产模块,还用于将新规格数据任务适配升级后的服务进行数据生产,得到第二新规格数据,所述新规格数据任务为所述数据母库完成数据规格升级后产生的数据生产任务;
16.所述存储模块,还用于将所述第二新规格数据存入所述数据母库。
17.根据本公开的三方面,提供了一种电子设备,包括:
18.至少一个处理器;以及
19.与所述至少一个处理器通信连接的存储器;其中,
20.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述一方面所述的方法。
21.根据本公开的四方面,提供了存储有计算机指令的非瞬时计算机可读存储介质,
其中,所述计算机指令用于使所述计算机执行上述第一方面所述方法。
22.根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现上述第一方面所述的方法
23.采用本公开实施例,可以在线对数据母库中的数据进行数据规格升级,因为采用在线升级的方式,所以会出现旧规格数据任务与新规格数据任务并存的情况。对于旧规格数据任务,可以适配升级前的服务进行数据生产得到旧规格数据,在对旧规格数据进行数据规格升级后,将升级后得到的第一新规格数据存入数据母库,可以保证数据母库中数据版本的唯一性。对于新规格数据任务,可以适配升级后的服务进行数据生产,得到第二新规格数据,并将第二新规格数据存入数据母库。因本公开实施例实现了同时执行新规格数据任务与旧规格数据任务,且保证了存入数据母库的数据都是新规格数据,所以可以实现在线进行数据规格升级,进而可以实时进行数据规格升级以更新数据版本,可以提高数据更新的时效性。
24.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
25.附图用于更好地理解本方案,不构成对本公开的限定。其中:
26.图1是本公开实施例提供的一种数据生产方法的流程图;
27.图2是本公开实施例提供的另一种数据生产方法的流程图;
28.图3是本公开实施例提供的一种数据规格升级过程中的数据生产流程的示例性示意图;
29.图4是本公开实施例提供的一种数据生产装置的结构示意图;
30.图5是用来实现本公开实施例的数据生产方法的电子设备的框图。
具体实施方式
31.以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
32.本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
33.相关技术中,在进行数据规格升级前,需要等待正在进行的数据生产任务执行完毕,并将数据生产任务所涉及的数据全部存储到数据母库,然后才能对数据母库中的数据进行数据规格升级。在数据规格升级过程中无法进行数据生产,会影响数据更新的时效性。
34.本公开实施例中的数据可以为任何适用于数据规格升级的数据,比如,可以为导航数据或地图数据。在本公开实施例中,以对智能交通场景下所使用的导航数据进行数据规格升级为例进行说明。
35.为了解决上述问题,本公开实施例提供了一种数据生产方法,该方法可以应用于电子设备,如图1所示,该方法包括:
36.s101、在线对数据母库中的数据进行数据规格升级。
37.本公开实施例中,在数据生产过程中,可以在线化对数据母库中的数据进行数据规格升级。也就是说,在对数据母库中的数据进行数据规格升级的同时,可以继续执行数据生产任务。
38.其中,数据母库中存储有用于执行数据生产任务的数据。作为示例,数据母库中可以包括地图数据、实时路况数据等。
39.s102、将进行中的旧规格数据任务适配升级前的服务进行数据生产,得到旧规格数据。
40.其中,旧规格数据任务为数据母库完成数据规格升级前产生的数据生产任务。换言之,如果某一数据任务在对数据母库完成数据规格升级前产生,且在对数据母库进行数据规格升级时,该数据生产任务还未结束,则该数据生产任务为旧规格数据任务。
41.例如,在对数据母库中的数据进行数据规格升级前,产生了数据生产任务a,在开始对数据母库进行数据规格升级时,该数据生产任务a仍存在,则数据生产任务a为旧规格数据任务。
42.本公开实施例中的“服务”是指用于对数据进行处理的服务,比如数据出入库服务、数据自动处理服务等。这些服务会随着数据规格的升级而升级,升级前的服务仍可以处理旧规格数据,升级后的服务用于处理新规格数据。在本步骤中,可以为旧规格数据任务适配升级前的服务,进而可以通过升级前的服务生产旧规格数据。
43.s103、对旧规格数据进行数据规格升级,得到第一新规格数据,将第一新规格数据存入数据母库。
44.s104、将新规格数据任务适配升级后的服务进行数据生产,得到第二新规格数据。
45.其中,新规格数据任务为数据母库完成数据规格升级后产生的数据生产任务。在本步骤中,可以为新规格数据任务适配升级后的服务,相应地,可以通过升级后的服务生产新规格数据,所生产的新规格数据即为上述第二新规格数据。
46.s105、将第二新规格数据存入数据母库。
47.采用本公开实施例,可以在线对数据母库中的数据进行数据规格升级,因为采用在线升级的方式,所以会出现旧规格数据任务与新规格数据任务并存的情况。对于旧规格数据任务,可以适配升级前的服务进行数据生产得到旧规格数据,在对旧规格数据进行数据规格升级后,将升级后得到的第一新规格数据存入数据母库,可以保证数据母库中数据版本的唯一性。对于新规格数据任务,可以适配升级后的服务进行数据生产,得到第二新规格数据,并将第二新规格数据存入数据母库。因本公开实施例实现了同时执行新规格数据任务与旧规格数据任务,且保证了存入数据母库的数据都是新规格数据,所以可以实现在线进行数据规格升级,进而可以实时进行数据规格升级以更新数据版本,可以提高数据更新的时效性。
48.另外,在相关技术中,为了实现离线进行数据规格升级,需提前2
‑
3天规划数据生产任务,使得数据生产任务能够在规定的时间(进行数据规格升级前)执行完成,对于规模化的数据生产场景,规划生产任务所需的管理成本较高。因本公开实施例可以实现在线进行数据规格升级,所以无需提前规划数据生产任务的完成时间,可以降低生产管理成本。
49.在本公开的一个实施例中,每个数据版本对应一个服务版本,例如,若进行数据规
格升级前的数据版本为3.0.1,进行数据规格升级后的数据版本为3.0.2。相应地,用于处理数据的服务的版本也需从3.0.1升级至3.0.2。本公开实施例不限制数据版本与服务版本的表示方式,数据版本的表示方式与服务版本的表示方式可以不同。
50.上述s102、将进行中的旧规格数据任务适配升级前的服务进行数据生产,得到旧规格数据,可以实现为:
51.确定旧规格数据任务对应的第一数据版本,调用与第一数据版本匹配的服务执行旧规格数据任务,生产旧规格数据。
52.例如,若第一数据版本为3.0.1,则可调用3.0.1版本的服务执行旧规格数据任务。
53.其中,确定旧规格数据任务对应的第一数据版本可以实现为:从旧规格作业库中获取执行旧规格数据任务所需的数据,并确定从旧规格作业库中获取的数据对应的第一数据版本。也就是说,第一数据版本为旧规格数据的数据版本。
54.旧规格作业库中存储了执行旧规格数据任务所需的数据,在产生旧规格数据任务时,电子设备可将执行该旧规格数据任务所需的数据从数据母库复制到旧规格作业库。进而,在对数据母库进行在线化数据规格升级的过程中,以及对数据母库升级完成后,电子设备仍能从旧规格作业库中获取执行旧规格数据任务所需的数据,并基于获取的数据对应的数据版本确定当前执行的旧规格数据任务对应的第一数据版本,以保证对旧规格数据任务的顺利执行。
55.相应地,上述s104、将新规格数据任务适配升级后的服务进行数据生产,得到第二新规格数据,可以实现为:
56.确定新规格数据任务对应的第二数据版本,调用与第二数据版本匹配的服务执行新规格数据任务,生产第二新规格数据。
57.例如,若第二数据版本为3.0.2,则可调用3.0.2版本的服务执行新规格数据任务。
58.在本公开实施例中,在完成对数据母库中的数据进行数据规格升级之后,可以创建新规格作业库,并将执行新规格数据任务所需的数据从数据母库中复制到新规格作业库。因此时已完成对数据母库的数据规格升级,所以新规格作业库中存储的是数据规格升级后的数据。
59.在已创建新规格作业库的基础上,上述确定新规格数据任务对应的第二数据版本的步骤可以实现为:从新规格作业库中获取执行新规格数据任务所需的数据,确定从新规格作业库中获取的数据对应的第二数据版本。第二数据版本为新规格数据的数据版本。
60.在完成对数据母库的在线化升级后,可能存在新规格数据任务与旧规格数据任务并存的情况。针对这种情况,本公开实施例中可以同时存在新规格作业库与旧规格作业库,既可以由旧规格作业库提供执行旧规格数据任务所需的旧规格数据,保证旧规格数据任务的顺利执行,又可以由新规格作业库提供执行新规格数据任务所需的新规格数据,保证新规格数据任务的顺利执行,且新旧数据任务互不影响。
61.采用本公开实施例,可以实现数据任务的数据版本与用于执行数据任务的服务的版本准确匹配,从而保证同时对旧规格数据任务与新规格数据任务进行准确地执行。
62.在本公开另一实施例中,在将数据存入数据母库之前,还需对数据进行准出检查。所以,在上述实施例的基础上,如图2所示,在s103之前,该方法还包括:
63.s106、通过旧规格数据版本对应的检查规则项,对旧规格数据进行准出检查。若准
出检查通过,则执行s103。
64.并且,在上述s105之前,该方法还包括:
65.s107、通过新规格数据版本对应的检查规则项,对新规格数据进行准出检查。若准出检查通过,则执行s105。
66.其中,准出检查是指针对数据生产任务生产的全量数据进行数据一致性、数据完备性等一系列检查。在进行数据规格升级前,可以提前设置每个数据版本所对应的检查规则项。比如,分别设置3.0.1版本的数据对应的检查规则项和3.0.2版本的数据对应的检查规则项。
67.在本公开实施例中,可以将上述实施例中确定的数据版本透传至准出检查服务,进而准出检查服务根据数据版本匹配的检查规则项对数据进行准出检查。例如,若准出检查服务接收到的数据版本为第一数据版本,则通过第一数据版本匹配的检查规则项对上述旧规格数据任务生产的数据进行准出检查;若准出检查服务接收到的数据版本为第二数据版本,则通过第二数据版本匹配的检查规则项对上述旧规格数据任务生产的数据进行准出检查。
68.采用本公开实施例,可以为新规格数据和旧规格数据适配各自对应的准出检查规则项,可以避免因检查规则项与生产的数据不匹配导致的准出检查失败的问题。
69.如图3所示,图3为本公开实施例提供的数据生产方法的一种示例性流程图,以将数据规格从3.0.1版本升级到3.0.2版本为例,该数据生产方法包括:
70.在线对数据母库进行升级,将数据母库中的数据规格从3.0.1版本升级到3.0.2版本。
71.在对数据母库升级前,已创建了3.0.1版本作业库,3.0.1版本作业库中存储有执行3.0.1版本数据任务所需的数据。
72.在对数据母库升级完成后产生的数据任务为3.0.2版本数据任务,在产生3.0.2版本数据任务时,可以创建3.0.2版本作业库,并将执行3.0.2版本数据任务所需的数据从数据母库中复制到3.0.2版本作业库中。
73.此时,同时存在3.0.1版本数据任务与3.0.2版本数据任务,本公开实施例可以通过两条产线同时执行两种数据规格的数据任务。
74.对于3.0.1版本数据任务,首先进行数据出库操作,即从作业库3.0.1中获取执行该3.0.1版本数据任务所需的3.0.1版本数据。然后过对获取到的数据进行数据预处理,从而确定3.0.1版本数据对应的3.0.1版本服务。然后通过3.0.1版本服务执行3.0.1版本数据任务进行数据生产。再使用3.0.1版本对应的检查规则项对生产的数据进行准出检查。准出检查通过后,将生产的3.0.1版本数据升级为3.0.2版本数据,将升级得到的3.0.2版本数据进行数据融合回库,以保证数据母库中存储的数据的版本唯一性。
75.对于3.0.2版本数据任务,首先进行数据出库操作,即从作业库3.0.2中获取执行该3.0.2版本数据任务所需的3.0.2版本数据。然后过对获取到的数据进行数据预处理,从而确定3.0.2版本数据对应的3.0.2版本服务。然后通过3.0.2版本服务执行3.0.2版本数据任务进行数据生产。再使用3.0.2版本对应的检查规则项对生产的数据进行准出检查。准出检查通过后,将生产的3.0.2版本数据进行数据融合回库。
76.采用该方法,因可以通过两条产线同时处理新规格数据任务和旧规格数据任务,
可以减少数据规格升级对数据任务的影响,实现了在线化进行数据规格升级。
77.对应于上述方法实施例,本公开实施例还提供一种数据生产装置,如图4所示,该装置包括:
78.升级模块401,用于在线对数据母库中的数据进行数据规格升级;
79.生产模块402,用于将进行中的旧规格数据任务适配升级前的服务进行数据生产,得到旧规格数据,旧规格数据任务为数据母库完成数据规格升级前产生的数据生产任务;
80.升级模块401,还用于对旧规格数据进行数据规格升级,得到第一新规格数据;
81.存储模块403,用于将第一新规格数据存入数据母库;
82.生产模块402,还用于将新规格数据任务适配升级后的服务进行数据生产,得到第二新规格数据,新规格数据任务为数据母库完成数据规格升级后产生的数据生产任务;
83.存储模块403,还用于将第二新规格数据存入数据母库。
84.采用本公开实施例,可以在线对数据母库中的数据进行数据规格升级,因为采用在线升级的方式,所以会出现旧规格数据任务与新规格数据任务并存的情况。对于旧规格数据任务,可以适配升级前的服务进行数据生产得到旧规格数据,在对旧规格数据进行数据规格升级后,将升级后得到的第一新规格数据存入数据母库,可以保证数据母库中数据版本的唯一性。对于新规格数据任务,可以适配升级后的服务进行数据生产,得到第二新规格数据,并将第二新规格数据存入数据母库。因本公开实施例实现了同时执行新规格数据任务与旧规格数据任务,且保证了存入数据母库的数据都是新规格数据,所以可以实现在线进行数据规格升级,进而可以实时进行数据规格升级以更新数据版本,可以提高数据更新的时效性。
85.在本公开另一实施例中,该装置还包括:
86.准出检查模块,用于通过旧规格数据版本对应的检查规则项,对旧规格数据进行准出检查,若准出检查通过,则触发升级模块401执行对旧规格数据进行数据规格升级的步骤;
87.准出检查模块,还用于:
88.通过新规格数据版本对应的检查规则项,对新规格数据进行准出检查,若准出检查通过,则触发存储模块403执行将第二新规格数据存入数据母库的步骤。
89.在本公开另一实施例中,生产模块402,具体用于:
90.确定旧规格数据任务对应的第一数据版本;
91.调用与第一数据版本匹配的服务执行旧规格数据任务,生产旧规格数据;
92.生产模块402,具体还用于:
93.确定新规格数据任务对应的第二数据版本;
94.调用与第二数据版本匹配的服务执行新规格数据任务,生产第二新规格数据。
95.在本公开另一实施例中,生产模块402,具体用于:
96.从旧规格作业库中获取执行旧规格数据任务所需的数据;
97.确定从旧规格作业库中获取的数据对应的第一数据版本。
98.在本公开另一实施例中,该装置还包括:
99.创建模块,用于创建新规格作业库;
100.复制模块,用于将执行新规格数据任务所需的数据从数据母库中复制到新规格作
业库;
101.生产模块402,具体用于:
102.从新规格作业库中获取执行新规格数据任务所需的数据;
103.确定从新规格作业库中获取的数据对应的第二数据版本。
104.本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
105.根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
106.图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
107.如图5所示,设备500包括计算单元501,其可以根据存储在只读存储器(rom)502中的计算机程序或者从存储单元508加载到随机访问存储器(ram)503中的计算机程序,来执行各种适当的动作和处理。在ram 503中,还可存储设备500操作所需的各种程序和数据。计算单元501、rom 502以及ram 503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。
108.设备500中的多个部件连接至i/o接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
109.计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如数据生产方法。例如,在一些实施例中,数据生产方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到ram 503并由计算单元501执行时,可以执行上文描述的数据生产方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据生产方法。
110.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出
装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
111.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
112.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd
‑
rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
113.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
114.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
115.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端
‑
服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
116.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
117.上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。