System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据处理,更具体地说,涉及一种历史客运票证数据处理方法、装置及电子设备和存储介质。
技术介绍
1、历史客运票证数据是指过了业务处理时间的民航客运票证数据。民航客运票证数据是民航客运票证在不同业务模块中流转时,各个业务模块生成的数据项。随着时间的推移,历史客运票证数据会越来越多,为了配合公安或其他审计单位的审计需求的不确定性,需要对近几十年的海量历史客运票证数据进行管理,以便查询。
技术实现思路
1、本申请的目的是提供一种历史客运票证数据处理方法、装置及电子设备和存储介质,包括如下技术方案:
2、一种历史客运票证数据处理方法,包括:
3、通过不同的接收程序接收不同的业务模块发送的历史客运票证数据;其中,对应同一客运票证,不同的业务模块发送的历史客运票证数据关联有同一票证标识;
4、对应任一业务模块,通过所述任一业务模块对应的解析程序提取所述任一业务模块发送的各客运票证的历史客运票证数据的各指定字段,对应任一客运票证,将从所述任一客运票证的历史客运票证数据提取的每个指定字段分别与所述任一客运票证的票证标识相关联地存储;
5、将各个业务模块发送的历史客运票证数据存储到hbase表中,其中,每个客运票证的票证标识作为所述hbase表的一个行键,每个客运票证对应一个列簇,不同的业务模块对应所述列簇下的不同列,任一票证标识所在行中所述任一业务模块对应的列用于存储所述任一业务模块发送的所述任一票证标识关联的历史客运票证数据。
7、所述任一接收程序通过预先配置的多个线程从所述任一接收程序对应的消息队列中批量拉取所述任一接收程序对应的业务模块发送的历史客运票证数据。
8、上述方法,可选的,还包括:
9、监控所述消息队列中的数据积压量;
10、若所述数据积压量大于第一阈值,增加所述任一接收程序的线程数量,以及所述任一接收程序对应的消息队列中的数据分组数量;
11、若所述数据积压量小于第二阈值,减少所述任一接收程序的线程数量,以及所述任一接收程序对应的消息队列中的数据分组数量;
12、所述第二阈值小于所述第一阈值。
13、上述方法,可选的,还包括:
14、接收针对目标客运票证的回退请求;
15、若所述目标客运票证只有一个版本的历史客运票证数据,删除所述目标客运票证的票证标识与指定字段的关联关系;将所述目标客运票证的历史客运票证数据返回给各个业务模块,并删除所述hbase表中所述目标客运票证的历史客运票证数据;
16、若所述目标客运票证有多个版本的历史客运票证数据,将所述目标客运票证的最新版本的历史客运票证数据返回给各个业务模块,并删除所述hbase表中所述目标客运票证的最新版本的历史客运票证数据。
17、上述方法,可选的,所述通过不同的接收程序接收不同的业务模块发送的历史客运票证数据,包括:
18、通过不同的接收程序接收不同的业务模块发送的json格式的历史客运票证数据。
19、上述方法,可选的,还包括:
20、对历史客运票证数据处理流程进行日志记录;
21、监测是否存在表征异常的日志记录;
22、若存在表征异常的日志记录,输出提示信息。
23、上述方法,可选的,还包括:
24、获得同一时段内通过各个业务模块发送的历史客运票证数据的第一数据总量,以及各个接收程序接收的历史客运票证数据的第二数据总量;
25、若所述第二数据总量小于所述第一数据总量,从临时备份库中提取所述同一时段内的历史客运票证数据,以对所述hbase表中所述同一时段内的历史客运票证数据进行补充。
26、上述方法,可选的,还包括:
27、获得数据查询请求;所述数据查询请求中携带有目标业务模块的标识、查询字段和查询条件;
28、获得各个查询字段对应的目标票证标识;
29、根据所述目标票证标识和所述目标业务模块的标识,获得所述目标业务模块发送的对应所述目标票证标识的目标历史客运票证数据;
30、基于所述查询字段以及所述查询条件,在所述目标历史客运票证数据中提取取值满足所述查询条件的所述查询字段的取值;
31、输出各查询字段及其取值。
32、一种历史客运票证数据处理装置,所述装置包括:
33、接收模块,用于通过不同的接收程序接收不同的业务模块发送的历史客运票证数据;其中,对应同一客运票证,不同的业务模块发送的历史客运票证数据关联有同一票证标识;
34、解析模块,用于对应任一业务模块,通过所述任一业务模块对应的解析程序提取所述任一业务模块发送的各客运票证的历史客运票证数据的各指定字段,对应任一客运票证,将从所述任一客运票证的历史客运票证数据提取的每个指定字段分别与所述任一客运票证的票证标识相关联地存储;
35、存储模块,用于将各个业务模块发送的历史客运票证数据存储到hbase表中,其中,每个客运票证的票证标识作为所述hbase表的一个行键,每个客运票证对应一个列簇,不同的业务模块对应所述列簇下的不同列,所述任一客运票证所在行中所述任一业务模块对应的列用于存储所述任一业务模块发送的所述任一客运票证的历史客运票证数据。
36、一种电子设备,包括:
37、存储器,用于存储程序;
38、处理器,用于调用并执行所述存储器中的所述程序,通过执行所述程序实现如上任一项所述的历史客运票证数据处理方法的各个步骤。
39、一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上任一项所述的历史客运票证数据处理方法的各个步骤。
40、通过以上方案可知,本申请提供的一种历史客运票证数据处理方法、装置及电子设备和存储介质,通过不同的接收程序接收不同的业务模块发送的历史客运票证数据;对应同一客运票证,不同的业务模块发送的历史客运票证数据关联有同一票证标识;对应任一业务模块,通过该任一业务模块对应的解析程序提取该任一业务模块发送的各客运票证的历史客运票证数据的各指定字段,对应任一客运票证,将从该任一客运票证的历史客运票证数据提取的每个指定字段分别与该任一客运票证的票证标识相关联地存储;将各个业务模块发送的历史客运票证数据存储到hbase表中,其中,每个客运票证的票证标识作为hbase表的一个行键,每个客运票证对应一个列簇,不同的业务模块对应列簇下的不同列,任一客运票证所在行中该任一业务模块对应的列用于存储该任一业务模块发送的该任一客运票证的历史客运票证数据。
41、本申请实施例提供的历史客运票证数据处理方法,通过不同的接收程序接收不同业务模块发送的历史客运票证数据后,除了建立并存储票证标识与指定字段的关联关系,还基于本文档来自技高网...
【技术保护点】
1.一种历史客运票证数据处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,任一接收程序在接收对应的业务模块发送的历史客运票证数据时,用于:
3.根据权利要求2所述的方法,其特征在于,还包括:
4.根据权利要求1所述的方法,其特征在于,还包括:
5.根据权利要求1所述的方法,其特征在于,所述通过不同的接收程序接收不同的业务模块发送的历史客运票证数据,包括:
6.根据权利要求1所述的方法,其特征在于,还包括:
7.根据权利要求1-6任一项所述的方法,其特征在于,还包括:
8.一种历史客运票证数据处理装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括:
10.一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-7中任一项所述的历史客运票证数据处理方法的各个步骤。
【技术特征摘要】
1.一种历史客运票证数据处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,任一接收程序在接收对应的业务模块发送的历史客运票证数据时,用于:
3.根据权利要求2所述的方法,其特征在于,还包括:
4.根据权利要求1所述的方法,其特征在于,还包括:
5.根据权利要求1所述的方法,其特征在于,所述通过不同的接收程序接收不同的业务模块发送的历史客运票证数据,包括...
【专利技术属性】
技术研发人员:谭玲,于涛,王保国,
申请(专利权)人:中国航空结算有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。