用于车联网云端的数据接入方法与流程

文档序号:30077995发布日期:2022-05-18 03:45阅读:480来源:国知局
用于车联网云端的数据接入方法与流程

1.本发明涉及计算机网络通讯技术领域,特别是涉及一种用于车联网云端的数据接入方法。


背景技术:

2.随着车联网的流行,车辆的基础属性数据越来越重要。稳定和快速的车辆数据构建,对于车联网的稳定运行,发挥着重要作用。参见图1所示,对于一辆车的生命周期来说,一般包含产线阶段的生产数据、车辆销售阶段的销售数据、以及车主使用阶段的售后数据。
3.产线阶段:对于车联网的能力支持来说,产线阶段的生产数据会包含车机装入的sim卡信息、tbox信息、ecu基础数据等。sim卡,在工厂阶段,一般会开通临时套餐,供车联网功能在生产阶段调试,开通流量后,车机可以与车联网云端建立消息通讯,为车联网功能提供网络支持。tbox信息,包含提供ssl安全通讯的基础数据,tbox序列号、软硬件版本信息等。ecu基础数据用作ota升级等。对于每个车辆品牌,一般会有多个生产基地,从而车联网所在服务端也需要与每个基地进行数据同步。
4.到店确认和车辆销售阶段:车辆下线后,会发往各地的经销商。经销商收到车辆后,会做一个到店确认,上报车辆的车型、车系、物料、颜色、配置等信息。根据车辆高中低配的配置(车型、物料等不同),车联网的能力也有差异,此时上报了车辆的销售数据,从而确认了车辆的能力集。对于车联网所在服务端,也需要与每个品牌的销售系统,建立数据同步的通道。
5.售后阶段:这个阶段的车辆,可以正常使用车联网功能了。但是,如果说出现需要更换车机的情况,那相应车辆基础数据会发生变更。这种类型数据,一般是通过相应的售后诊断系统来进行的数据上报。同样,车联网所在服务端也需要及时同步到换件数据,为建立新的车联网通道提供数据支持。
6.通过以上场景可以看到,在车联网云端,有经常性的同步不同车辆品牌基础数据的需求。主要有两点:一是有新的生产基地投入量产;二是新车系、新车型投入量产的速度也很快。数据同步服务需要及时的接入新车辆数据,来满足车联网使用的需求。但是,对于数据同步服务来说,为保证服务的稳定性和减少接入成本,需要尽可能减少发版,来满足新的数据接入需求。然而,目前普遍采用硬编码的方式,每接入一个车辆品牌或者新车系、车型数据,就需要进行大量的代码开发工作,以此来完成数据采集和数据解析的功能,如此不仅耗时耗力,并且持续性的功能代码叠加可能造成服务不稳定。


技术实现要素:

