一种航班数据统计方法及装置与流程

文档序号:31638254发布日期:2022-09-24 05:58阅读:219来源:国知局
一种航班数据统计方法及装置与流程

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.基于此,本技术实施例提供了一种航班数据统计方法,该方法应用于目标系统。目标系统独立于大型主机系统,能够接收大型主机系统传输的多个航班的航班数据和旅客订票数据。航班数据中包括航班计划数据和航班库存数据。确定多个航班中的每一个航班为目标航班。基于目标航班的航班计划数据对应航班库存数据进行修正,获取目标航班的航班基础数据。进而,将目标航班的航班基础数据和旅客订票数据均按照航段进行划分,分别获取目标航班的各个航段的航段明细数据和航段旅客数据。调整目标航班的各个航段的航段明细数据和航段旅客数据在每个航段上进行对应。进而,可统计目标航班的每个航段的航段旅客数据中的各种状态数据。由此,使用独立于大型主机系统的目标系统对航班数据进行统计,能够满足大型主机系统往开放平台迁移的要求。
36.为了便于理解本技术实施例提供的航班数据统计方法,下面结合图1所示的场景示例进行说明。参见图1所示,该图为本技术实施例提供的示例性应用场景的框架示意图。
37.该航班数据统计方法应用于目标系统。目标系统为独立于大型主机系统之外的一个开放系统。在本技术实施例中,代替大型主机系统,由目标系统实现航班数据的统计。目标系统至少包括数据接入模块、基础数据获取模块、明细数据获取模块和整合数据模块。
38.在本技术实施例中,大型主机系统向目标系统实时传输多个航班的航班数据和旅客订票数据。其中,航班数据包括航班计划数据以及航班库存数据。目标系统的数据接入模块接收大型主机系统传输的多个航班的航班数据和旅客订票数据。
39.为了便于叙述,将多个航班中的每一个航班确定为目标航班。进而,以目标航班为例进行说明。在目标系统接收目标航班的航班数据和旅客订票数据之后,基础数据获取模块基于目标航班的航班计划数据对目标航班的航班库存数据进行修正,并将修正后的目标航班的航班库存数据确定为目标航班的航班基础数据。
40.进而,明细数据获取模块将目标航班的航班基础数据按照航段进行划分,获取目标航班的各个航段的航段明细数据。整合数据模块包括第一整合数据模块和第二数据整合模块。其中,第一数据整合模块将目标航班的旅客订票数据按照航段进行划分,获取目标航班的各个航段的航段旅客数据。并调整目标航班的各个航段的航段明细数据和目标航班的各个航段的航段旅客数据在每个航段上进行对应。
41.最后,在获得目标航班的各个航段的航段旅客数据之后,第二数据整合模块统计目标航班的每个航段的航段旅客数据中的各种状态数据。其中,状态数据的种类和具体内容根据实际情况进行确定,这里不进行限定。
42.本领域技术人员可以理解,图1所示的框架示意图仅是本技术的实施方式可以在其中得以实现的一个示例。本技术实施方式的适用范围不受到该框架任何方面的限制。
43.为了便于理解本技术,下面结合附图对本技术实施例提供的一种航班数据统计方法进行说明。
44.参见图2所示,该图为本技术实施例提供的一种航班数据统计方法的流程图。作为一种可选示例,该方法可应用于图1所示的目标系统。如图2所示,该方法可以包括s201-s205:
45.s201:接收大型主机系统传输的多个航班的航班数据和旅客订票数据;航班数据包括航班计划数据以及航班库存数据。
46.由于不同航班的核心交易系统依旧在大型主机系统,要使得目标系统接收的数据与主机数据保持一致,需要实时同步大型主机系统的数据。基于此,目标系统实时接收大型主机系统传输的多个航班的航班数据以及旅客订票数据。
47.作为一种可选示例,由目标系统中的数据接入模块接收大型主机系统传输的多个航班的航班数据和旅客订票数据。其中,多个航班可能是同一航司的不同航班,还可能是不同航司的不同航班。具体实施时,目标系统的数据接入模块可以采用tums协议,并通过透传方式将大型主机系统的航班计划数据、航班库存数据以及旅客订票数据实时发送给消息中间件,并在消息头中对这三种类型数据进行标注。
48.其中,航班数据为和具体航班相关的数据,包括航班计划数据以及航班库存数据。航班计划数据中包含航班创建时的一些基本信息,例如:航司、航班号、航班天等基本数据。航班库存数据中包含航司、航班号、航班天等基本数据。另外,当航班出现订票、退票等操作时,会改变航班库存数据,因此航班库存数据还能够体现航班订票情况。
49.在实际应用中,在制定一个航班的航班计划并生效以后,大型主机系统会生成该航班的航班计划数据和航班库存数据。例如,航班计划数据为xx航司的xx航班于xx年xx月xx日计划飞行。若xx航司于xx年xx月xx日计划飞行的xx航班的座位数总共为250个,在刚生成航班计划数据时,航班库存为250个。随着旅客订票数量的增加,航班库存会减少。
50.旅客订票数据为旅客在某航班上订票的具体信息,能够直观体现旅客及其航班订票的各种状态,至少包括旅客订票记录、航司、航班号、航班天、航段创建步骤号等。其中,旅客订票记录pnr能够反映旅客的航程、航班座位占用的数量以及旅客信息等。旅客订票记录用订座记录编号进行表示,一般为六位数字和字母的组合。航段创建步骤号为旅客预定航班机票的顺序号,能够表征旅客预定航班机票的先后顺序。另外,基于航段创建步骤号与旅客预定航班机票时间的映射关系,还可以获得具体的旅客预定航班机票时间。旅客订票数据可以包括旅客预定航班机票时间。
51.可以理解的是,不同航班对应的航班数据和旅客订票数据是不同的。
52.航班数据和旅客订票数据作为后续统计状态数据的基础数据,在传输过程中的稳定性和完整性是较为重要的。数据接入模块不仅用于多个航班的航班数据和旅客订票数据的数据传输,还用于在传输的数据有损耗的情况下进行数据补偿。例如,可采用数据仓库全量数据的方式进行数据补偿。如此,可提高数据传输过程的稳定性和完整性。
53.s202:基于目标航班的航班计划数据对目标航班的航班库存数据进行修正,将修正后的目标航班的航班库存数据确定为目标航班的航班基础数据;目标航班分别为多个航
班中的每一个。
54.在目标系统的数据接入模块接收多个航班的航班数据和旅客订票数据之后,数据接入模块会将航班的航班数据和旅客订票数据发送给数据处理模块。在本技术实施例中,数据处理模块至少包括基础数据获取模块、明细数据获取模块和整合数据模块。航班的航班数据将会被分发给航班数据服务进行处理,具体地,将航班数据发送给基础数据获取模块。旅客订票数据将会被分发给旅客服务进行处理,具体地,将旅客订票数据发送给整合数据模块。
55.作为一种可选示例,数据处理模块使用java的集合框架jcf,依靠集群部署方式。如此,不仅为数据处理模块提供足够的处理性能,还提高了可用性。
56.为了便于叙述,将多个航班中的每一个航班确定为目标航班。进而,下面将以目标航班为例进行说明,在实际应用中,可获取多个航班的各种相关数据。
57.航班计划数据为针对某一航班定制的计划飞行数据,航班库存数据为航班计划生效后航班的真实数据。实际中,由于一些原因可能导致同一航班的计划飞行数据中的航班天和航班库存数据中的航班天并不相同。由此,需要对目标航班的航班库存数据进行修正。具体地,基础数据获取模块接收到目标航班的航班数据之后,基于目标航班的航班计划数据对目标航班的航班库存数据进行修正,并将修正后的目标航班的航班库存数据作为目标航班的航班基础数据。可以理解的是,目标航班的航班计划数据中的航班天和修正后的航班库存数据中的航班天是相同的。
58.在一种可能的实现方式中,本技术实施例提供了一种基于目标航班的航班计划数据对目标航班的航班库存数据进行修正,将修正后的目标航班的航班库存数据确定为目标航班的航班基础数据的具体实施方式,具体请参见下文a1-a6。
59.作为一种可选示例,基于目标航班的航班计划数据和航班库存数据得到目标航班的航班基础数据之后,获取目标航班的航班基础数据中的航司、航班号、航班天数据,并以航司、航班号、航班天作为主键,存储于数据库中的基础数据表中。该数据库为独立于大型主机系统的一个数据库。例如,数据库为postgresql企业级数据库,其稳定性高且功能强大,能够应对高并发处理。
60.另外,由于目标系统实时接收大型主机系统传输的多个航班的航班数据和旅客订票数据,随着时间的推进,目标系统还会接收大型主机传输的新的航班数据和旅客订票数据。关于是否将新的航班数据插入到基础数据表中,具体过程请参见下文b1-b4。
61.s203:将目标航班的航班基础数据按照航段进行划分,获取目标航班的各个航段的航段明细数据。
62.一个航班可能包括多个航段,在获取目标航班的航班基础数据之后,将目标航班的航班基础数据按照航段进行划分,获取目标航班的各个航段的航段明细数据。
63.例如,当目标航班的航线有三个或者三个以上的机场时,例如机场a、机场b和机场c,航线为a-b-c。该航线中一共有三个航段,分别为航段a-b,航段a-c和航段b-c。由于这三个航段都能被旅客订座,则为了保证旅客订票数据和航班基础数据相对应,将航班基础数据拆分成航段明细数据。
64.目标航班的航段明细数据和目标航班的航班基础数据中的航司、航班号、航班天是相同的。相比于目标航班的航班基础数据,目标航班的航段明细数据中还包括起飞机场
和到达机场。即航段明细数据至少包括航司、航班号、航班天、起飞机场以及到达机场。例如,航段a-b,航段a-c和航段b-c中的航司、航班号、航班天是相同的。但是,各个航段的起飞机场和到达机场是有区别的。
65.作为一种可选示例,该步骤可由目标系统中的明细数据获取模块执行。
66.在一些实施例中,目标航班的航段明细数据还包括首航节航班日期数据。由于一些航班的时间跨度比较长,例如目标航班的航线为a-b-c,从机场a出发的日期是2月1日,到达机场c的日期是2月2日,可知该航班的首航节航班日期数据为2月1日。则航段b-c对应的首航节航班日期数据即为2月1日。基于此,为了便于将航班数据和旅客数据相对应起来,航段明细数据中存储各个航段的首航节航班日期数据。
67.作为一种可选示例,获取目标航班的各个航段的航段明细数据之后,以航段明细数据中的航司、航班号、航班天、起飞机场、到达机场作为主键,以首航节航班日期数据等数据作为非主键内容存到数据库中的明细数据表中。由此,每个航班均按照s202-s203执行之后,明细数据表中存储了各种航司、各种航班号、各种航班天、各种起飞机场以及各种到达机场下的航班数据。例如,明细数据表中的一个数据行的主键可能为航司a、航班号aa、2月1日、机场a、机场c。明细数据表中的另一个数据行的主键可能为航司b、航班号bb、2月1日、机场a、机场c。
68.另外,由于目标系统实时接收大型主机系统传输的多个航班的航班数据和旅客订票数据,随着时间的推进,目标系统还会接收大型主机传输的新的航班数据和旅客订票数据。根据新的航班数据获取新的航段明细数据,关于是否将新的航段明细数据插入到明细数据表中,具体过程请参见下文c1-c3。
69.s204:将目标航班的旅客订票数据按照航段进行划分,获取目标航班的各个航段的航段旅客数据,并调整目标航班的各个航段的航段明细数据和目标航班的各个航段的航段旅客数据在每个航段上进行对应。
70.作为一种可选示例,该步骤可由目标系统中的整合数据模块执行。
71.由于航班中不同航段均可能有旅客进行订票,为了和航段明细数据相对应,还需把目标航班的旅客订票数据按照航段进行划分,获取目标航班的各个航段的航段旅客数据。例如,当目标航班的航线为a-b-c时,若旅客订票的航段为a-b和b-c两个航段时。则要将该旅客的旅客订票数据按照a-b航段和b-c航段进行划分。若旅客订票的航段为a-c,则将旅客的旅客订票数据按照航段进行划分之后,该旅客的航段旅客数据即为单航段a-c的旅客订票数据。
72.并且在将目标航班的旅客订票数据按照航段进行划分之后,还要调整目标航班的各个航段的航段明细数据和目标航班的各个航段的航段旅客数据在每个航段上进行对应。
73.具体实施时,作为一种可选示例,获取目标航班的各个航段的航段旅客数据之后,为了区分不同旅客的航段旅客数据,以航段旅客数据中的旅客订票记录、航司、航班号、航班天、起飞机场、到达机场以及航段创建步骤号作为主键,存到数据库中的整合数据表中。在将目标航班的各个航段的航段旅客数据存储于整合数据表的过程中,使整合数据表中的目标航班的各个航段的航段旅客数据和明细数据表中目标航班的各个航段的航段明细数据在每个航段上相对应。由此,每个航班均按照s202-s204执行之后,整合数据表中存储了各种航司、各种航班号、各种航班天、各种起飞机场、各种到达机场、各种旅客订票记录、各
种航段创建步骤号下的旅客订票数据。
74.可以理解的是,旅客订票数据以旅客实际的订票详情为准。为了便于理解,下面对三种应用场景进行举例说明。本技术实施例并不限定以下三种应用场景,可根据旅客订票数据的实际情况进行确定。
75.第一示例,当目标航班的航线为a-b-c时,若旅客同时在该目标航班上的航段a-b和航段b-c进行了订票并支付,则此时获得的是一个旅客订票记录。此时,航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的旅客订票记录、航司、航班号以及航段创建步骤号是相同的。若航段a-b和航段b-c在同一航班天,则航段a-b和航段b-c分别对应的航段旅客数据中的航班天也是相同的。
76.第二示例,当目标航班的航线为a-b-c时,若旅客同时在该目标航班的航段a-b和另一航班的航段b-c上进行了订票并支付,则此时获得的是一个旅客订票记录。此时,航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的旅客订票记录以及航段创建步骤号是相同的。而航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的航班号是不同的。若两个航班的所属航司相同,则航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的航司是相同的。若航段a-b和航段b-c在同一航班天,则航段a-b和航段b-c分别对应的航段旅客数据中的航班天也是相同的。
77.第三示例,当目标航班的航线为a-b-c时,若旅客在该目标航班的航段a-b进行了订票并支付,预设时间之后,旅客在该目标航班的航段b-c上进行了订票并支付。则航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的旅客订票记录和创建步骤号是不同的。此外,航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的航司和航班号是相同的。若航段a-b和航段b-c在同一航班天,则航段a-b和航段b-c分别对应的航段旅客数据中的航班天也是相同的。可以理解的是,若预设时间之后,旅客在另一航班的航段b-c上进行了订票并支付,则航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的航班号是不同的。此时,航段a-b和航段b-c分别对应的该旅客的航段旅客数据中的航司是否相同可根据航班号的实际情况进行确定。
78.可以理解的是,上述三种应用场景中不同航段的起飞机场和到达机场根据实际情况进行确定,这里不再赘述。
79.另外,从时间角度来看,旅客订票数据包括相关旅客的历史订票数据和现行订票数据。历史订票数据和现行订票数据均可按照航段划分为多个航段的航段旅客数据。
80.作为一种可选示例,目标系统将目标航班的航班基础数据、目标航班的各个航段的航段明细数据以及目标航班的各个航段的航段旅客数据独立存储于数据库中。
81.s205:统计目标航班的每个航段的航段旅客数据中的各种状态数据。
82.在获取目标航班的各个航段的航段旅客数据,并调整目标航班的各个航段的航段明细数据和目标航班的各个航段的航段旅客数据在每个航段上进行对应之后,统计出目标航班的每个航段的航段旅客数据中的各种状态数据,并将航段旅客数据中的各种状态数据按照航段存入数据库的整合数据表中。
83.其中,状态数据可以包括航班状态、航班销售状态等。航班状态包括开始申请订票、候补订票、确认订票、再确认订票、保护订票以及取消订票等。航班销售状态包括是否出票、是否退票以及是否等待等。
84.此时,明细数据表以航司、航班号、航班天、起飞机场、到达机场为主键,存储了各种航司、各种航班号、各种航班天、各种起飞机场以及各种到达机场下的航班数据。整合数据表中以航司、航班号、航班天、起飞机场、到达机场、旅客订票记录以及航段创建步骤号为主键,存储了各种航司、各种航班号、各种航班天、各种起飞机场、各种到达机场、各种旅客订票记录、各种航段创建步骤号下的旅客订票数据,以及对应的各种状态数据。
85.例如,明细数据表中的一个数据行为xx航司、xx航班号、xx航班天、机场a、机场b。将明细数据表中xx航班的各个航段的航段明细数据和整合数据表中xx航班的各个航段的航段旅客数据在每个航段上进行对应之后,若整合数据表中在xx航司、xx航班号、xx航班天、机场a、机场b下订票的旅客有5人,每个旅客分别对应各自的旅客订票记录以及航段创建步骤号。则相应地,整合数据表中会对应有5个数据行x1-x5,且该5个数据行x1-x5的航司、航班号、航班天、起飞机场、到达机场均为xx航司、xx航班号、xx航班天、机场a、机场b,只有旅客订票记录和航段创建步骤号不同。
86.参见表1,表1为一个示意的整合数据表。表1中从上到下的5个数据行分别为x1、x2、x3、x4、x5。
87.表1整合数据表
[0088][0089]
进而,如表1所示,例如状态数据为是否出票、是否退票、是否等待等3个状态统计。则上述整合数据表中的5个数据行x1-x5均对应有相应的状态数据。例如每个数据行用xi表示,i为[1,5]。对应的状态数据为data1i,data2i和data3i,其中data1i为xi对应的第一个状态数据,具体为是否出票。data2i为xi对应的第二个状态数据,具体为是否退票。data3i为xi对应的第三个状态数据,具体为是否等待。具体的状态数据如表3所示,如第一个数据行x1中该旅客对应的各个状态数据为“是,否,否”。即,data11为“是”,data21为“否”,data31为“否”。
[0090]
需要说明的是,表1所示的整合数据表并未列出航班状态,表1仅用于举例说明,实际中并不限定于此。
[0091]
可以理解的是,整合数据表是将旅客订票数据转为各个航段的航段旅客数据进行存储的,还统计了不同的状态数据。而不是将旅客订票数据存为航班基础数据或者航班明细数据,如此,将相同航段的所有状态数据统计在一起,大大减少了用户查询所需要汇总的时间,便于用户进行查询时快速基于状态数据获取对应的统计数据,极大的提高了查询效率。并且状态数据统计时没有关联航班数据,当需要对状态数据进行修改时只需要修改整合数据模块的处理,不需要对航班数据或者其他模块进行任何修改。
[0092]
基于上述s201-s205的内容可知,本技术实施例提供了一种航班数据统计方法,该方法应用于目标系统。目标系统独立于大型主机系统,能够接收大型主机系统传输的多个航班的航班数据和旅客订票数据。航班数据中包括航班计划数据和航班库存数据。确定多个航班中的每一个航班为目标航班。基于目标航班的航班计划数据对应航班库存数据进行修正,获取目标航班的航班基础数据。进而,将目标航班的航班基础数据和旅客订票数据均按照航段进行划分,分别获取目标航班的各个航段的航段明细数据和航段旅客数据。调整目标航班的各个航段的航段明细数据和航段旅客数据在每个航段上进行对应。进而,可统计目标航班的每个航段的航段旅客数据中的各种状态数据。由此,使用独立于大型主机系统的目标系统对航班数据进行统计,能够满足大型主机系统往开放平台迁移的要求。
[0093]
需要说明的是,附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0094]
需要注意,本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
[0095]
需要注意,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
[0096]
需要注意,可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0097]
在一种可能的实现方式中,本技术实施例提供了一种s202中基于目标航班的航班计划数据对目标航班的航班库存数据进行修正,将修正后的目标航班的航班库存数据确定为目标航班的航班基础数据的具体实施方式,包括:
[0098]
a1:获取目标航班的航班计划数据中包括的第一航班天以及目标航班的航班库存数据中包括的第二航班天。
[0099]
作为一种可选示例,在基于目标航班的航班计划数据对目标航班的航班库存数据
进行修正时,目标航班的航班计划数据中的航司和航班库存数据中的航司是一致的,且目标航班的航班计划数据中的航班号和航班库存数据中的航班号也是一致的。此时,主要比对目标航班的航班计划数据中的航班天和目标航班的航班库存数据中的航班天是否一致。
[0100]
第一航班天用于表示目标航班的计划航班日期范围。在实际应用中,第一航班天是根据目标航班的有效日期范围及频率计算得到的。例如,目标航班的有效日期范围为1月1日到3月31日。频率为每周的周一、周二和周三,则能够具体确定第一航班天具体对应的日期。在本技术实施例中,第一航班天可用date1进行表示。数据库基础数据表中存储了目标航班的航班库存数据,获取数据库基础数据表中目标航班所有的航班天。在本技术实施例中,第二航班天可用date2进行表示。可以理解的是,date1和date2是相同航司且相同航班号下的不同航班天集合。
[0101]
a2:当第一目标航班天属于第一航班天且不属于第二航班天时,将第一目标航班天对应的航班计划数据添加到航班库存数据中;第一目标航班天分别为预设日期范围内中的每一天。
[0102]
确定一个合理的预设日期范围,预设日期范围可参考目标航班的计划航班日期范围进行设置,一般大于或等于目标航班的计划航班日期范围。例如预设日期范围也为1月1日到3月31日,或者为12月1日到4月15日。
[0103]
为了方便叙述,将预设日期范围内中的每一天用第一目标航班天进行叙述。在本技术实施例中,第一目标航班天可用date进行表示。
[0104]
基于此,可通过第一目标航班天是否属于第一航班天以及是否属于第二航变天的情况,来确定第一航班天中的某一航班天和第二航班天中的某一航班天是否一致。
[0105]
当date∈date1且date不∈date2时,说明航班计划数据中已经存在第一目标航班天,但是航班库存数据中还未存储。由于航班计划数据较航班库存数据生成快,则此时将第一目标航班天对应的航班计划数据添加到航班库存数据中,后续明细数据获取模块继续处理。例如,若date为1月15日,date1中包含1月15日,date2不包括1月15日。则date1和date2关于1月15日这一天的记录是不一致的。
[0106]
a3:当第一目标航班天不属于第一航班天且属于第二航班天时,将第一目标航班天对应的航班库存数据从航班库存数据中删除。
[0107]
当date不∈date1且date∈date2,说明航班计划数据中不存在第一目标航班天,但是航班库存数据中存在。由于航班计划数据较航班库存数据生成快,则可能是航班计划数据中已经将第一目标航班天进行了删除,但是航班库存数据中还未进行同步,则此时将第一目标航班天对应的航班库存数据从航班库存数据中删除。
[0108]
a4:当第一目标航班天属于第一航班天且属于第二航班天时,比对目标航班的航班计划数据以及目标航班的航班库存数据是否一致,不一致则更新航班库存数据。
[0109]
当date∈date1,date∈date2时,可以得到目标航班的航班计划数据与航班库存数据中的航司和航班号相同以外,目标航班的航班计划数据与航班库存数据中还均包括相同的航班天date。此时,比对目标航班的航班计划数据以及目标航班的航班库存数据是否一致时,主要比对的是除航司、航班号、航班天之外的其他数据,例如航线、机型等。不一致则更新基础数据表中对应的航班数据,后续明细数据获取模块继续处理,一致则结束处理。
[0110]
a5:当第一目标航班天不属于第一航班天且不属于第二航班天时,对航班库存数
据不进行处理。
[0111]
当date不∈date1,date不∈date2时,该情况不考虑,对航班库存数据不进行处理。
[0112]
a6:将修正后的目标航班的航班库存数据确定为目标航班的航班基础数据。
[0113]
修正后的目标航班的航班库存数据和航班计划数据相互对应,基本一致。确定目标航班的航班基础数据为航班库存数据,且在该情况下,航班基础数据为修正后的航班库存数据。
[0114]
基于a1-a6的内容可知,可基于目标航班的航班计划数据对目标航班的航班库存数据进行修正,由此得到的目标航班的航班基础数据较为准确。
[0115]
在一种可能的实现方式中,本技术实施例提供了一种是否将新的航班数据插入到基础数据表中的具体实施方式,具体包括:
[0116]
b1:实时接收大型主机系统传输的待插入航班的待插入航班数据。
[0117]
待插入航班的待插入航班数据机为大型主机系统传输的新的航班数据。
[0118]
b2:当根据待插入航班数据中的航司和航班号确定数据库中存储有待插入航班的航班数据时,判断第二目标航班天是否属于数据库中待插入航班的航班数据中包括的第三航班天;第二目标航班天为待插入航班数据中的每一个航班天。
[0119]
当根据待插入航班数据中的航司和航班号确定数据库中存储有待插入航班的航班数据时,说明数据库先前已经存储了相同航班、相同航班号的一些航班数据。此时,直接根据航班天确定待插入航班的待插入航班数据是否需要存储于数据库中。
[0120]
在本技术实施例中,第三航班天可用date3进行表示,第二目标航班天可用date`进行表示。
[0121]
b3:当第二目标航班天属于第三航班天时,比对待插入航班数据和数据库存储的待插入航班的航班数据是否一致,不一致则更新数据库存储的待插入航班的航班数据。
[0122]
当date`∈date3时,说明第三航班天包括第二目标航班天。此时,确定待插入航班数据和数据库存储的待插入航班的航班数据是否一致。具体实施时,主要比对除航班天、航司和航班号之外的其他数据是否一致。不一致则更新数据库存储的待插入航班的航班数据,后续明细数据获取模块继续处理,一致则结束处理。
[0123]
b4:当第二目标航班天不属于第三航班天时,将待插入航班数据添加到数据库中待插入航班的航班数据中。
[0124]
当date`不∈date3时,说明第三航班天不包括第二目标航班天。此时,将待插入航班数据添加到数据库中待插入航班的航班数据中,后续明细数据获取模块继续处理。
[0125]
可以理解的是,由于航班数据包括航班计划数据和航班库存数据,则具体实施时对航班计划数据和航班库存数据分别按照b1-b4的方式进行处理,最后添加到数据库对应的数据中,这里不再赘述。进而,基于更新后的待插入航班的航班计划数据对更新后的待插入航班的航班库存数据进行修正,获取更新后的待插入航班的航班基础数据。之后将航班基础数据传输给明细数据获取模块继续处理。
[0126]
在一种可能的实现方式中,基于b1-b4的内容,在执行b1-b4之后,本技术实施例提供了一种是否将新的航段明细数据插入到明细数据表中的具体实施方式,具体包括:
[0127]
c1:根据待插入航班的航班数据,获取待插入航班的各个航段的待插入航段明细
数据。
[0128]
接收待插入航班的航班数据后,按照航段对待插入航班的航班数据进行划分,以获取待插入航班的各个航段的待插入航段明细数据。
[0129]
c2:当第二目标航班天属于第四航班天时,比对待插入航班的各个航段的待插入航段明细数据和数据库存储的待插入航班的各个航段的航段明细数据是否一致,不一致则更新数据库存储的待插入航班的各个航段的航段明细数据;第四航班天为数据库存储的待插入航班的各个航段的航段明细数据中包括的航班天。
[0130]
在本技术实施例中,第四航班天用date4进行表示。当date`∈date4,比对待插入航班的各个航段的待插入航段明细数据和数据库存储的待插入航班的各个航段的航段明细数据是否一致。具体实施时,主要比对除航班天、航司和航班号之外的其他数据是否一致。不一致则更新数据库存储的待插入航班的各个航段的航段明细数据,一致则结束处理。
[0131]
c3:当第二目标航班天不属于第四航班天时,将待插入航班的各个航段的待插入航段明细数据对应添加到数据库中待插入航班的各个航段的航段明细数据中。
[0132]
当date`不∈date4,将待插入航班的各个航段的待插入航段明细数据对应添加到数据库中待插入航班的各个航段的航段明细数据中。作为一种可选示例,当数据库中待插入航班的各个航段的航段明细数据存储于明细数据表时,则将待插入航班的各个航段的待插入航段明细数据对应添加到明细数据表中的相应位置即可。
[0133]
可以理解的是,第二目标航班天是否属于第四航班天和第二目标航班天是否属于第三航班天是相互对应的。若第二目标航班天属于第三航班天,则第二目标航班天也属于第四航班天。
[0134]
还可以理解的是,从大型主机系统传输过来的新的旅客订票数据的处理方式和航班数据类似,这里不再赘述。
[0135]
参见图3,图3为本技术实施例提供的另一种示例性应用场景的示意图。如图3所示,目标系统还可以进一步包括操作数据模块、查询数据模块和用户调用场景模块。数据处理模块包括操作数据模块、基础数据获取模块、明细数据获取模块和整合数据模块。
[0136]
可以理解的是,数据处理模块主要对航班计划数据、航班库存数据以及旅客订票数据进行处理,获得航班基础数据、航班明细数据,并将航班明细数据和旅客订票数据按照航段划分,获得航段明细数据和航段旅客数据。各种数据均存储于数据库。
[0137]
操作数据模块用于接收数据接入模块传输的航班计划数据、航班库存数据以及旅客订票数据,使用消息中间件承接此三类数据,并根据三类数据的消息类型分发给不同的服务进行后续处理。服务包括航班数据服务和了乘客服务。具体地,通过数据消息头中的标识,数据处理模块会为不同种类的数据配置不同的处理服务名,将对应的消息分发给配置的服务处理,保证服务处理对应数据。可知,使用消息中间件不仅能够降低不同模块之间的耦合程度,并能够作为缓冲,减少模块之间由于性能差异引起的隐患。
[0138]
用户调用场景模块用于通过配合其他软件,和用户进行交互。用户通过用户调用模块输入用户信息和请求数据等。用户调用场景模块响应于用户的输入,将用户输入的用户信息和请求数据发送给查询模块进行查询。
[0139]
查询数据模块对接收的用户信息和请求数据进行校验,校验成功后,从数据库中获取请求数据,并根据获取的请求数据,获得请求数据对应的统计数据,将该汇总的统计数
据返回给用户调用场景模块。用户调用场景模块再将统计数据输出给用户。
[0140]
由此,基于图3所示的目标系统,在用户查询航班状态统计数据时,本技术实施例提供了一种目标系统响应于用户的查询,获取用户需求数据,并将用户需求数据返回给用户的具体实施方式,包括:
[0141]
d1:响应于输入的用户数据和请求数据,对用户数据和请求数据进行校验。
[0142]
用户数据可以理解为用户的属性,例如:该用户所属航司、该用户账号、该用户账号配置等级等,请求数据为请求状态统计数据的关键参数,例如状态统计数据为航班销售状态统计数据。例如:航司、航班号、航班天、起飞到达机场等。
[0143]
作为一种可选示例,如图3所示,该步骤可由用户调用场景模块和查询数据模块实现。
[0144]
d2:在对用户数据和请求数据校验成功之后,结合请求数据和每个航班中各个航段的航段明细数据,获取待查询航段。
[0145]
请求数据主要用于定位明细数据表中的航班数据。在对用户数据和请求数据校验成功之后,将请求数据和数据库的明细数据表中存储的每个航班中各个航段的航段明细数据进行比对,则可获取用户请求的待查询航段。由此,用户请求的待查询航段、航司、航班号、航班天等均是确定的。
[0146]
作为一种可选示例,如图3所示,该步骤可由查询数据模块实现。当用户数据和请求数据检验失败时,可通过查询数据模块将失败提示信息返回给用户调用场景模块,再由用户调用场景模块输出失败提示信息给用户。
[0147]
d3:结合待查询航段和待查询航段的航段旅客数据中的各种状态数据,获取待查询航段对应的各种状态统计数据。
[0148]
根据待查询航段和待查询航段的航段旅客数据中的各种状态数据,获取待查询航段对应的各种状态统计数据。其中,待查询航段对应的各种状态统计数据为待查询航段、航司、航班号、航班天确定后,其所对应的所有旅客数据行的状态统计数据。
[0149]
例如,若用户的待查询航段为表1中的航段,对应的旅客数据行为表1中的5行数据。则可得知“是否出票”的状态统计数据为出票量为3,未出票量为2。“是否退票”的状态统计数据为退票量为2,未退票量为3。“是否等待”的状态统计数据为未等待量为5。
[0150]
作为一种可选示例,如图3所示,该步骤可由查询数据模块实现。
[0151]
d4:输出待查询航段对应的各种状态统计数据。
[0152]
将待查询航段对应的各种状态统计数据输出给用户。作为一种可选示例,如图3所示,该步骤可由查询模块先将待查询航段对应的各种状态统计数据返回给用户调用场景模块,再由用户调用场景模块将待查询航段对应的各种状态统计数据返回给用户。
[0153]
在一些可能的实现方式中,可以将整合数据模块省去,将旅客订票数据在基础数据获取模块或者明细数据获取模块中进行存储,并将统计的功能移动到数据查询模块。在查询的数据量较少时,能达到实时查询状态统计数据的目的。
[0154]
【装置实施例】
[0155]
基于上述方法实施例提供的一种航班数据统计方法,本技术实施例还提供了一种航班数据统计装置,下面将结合附图对航班数据统计装置进行说明。
[0156]
参见图4所示,该图为本技术实施例提供的一种航班数据统计装置的结构示意图。
该装置应用于目标系统。如图4所示,该航班数据统计装置包括:
[0157]
数据接入模块401,用于接收大型主机系统传输的多个航班的航班数据和旅客订票数据;所述航班数据包括航班计划数据以及航班库存数据;
[0158]
基础数据获取模块402,用于基于目标航班的航班计划数据对所述目标航班的航班库存数据进行修正,将修正后的所述目标航班的航班库存数据确定为所述目标航班的航班基础数据;所述目标航班分别为多个航班中的每一个;
[0159]
明细数据获取模块403,用于将所述目标航班的航班基础数据按照航段进行划分,获取所述目标航班的各个航段的航段明细数据;
[0160]
第一整合数据模块404,用于将所述目标航班的旅客订票数据按照航段进行划分,获取所述目标航班的各个航段的航段旅客数据,并调整所述目标航班的各个航段的航段明细数据和所述目标航班的各个航段的航段旅客数据在每个航段上进行对应;
[0161]
第二整合数据模块405,用于统计所述目标航班的每个航段的航段旅客数据中的各种状态数据。
[0162]
在一种可能的实现方式中,所述装置还包括:
[0163]
第一数据查询模块,用于响应于输入的用户数据和请求数据,对所述用户数据和所述请求数据进行校验;
[0164]
第二数据查询模块,用于在对所述用户数据和所述请求数据校验成功之后,结合所述请求数据和每个航班中各个航段的航段明细数据,获取待查询航段;
[0165]
第三数据查询模块,用于结合所述待查询航段和所述待查询航段的航段旅客数据中的各种状态数据,获取所述待查询航段对应的各种状态统计数据;
[0166]
第四数据查询模块,用于输出所述待查询航段对应的各种状态统计数据。
[0167]
在一种可能的实现方式中,所述基础数据获取模块402,包括:
[0168]
获取子模块,用于获取目标航班的航班计划数据中包括的第一航班天以及所述目标航班的航班库存数据中包括的第二航班天;
[0169]
添加子模块,用于当第一目标航班天属于所述第一航班天且不属于所述第二航班天时,将所述第一目标航班天对应的航班计划数据添加到所述航班库存数据中;所述第一目标航班天分别为预设日期范围内中的每一天;
[0170]
删除子模块,用于当第一目标航班天不属于所述第一航班天且属于所述第二航班天时,将所述第一目标航班天对应的航班库存数据从所述航班库存数据中删除;
[0171]
比对子模块,用于当第一目标航班天属于所述第一航班天且属于所述第二航班天时,比对所述目标航班的航班计划数据以及所述目标航班的航班库存数据是否一致,不一致则更新所述航班库存数据;
[0172]
处理子模块,用于当第一目标航班天不属于所述第一航班天且不属于所述第二航班天时,对所述航班库存数据不进行处理;
[0173]
确定子模块,用于将修正后的所述目标航班的航班库存数据确定为所述目标航班的航班基础数据。
[0174]
在一种可能的实现方式中,所述装置还包括:
[0175]
存储模块,用于将所述目标航班的航班基础数据、所述目标航班的各个航段的航段明细数据以及所述目标航班的各个航段的航段旅客数据独立存储于数据库中。
[0176]
在一种可能的实现方式中,所述航班计划数据和所述航班库存数据均包括航司、航班号和航班天,所述装置还包括:
[0177]
接收模块,用于实时接收所述大型主机系统传输的待插入航班的待插入航班数据;
[0178]
判断模块,用于当根据所述待插入航班数据中的所述航司和所述航班号确定所述数据库中存储有所述待插入航班的航班数据时,判断第二目标航班天是否属于所述数据库中所述待插入航班的航班数据中包括的第三航班天;所述第二目标航班天为所述待插入航班数据中的每一个航班天;
[0179]
第一比对模块,用于当所述第二目标航班天属于所述第三航班天时,比对所述待插入航班数据和所述数据库存储的所述待插入航班的航班数据是否一致,不一致则更新所述数据库存储的所述待插入航班的航班数据;
[0180]
第一添加模块,用于当所述第二目标航班天不属于所述第三航班天时,将所述待插入航班数据添加到所述数据库中所述待插入航班的航班数据中。
[0181]
在一种可能的实现方式中,所述装置还包括:
[0182]
获取模块,用于根据所述待插入航班的航班数据,获取所述待插入航班的各个航段的待插入航段明细数据;
[0183]
第二比对模块,用于当所述第二目标航班天属于第四航班天时,比对所述待插入航班的各个航段的待插入航段明细数据和所述数据库存储的所述待插入航班的各个航段的航段明细数据是否一致,不一致则更新所述数据库存储的所述待插入航班的各个航段的航段明细数据;所述第四航班天为所述数据库存储的所述待插入航班的各个航段的航段明细数据中包括的航班天;
[0184]
第二添加模块,用于当所述第二目标航班天不属于所述第四航班天时,将所述待插入航班的各个航段的待插入航段明细数据对应添加到所述数据库中所述待插入航班的各个航段的航段明细数据中。
[0185]
在一种可能的实现方式中,所述航段明细数据至少包括航司、航班号、航班天、起飞机场以及到达机场;所述航段旅客数据至少包括旅客订票记录、航司、航班号、航班天、起飞机场、到达机场以及航段创建步骤号。
[0186]
【设备实施例】
[0187]
本技术实施例还提供了一种应用程序漏洞检测设备,包括:处理器、存储器、系统总线;
[0188]
所述处理器以及所述存储器通过所述系统总线相连;
[0189]
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行前述实施例所述的应用程序漏洞检测方法。
[0190]
具体的,参考图5,其示出了适于用来实现本公开实施例的电子设备700的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图5示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0191]
如图5所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)
701,其可以根据存储在只读存储器(rom)702中的程序或者从存储装置707加载到随机访问存储器(ram)703中的程序而执行各种适当的动作和处理。在ram 703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、rom 702以及ram 703通过总线704彼此相连。输入/输出(i/o)接口705也连接至总线704。
[0192]
通常,以下装置可以连接至i/o接口705:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置704;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置707;包括例如磁带、硬盘等的存储装置704;以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0193]
【存储介质实施例】
[0194]
本技术实施例还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行前述实施例所述的应用程序漏洞检测方法。
[0195]
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取待检测应用程序的安卓应用程序包apk文件。对apk文件进行解包处理,获取apk文件的中间态代码文件、资源文件以及配置文件。解析配置文件,得到待检测应用程序包含的目标元素的属性值。对apk文件进行反编译,得到apk文件的源代码,提取源代码包含的关键词。将目标特征信息与漏洞特征信息进行匹配,目标特征信息为中间态代码文件、资源文件、待检测应用程序包含的目标元素的属性值以及源代码包含的关键词中的任意一项或多项。如果检测到与漏洞特征信息匹配的目标特征信息,将与漏洞特征信息匹配的目标特征信息确定为待检测应用程序存在的漏洞项。
[0196]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0197]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0198]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置706被安装,或者从rom 702被安装。在该计算机程序被处理装置701执行时,执行本公开实施例的方法中限定的上述功能。
[0199]
根据本公开的一个或多个实施例,【方法实施例】提供了一种航班数据统计方法,所述方法应用于目标系统,所述方法包括:
[0200]
接收大型主机系统传输的多个航班的航班数据和旅客订票数据;所述航班数据包括航班计划数据以及航班库存数据;
[0201]
基于目标航班的航班计划数据对所述目标航班的航班库存数据进行修正,将修正后的所述目标航班的航班库存数据确定为所述目标航班的航班基础数据;所述目标航班分别为多个航班中的每一个;
[0202]
将所述目标航班的航班基础数据按照航段进行划分,获取所述目标航班的各个航段的航段明细数据;
[0203]
将所述目标航班的旅客订票数据按照航段进行划分,获取所述目标航班的各个航段的航段旅客数据,并调整所述目标航班的各个航段的航段明细数据和所述目标航班的各个航段的航段旅客数据在每个航段上进行对应;
[0204]
统计所述目标航班的每个航段的航段旅客数据中的各种状态数据。
[0205]
可选地,所述方法还包括:
[0206]
响应于输入的用户数据和请求数据,对所述用户数据和所述请求数据进行校验;
[0207]
在对所述用户数据和所述请求数据校验成功之后,结合所述请求数据和每个航班中各个航段的航段明细数据,获取待查询航段;
[0208]
结合所述待查询航段和所述待查询航段的航段旅客数据中的各种状态数据,获取所述待查询航段对应的各种状态统计数据;
[0209]
输出所述待查询航段对应的各种状态统计数据。
[0210]
可选地,所述基于目标航班的航班计划数据对所述目标航班的航班库存数据进行修正,将修正后的所述目标航班的航班库存数据确定为所述目标航班的航班基础数据,包括:
[0211]
获取目标航班的航班计划数据中包括的第一航班天以及所述目标航班的航班库存数据中包括的第二航班天;
[0212]
当第一目标航班天属于所述第一航班天且不属于所述第二航班天时,将所述第一目标航班天对应的航班计划数据添加到所述航班库存数据中;所述第一目标航班天分别为预设日期范围内中的每一天;
[0213]
当第一目标航班天不属于所述第一航班天且属于所述第二航班天时,将所述第一目标航班天对应的航班库存数据从所述航班库存数据中删除;
[0214]
当第一目标航班天属于所述第一航班天且属于所述第二航班天时,比对所述目标航班的航班计划数据以及所述目标航班的航班库存数据是否一致,不一致则更新所述航班库存数据;
[0215]
当第一目标航班天不属于所述第一航班天且不属于所述第二航班天时,对所述航班库存数据不进行处理;
[0216]
将修正后的所述目标航班的航班库存数据确定为所述目标航班的航班基础数据。
[0217]
可选地,所述方法还包括:
[0218]
将所述目标航班的航班基础数据、所述目标航班的各个航段的航段明细数据以及所述目标航班的各个航段的航段旅客数据独立存储于数据库中。
[0219]
可选地,所述航班计划数据和所述航班库存数据均包括航司、航班号和航班天,所述方法还包括:
[0220]
实时接收所述大型主机系统传输的待插入航班的待插入航班数据;
[0221]
当根据所述待插入航班数据中的所述航司和所述航班号确定所述数据库中存储有所述待插入航班的航班数据时,判断第二目标航班天是否属于所述数据库中所述待插入航班的航班数据中包括的第三航班天;所述第二目标航班天为所述待插入航班数据中的每一个航班天;
[0222]
当所述第二目标航班天属于所述第三航班天时,比对所述待插入航班数据和所述数据库存储的所述待插入航班的航班数据是否一致,不一致则更新所述数据库存储的所述待插入航班的航班数据;
[0223]
当所述第二目标航班天不属于所述第三航班天时,将所述待插入航班数据添加到所述数据库中所述待插入航班的航班数据中。
[0224]
可选地,所述方法还包括:
[0225]
根据所述待插入航班的航班数据,获取所述待插入航班的各个航段的待插入航段明细数据;
[0226]
当所述第二目标航班天属于第四航班天时,比对所述待插入航班的各个航段的待插入航段明细数据和所述数据库存储的所述待插入航班的各个航段的航段明细数据是否一致,不一致则更新所述数据库存储的所述待插入航班的各个航段的航段明细数据;所述第四航班天为所述数据库存储的所述待插入航班的各个航段的航段明细数据中包括的航班天;
[0227]
当所述第二目标航班天不属于所述第四航班天时,将所述待插入航班的各个航段的待插入航段明细数据对应添加到所述数据库中所述待插入航班的各个航段的航段明细数据中。
[0228]
可选地,所述航段明细数据至少包括航司、航班号、航班天、起飞机场以及到达机场;所述航段旅客数据至少包括旅客订票记录、航司、航班号、航班天、起飞机场、到达机场以及航段创建步骤号。
[0229]
根据本公开的一个或多个实施例,【装置实施例】提供了方法实施例的装置,所述装置应用于目标系统,包括:
[0230]
数据接入模块,用于接收大型主机系统传输的多个航班的航班数据和旅客订票数据;所述航班数据包括航班计划数据以及航班库存数据;
[0231]
基础数据获取模块,用于基于目标航班的航班计划数据对所述目标航班的航班库存数据进行修正,将修正后的所述目标航班的航班库存数据确定为所述目标航班的航班基础数据;所述目标航班分别为多个航班中的每一个;
[0232]
明细数据获取模块,用于将所述目标航班的航班基础数据按照航段进行划分,获取所述目标航班的各个航段的航段明细数据;
[0233]
第一整合数据模块,用于将所述目标航班的旅客订票数据按照航段进行划分,获取所述目标航班的各个航段的航段旅客数据,并调整所述目标航班的各个航段的航段明细数据和所述目标航班的各个航段的航段旅客数据在每个航段上进行对应;
[0234]
第二整合数据模块,用于统计所述目标航班的每个航段的航段旅客数据中的各种状态数据。
[0235]
可选地,所述装置还包括:
[0236]
第一数据查询模块,用于响应于输入的用户数据和请求数据,对所述用户数据和所述请求数据进行校验;
[0237]
第二数据查询模块,用于在对所述用户数据和所述请求数据校验成功之后,结合所述请求数据和每个航班中各个航段的航段明细数据,获取待查询航段;
[0238]
第三数据查询模块,用于结合所述待查询航段和所述待查询航段的航段旅客数据中的各种状态数据,获取所述待查询航段对应的各种状态统计数据;
[0239]
第四数据查询模块,用于输出所述待查询航段对应的各种状态统计数据。
[0240]
可选地,所述基础数据获取模块402,包括:
[0241]
获取子模块,用于获取目标航班的航班计划数据中包括的第一航班天以及所述目标航班的航班库存数据中包括的第二航班天;
[0242]
添加子模块,用于当第一目标航班天属于所述第一航班天且不属于所述第二航班天时,将所述第一目标航班天对应的航班计划数据添加到所述航班库存数据中;所述第一目标航班天分别为预设日期范围内中的每一天;
[0243]
删除子模块,用于当第一目标航班天不属于所述第一航班天且属于所述第二航班天时,将所述第一目标航班天对应的航班库存数据从所述航班库存数据中删除;
[0244]
比对子模块,用于当第一目标航班天属于所述第一航班天且属于所述第二航班天时,比对所述目标航班的航班计划数据以及所述目标航班的航班库存数据是否一致,不一致则更新所述航班库存数据;
[0245]
处理子模块,用于当第一目标航班天不属于所述第一航班天且不属于所述第二航班天时,对所述航班库存数据不进行处理;
[0246]
确定子模块,用于将修正后的所述目标航班的航班库存数据确定为所述目标航班的航班基础数据。
[0247]
可选地,所述装置还包括:
[0248]
存储模块,用于将所述目标航班的航班基础数据、所述目标航班的各个航段的航段明细数据以及所述目标航班的各个航段的航段旅客数据独立存储于数据库中。
[0249]
可选地,所述航班计划数据和所述航班库存数据均包括航司、航班号和航班天,所述装置还包括:
[0250]
接收模块,用于实时接收所述大型主机系统传输的待插入航班的待插入航班数据;
[0251]
判断模块,用于当根据所述待插入航班数据中的所述航司和所述航班号确定所述数据库中存储有所述待插入航班的航班数据时,判断第二目标航班天是否属于所述数据库
中所述待插入航班的航班数据中包括的第三航班天;所述第二目标航班天为所述待插入航班数据中的每一个航班天;
[0252]
第一比对模块,用于当所述第二目标航班天属于所述第三航班天时,比对所述待插入航班数据和所述数据库存储的所述待插入航班的航班数据是否一致,不一致则更新所述数据库存储的所述待插入航班的航班数据;
[0253]
第一添加模块,用于当所述第二目标航班天不属于所述第三航班天时,将所述待插入航班数据添加到所述数据库中所述待插入航班的航班数据中。
[0254]
可选地,所述装置还包括:
[0255]
获取模块,用于根据所述待插入航班的航班数据,获取所述待插入航班的各个航段的待插入航段明细数据;
[0256]
第二比对模块,用于当所述第二目标航班天属于第四航班天时,比对所述待插入航班的各个航段的待插入航段明细数据和所述数据库存储的所述待插入航班的各个航段的航段明细数据是否一致,不一致则更新所述数据库存储的所述待插入航班的各个航段的航段明细数据;所述第四航班天为所述数据库存储的所述待插入航班的各个航段的航段明细数据中包括的航班天;
[0257]
第二添加模块,用于当所述第二目标航班天不属于所述第四航班天时,将所述待插入航班的各个航段的待插入航段明细数据对应添加到所述数据库中所述待插入航班的各个航段的航段明细数据中。
[0258]
可选地,所述航段明细数据至少包括航司、航班号、航班天、起飞机场以及到达机场;所述航段旅客数据至少包括旅客订票记录、航司、航班号、航班天、起飞机场、到达机场以及航段创建步骤号。
[0259]
根据本公开的一个或多个实施例,【设备实施例】提供了方法实施例的设备,一个或多个处理器;
[0260]
存储装置,其上存储有一个或多个程序,
[0261]
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述任一所述的航班数据统计方法。
[0262]
根据本公开的一个或多个实施例,【存储介质实施例】提供了方法实施例的计算机可读存储介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如上述任一所述的航班数据统计方法。
[0263]
需要注意,描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该单元本身的限定。
[0264]
需要注意,本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0265]
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
[0266]
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域
技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0267]
需要说明的是,尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
[0268]
虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0269]
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1