7.本发明的一个目的是要克服现有技术中的至少一个技术缺陷,提供一种能够有效保证数据同步服务的稳定性的用于车联网云端的数据接入方法。
8.本发明的一个进一步的目的是要提高数据同步服务的通用性。
9.特别地,本发明提供了一种用于车联网云端的数据接入方法,包括:
10.将任一请求接入车联网云端的数据源作为目标数据源;
11.获取目标数据源的采集方式;
12.根据采集方式创建与目标数据源对应的目标采集任务;
13.执行目标采集任务,以从目标数据源采集得到原始数据;
14.针对原始数据执行解析处理过程,得到待接入数据;
15.将待接入数据存储到车联网云端以完成数据同步服务。
16.可选地,车联网云端具有传输接口,传输接口用于传输目标采集任务动态运行所需的全部参数;并且获取目标数据源的采集方式的步骤包括:
17.调用传输接口;
18.通过传输接口获取目标数据源的采集方式。
19.可选地,通过传输接口获取目标数据源的采集方式的步骤包括:
20.判断传输接口是否支持目标数据源将要传入的类型参数;
21.若支持,通过传输接口获取目标数据源的采集方式;
22.若不支持,根据类型参数对传输接口进行参数扩展,通过扩展后的传输接口获取目标数据源的采集方式。
23.可选地,根据采集方式创建与目标数据源对应的目标采集任务的步骤包括:
24.根据采集方式设置目标采集任务的采集参数;
25.设置目标采集任务的运行参数;
26.根据采集参数和运行参数创建目标采集任务。
27.可选地,所述采集参数包括采集的地址参数、采集的属性参数、采集的数据类型和采集的身份验证参数的至少之一;
28.所述运行参数包括采集开始时间、采集结束时间、任务运行周期和采集时间的跨度的至少之一。
29.可选地,解析处理过程包括数据转换过程,数据转换过程包括:
30.确认数据同步服务过程的数据接收方所需的业务对象属性;
31.根据业务对象属性查找对应的数据转换规则;
32.根据数据转换规则将原始数据映射成数据接收方需要的对象数据。
33.可选地,根据数据转换规则将原始数据映射成数据接收方需要的对象数据的步骤包括:
34.判断原始数据是否出现异常信息;
35.若是,对原始数据进行数据修补,并根据数据转换规则将修补后的原始数据映射成对象数据。
36.可选地,解析处理过程包括数据去重过程和/或数据清洗过程;并且
37.数据去重过程包括:在原始数据有重复数据时,对原始数据进行去重,以保留重复数据中最新的一条数据;
38.数据清洗过程包括:在原始数据有脏数据时,对原始数据进行过滤,以过滤掉脏数据。
39.可选地,解析处理过程包括数据聚合过程,数据聚合过程包括:
40.从采集方式中读取目标数据源的数据类型;
41.获取包含数据类型的全部的对应关系;
42.根据各对应关系对原始数据进行聚合处理。
43.可选地,解析处理过程包括数据分析过程,数据分析过程包括:
44.预先设计针对单个字段的解析表;
45.根据解析表对原始数据的每个属性字段的内容进行分析。
46.可选地,将待接入数据存储到车联网云端的步骤包括:
47.判断待接入数据是否准确;
48.若不准确,利用预先定义的修正模型对待接入数据进行修正,并将修正后的待接入数据存储到车联网云端。
49.本发明提供的用于车联网云端的数据接入方法中,可将任一请求接入车联网云端的数据源作为目标数据源,并获取目标数据源的采集方式,根据采集方式创建与目标数据源对应的目标采集任务,然后执行目标采集任务以从目标数据源采集得到原始数据,并针对原始数据执行解析处理过程,得到待接入数据,然后将待接入数据存储到车联网云端。基于本发明的方案能够以一种轻量配置的方式完成对数据的采集和解析,这种轻量配置的方式即是采用数据动态采集的和数据动态解析的方式,其依赖于动态创建的目标采集任务,会自动组装采集地址和参数,完成原始数据的采集,并且在采集完成后,数据同步服务会读取配置好的解析规则,动态完成数据的解析。相对于现有技术,本发明的方案无需改造原始服务代码的接入模式,仅需少量级代码开发或无需代码开发即可在车联网云端接入目标数据源,在保证数据同步服务的稳定性的同时减少了接入成本。
50.进一步地,本发明的创建目标采集任务的方式,高度抽象了采集参数,具有很强的通用性,并且可灵活扩展和复用。
51.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式
52.根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
附图说明
53.后文将参照附图以示例性而非限制性的方式详细描述本发明的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:
54.图1是根据现有的一车辆的生命周期示意图;
55.图2是根据本发明一个实施例的用于车联网云端的数据接入方法的示意性流程图;
56.图3是根据本发明一个实施例的数据转换过程的示意原理图;
57.图4是根据本发明一个实施例的车辆识别代号编制规则文档示意图;
58.图5是根据本发明一个实施例的用于车联网云端的数据接入方法的示意性详细流程图;
59.图6是根据本发明一个实施例的解析处理过程的示意性流程图。
具体实施方式
60.下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
61.图2是根据本发明一个实施例的用于车联网云端的数据接入方法的示意性流程图。参见图2所示,本发明实施例的用于车联网云端的数据接入方法可以包括如下步骤s202至步骤s212。
62.步骤s202,将任一请求接入车联网云端的数据源作为目标数据源。
63.步骤s204,获取目标数据源的采集方式。
64.步骤s206,根据采集方式创建与目标数据源对应的目标采集任务。
65.步骤s208,执行目标采集任务,以从目标数据源采集得到原始数据。
66.步骤s210,针对原始数据执行解析处理过程,得到待接入数据。
67.步骤s212,将待接入数据存储到车联网云端以完成数据同步服务。
68.本发明实施例将任一请求接入车联网云端的数据源作为目标数据源,并获取目标数据源的采集方式,根据采集方式创建与目标数据源对应的目标采集任务,然后执行目标采集任务以从目标数据源采集得到原始数据,并针对原始数据执行解析处理过程,得到待接入数据,然后将待接入数据存储到车联网云端,如此能够以一种轻量配置的方式完成对数据的采集和解析,这种轻量配置的方式即是采用数据动态采集的和数据动态解析的方式,其依赖于动态创建的目标采集任务,会自动组装采集地址和参数,完成原始数据的采集,并且在采集完成后,数据同步服务会读取配置好的解析规则,动态完成数据的解析。相对于现有技术,本发明实施例无需改造原始服务代码的接入模式,仅需少量级代码开发或无需代码开发即可在车联网云端接入目标数据源,在保证数据同步服务的稳定性的同时减少了接入成本。
69.考虑到数据接入过程中相关参数的传输,在一些实施例中,可在车联网云端设置传输接口。该传输接口可用于传输目标采集任务动态运行所需的全部参数。此时,在获取目标数据源的采集方式时,可直接调用传输接口,进而通过传输接口来获取目标数据源的采集方式。其中采集方式包括采集通道和采集数据源的参数。采集数据源的参数可以包括但不限于采集的url、采集的具体参数、采集数据的身份验证、采集的数据类型。采集的url即为任一请求接入车联网云端的目标数据源提供的url地址。采集的具体参数指的是需要采集的具体的参数,以用来区分获取哪个生产基地和哪个车系的车辆数据,采集的具体参数例如可以包括时间参数、车系参数、同步的基底标识等等。采集数据的身份验证为目标数据源传入的身份验证的数据,比如token数据等。采集的数据类型为每种数据类型对应的数据标识,通过数据标识可确定采集的数据类型,为后面数据动态解析做支持。
70.实际应用中,针对不同数据源,其需要传输的类型参数可能不同,如此每一数据源接入时,要求传输接口支持的类型参数也会不同。鉴于此,在一些实施例中,当通过传输接口获取目标数据源的采集方式时,可首先判断传输接口是否支持目标数据源将要传入的类型参数,若支持,则直接通过传输接口来获取目标数据源的采集方式。反之,若不支持,则根据目标数据源将要传入的类型参数对传输接口进行参数扩展,进而通过扩展后的传输接口
获取目标数据源的采集方式,如此保证了传输接口能够传输目标数据源将要传入的全部类型参数,以便后续动态创建目标采集任务,避免目标数据源接入失败。
71.针对步骤s206,本发明一实施例中提供了一种可选实施方式。在根据采集方式创建与目标数据源对应的目标采集任务时,可根据采集方式设置目标采集任务的采集参数,并同时设置目标采集任务的运行参数,然后根据采集参数和运行参数创建目标采集任务。通过该实施例,目标采集任务与目标数据源的采集方式相关联,目标采集任务并非保持不变,其实际上会随着目标数据源的变化而变化。也就是说,当请求接入车联网云端的目标数据源的采集方式不同时,创建的目标采集任务也将不同。
72.具体地,通过传输接口获取到目标数据源的采集方式,即通过传输接口传递的目标数据源的采集通道和采集数据源的各类参数后,可以根据所传递至的采集通道和采集数据源的各类参数的值设置目标采集任务的采集参数,以便后续目标采集任务在运行时根据所设置的采集参数从目标数据源采集所需的原始数据。目标采集任务的采集参数可以包括但不限于采集的地址参数(如url地址)、采集的属性参数(如时间参数、车系参数、同步的基底标识等)、采集的数据类型、采集的身份验证参数等。
73.目标采集任务的运行参数指控制目标采集任务运行的参数,可以包括但不限于采集开始时间、采集结束时间、任务运行周期、采集时间的跨度等。下面对各运行参数进行详细说明。
74.(1)采集开始时间和采集结束时间。对于车辆数据来说,某一类型属性数据的产生,都是在特定时间内。采集开始时间和采集结束时间这两个运行参数,决定了目标采集任务运行时采集何时的车辆数据。例如,在2021年09年21日至30日,目标基地下线量产了3000台车,需要通过数据同步服务采集这段时间的数据,则可以将目标采集任务的采集开始时间设置为2021-09-21,采集结束时间设置为2021-09-30。
75.(2)任务运行周期。对于大批量的数据同步,为避免给数据源提供方带来服务压力,在进行数据同步服务时需要进行分批次的同步,才能同步完成指定采集的时间数据。例如,当需要采集2021年09年21日至30日共10天的数据时,可以分5次采集,第一次采集21-22日的数据,第二次采集23-24日的数据,第三次采集25-26日的数据,第四次采集27-28日的数据,第五次采集29-30日的数据。假设任务运行周期设置为1min,则第一次采集触发的时间为当前第一分钟,第二次触发的时间为第二分钟,以此类推,在第一次采集触发后的五分钟内,完成这个数据同步任务。
76.(3)采集时间的跨度。采集时间的跨度指每次待采集的数据的时间跨度。仍以前述任务运行周期的例子为例,每次采集2天的数据,则采集时间的跨度即为2天。
77.目标采集任务创建完成后,即可自动执行目标采集任务,以便从目标数据源采集得到原始数据。
78.需要说明的是,在车联网的基础数据接入场景中,上面仅讲述了数据同步服务的数据动态采集过程,在这个过程中,只是从目标数据源采集到了车辆的原始数据,但是该原始数据是无法直接使用和入库的。针对这种情况,在采集得到车辆的原始数据后,还可进一步的针对车辆的原始数据执行解析处理过程,以得到待接入数据,进而将待接入数据存储到车联网云端以完成数据同步,以便这些数据后续可被直接使用或分类入库。
79.解析处理处理过程可以包括数据转换过程、数据去重过程、数据清洗过程、数据分
析过程、数据聚合过程中的任一个或多个过程。
80.在一些实施例中,当解析处理过程包括数据转换过程时,这时可对原始数据执行数据转换过程,例如可首先确认数据同步服务过程的数据接收方所需的业务对象属性,并根据业务对象属性查找对应的数据转换规则,然后根据数据转换规则将原始数据映射成数据接收方需要的对象数据,从而方便数据接收方使用。数据转换规则配置在数据库中。
81.下面在两个案例中对数据转换规则进行说明,其中,convertfiled代表是接入的原始数据的字段名称,rule代表是解析规则。
82.案例说明一:
[0083][0084][0085]
默认情况下,取原始数据中的tuid作为转换后对象temid的值。
[0086]
如果传的tuid值为空、4个0、6个0的情况下,则用源数据中的iccid前面补4个0,作为temid的值。
[0087]
案例说明二:
[0088]
{
[0089]
"convertfiled":"msisdn",
[0090]
"rule":{
[0091]
"default":"msisdn",
[0092]
"+%":"substr(msisdn,2)"
[0093]
}
[0094]
}
[0095]
默认情况下,取源数据中的msisdn作为msisdn的值。
[0096]
如果传的msisdn值,前缀为"+"的情况下,则去掉前面的"+"号,作为msisdn的值。
[0097]
另外,为了提高数据同步服务的通用性,在创建目标采集任务过程中,可使用json形式进行组装。相应地,在解析处理过程中,同样可采用json形式定义解析的配置关系。
[0098]
图3是根据本发明一个实施例的数据转换过程的示意原理图。参见图3所示,数据转换的原始数据会被统一转换成json格式,然后通过java反射,遍历转换成预期java对象的成员变量,接下来从数据转换规则中,获取各成员变量对应的原始数据的字段和值,在获取到原始值后,根据解析规则,解析成对应的值,然后再通过java反射,设置java对象的成员变量的值,从而得到数据转换的对象数据。
[0099]
需要说明的是,在数据转换过程中,当原始数据的字段名称发生变化时,无需修改代码,只需要修改解析规则即可。一般解析规则在mysql数据库中进行存储,解析规则修改后,重新加载解析规则即可对字段名称发生变化后的原始数据进行转换。
[0100]
此外,在根据数据转换规则将原始数据映射成所述数据接收方需要的对象数据时,还需要判断原始数据是否出现异常信息,若出现异常信息,则需要对原始数据进行数据修补,并根据数据转换规则将修补后的原始数据映射成数据接收方所需的对象数据。数据修补例如为在数据转换过程中,关于接入temid的案例中,如果传的tuid值为空、4个0、6个0的情况下,使用iccid前面补4个0,作为temid的值。如果出现了8个0,我们同样进行配置,作为temid的值。如此,避免接入异常数据,提高了数据接入的准确性。
[0101]
在实际应用中,原始数据不可避免地出现重复数据或脏数据。为此,在一些实施例中,解析处理过程可以包括数据去重过程和/或数据清洗过程。其中数据去重过程包括:在原始数据有重复数据时,对原始数据进行去重,以保留重复数据中最新的一条数据。这里最新的一条数据可以是最新版本的数据或数据记录时间最新的数据。数据清新过程可以包括:在原始数据有脏数据时,对原始数据进行过滤,以过滤掉脏数据。脏数据例如为数据字段为空(比如说车辆vin码缺失)、字段过长、出现乱码等现象的数据。
[0102]
在车联网的基础数据接入场景中,不同数据源的采集方式不同,其对应的数据类型也不同,基于单独的目标数据源获取的车辆信息有限,不便于车联网云端的使用。在这种情况下,解析处理过程可以包括数据聚合过程。数据聚合过程包括一般地可以包括:从采集方式中读取目标数据源的数据类型;获取包含读取到的数据类型的全部的对应关系;根据各对应关系对原始数据进行聚合处理。
[0103]
示意性的,一台车辆,在产线阶段,基地会维护车辆的物料数据,但是不会维护销售车型数据。另外,数据同步服务会提前从销售系统采集到物料和车型的对应关系。当数据同步服务从基地采集到车辆物料号后,就会匹配到车辆对应的销售车型数据。
[0104]
在一些实施例中,解析处理过程可以包括数据分析过程。在对原始数据执行数据解析处理过程时,可预先设计针对单个字段的解析表,然后根据解析表对原始数据的每个属性字段的内容进行分析,以获取车辆的更多属性数据,来丰富车辆的信息。举例说明,车辆识别码vin的每一位,都有其特殊含义,分析vin码信息,可获取车辆采用的燃料(汽油、柴油)及发动机排量、生产年份,生产基地等属性数据。
[0105]
图4是根据本发明一个实施例的车辆识别代号编制规则文档示意图。参见图4所示,车辆识别代号由世界制造厂识别代号(wmi)、车辆说明部分(vds)和车辆指示部分(vis)三部分组成,共17位。注意:图3中示出的—代表字母或数字;—代表数字。
[0106]
车辆识别代号的解析表的配置关系如下表所示,其中position:位置标识、mapping:映射关系。
[0107][0108]
配置说明:
[0109]
第一条记录:vin码的第11位为生产基地代码,a为晋中基地,h代表为临海基地。
[0110]
第二条记录:vin码的第10位为生产日期代码。k代表为2019年生产,l代表为2020年生产。
[0111]
考虑到数据源的数据可能存在不准确的情况,无法满足车联网应用的需求。鉴于此,在将待接入数据存储到车联网云端时,可判断待接入数据是否准确,若准确,则可直接将待接入数据存储到车联网云端。若不准确,则可利用预先定义的修正模型对待接入数据进行修正,并将修正后的待接入数据存储到车联网云端,以便满足车联网云端应用的需求。
[0112]
修正数据模型的代码示例如下:
[0113][0114]
配置关系举例:
[0115][0116][0117]
图5是根据本发明一个实施例的用于车联网云端的数据接入方法的示意性详细流程图。参见图5所示,该实施例的数据接入方法可以包括如下步骤s502至步骤s526。
[0118]
步骤s502,将任一请求接入车联网云端的数据源作为目标数据源。
[0119]
步骤s504,调用传输接口。
[0120]
步骤s506,判断传输接口是否支持目标数据源将要传入的类型参数。若是,执行步骤s508;若否,执行步骤s410。
[0121]
步骤s508,通过传输接口获取目标数据源的采集方式。
[0122]
步骤s510,根据类型参数对传输接口进行参数扩展,通过扩展后的传输接口获取目标数据源的采集方式。
[0123]
步骤s512,根据采集方式设置目标采集任务的采集参数。
[0124]
步骤s514,设置目标采集任务的运行参数。
[0125]
步骤s516,根据采集参数和运行参数创建目标采集任务。
[0126]
步骤s518,执行目标采集任务,以从目标数据源采集得到原始数据。
[0127]
步骤s520,针对原始数据执行解析处理过程,得到待接入数据。
[0128]
步骤s522,判断待接入数据是否准确。若是,执行步骤s424;若否,执行步骤s526。
[0129]
步骤s524,将待接入数据存储到车联网云端。
[0130]
步骤s526,利用预先定义的修正模型对待接入数据进行修正,并将修正后的待接入数据存储到车联网云端。
[0131]
图6是根据本发明一个实施例的解析处理过程的示意性流程图。参见图6所示,本发明实施例的解析处理过程可以包括如下步骤s602至步骤s610。
[0132]
步骤s602,数据转换处理过程。在该步骤中,根据数据转换规则将原始数据映射成数据接收方需要的对象数据。
[0133]
步骤s604,数据去重过程。本步骤中,针对转换后的对象数据进行数据去重处理,过滤掉重复数据。
[0134]
步骤s606,数据清洗过程。本步骤中,针对去重后的数据进行数据清洗处理,过滤掉脏数据。
[0135]
步骤s608,数据分析过程。本步骤中,针对清洗后的数据进行数据分析,
[0136]
步骤s610,针对分析后的对象数据执行数据聚合过程。
[0137]
本发明实施例采用一种轻量配置的方式完成对数据的采集和解析,这种轻量配置的方式即是采用数据动态采集的和数据动态解析的方式,其依赖于动态创建的目标采集任务,会自动组装采集地址和采集参数,完成原始数据的采集,并且在采集完成后,数据同步服务会读取配置好的解析规则,动态完成数据的解析。相对于现有技术,本发明的方案无需改造原始服务代码的接入模式,仅需少量级代码开发或无需代码开发即可在车联网云端接入目标数据源,在保证数据同步服务的稳定性的同时减少了接入成本。
[0138]
此外,本发明实施例的数据动态采集中,创建目标采集任务的方式,高度抽象了采集参数,并用json形式加以组装,具有较强的通用性,对于后续,如果有更复杂的采集通道,直接进行参数扩展,如此能够用少量的开发即可完成数据采集,后续如果有类似的采集方式,直接加以复用即可。同时,本发明实施例的数据动态解析中,解析规则的配置,同样采用json形式的定义,如果有新的解析规则,在对应的属性字段规则的节点,添加规则标识和规则值即可完成解析。特别地,数据同步服务代码中首次增加这类解析规则后,后续无需再次发版,可接入相同规则类型数据。
[0139]
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1