CN112269808B - 引擎查询控制方法、系统、设备及存储介质 - Google Patents
引擎查询控制方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN112269808B CN112269808B CN202011289165.7A CN202011289165A CN112269808B CN 112269808 B CN112269808 B CN 112269808B CN 202011289165 A CN202011289165 A CN 202011289165A CN 112269808 B CN112269808 B CN 112269808B
- Authority
- CN
- China
- Prior art keywords
- query
- engine
- data flow
- flow calculation
- log
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000004364 calculation method Methods 0.000 claims abstract description 93
- 238000004458 analytical method Methods 0.000 abstract description 5
- 230000002159 abnormal effect Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000013480 data collection Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种引擎查询控制方法、系统、设备及存储介质,该方法包括:通过消息队列实时采集查询引擎的查询日志;根据所述查询日志,采用数据流计算引擎判断是否满足预设的查询禁售条件;如果是,则拒绝将接收到的查询请求发送至所述查询引擎。本发明根据实时分析各个引擎的查询日志的分析结果,自动判断是否发送本次查询请求,从而实现根据需要的引擎查询自动控制。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种引擎查询控制方法、系统、设备及存储介质。
背景技术
GDS(Global Distribution System,全球分销系统)Shopping(购买)引擎请求外部API(Application Programming Interface,应用程序接口)是有成本的,计算成本的方式是L2B(Look to book,搜索量与实际预订的比例)低于某个预设阈值时不收费,超过某个阈值时则按单次访问收费,因此,无转化率的查询会带来查询成本的增加。Travelfusion和CSD引擎虽然没有查询成本,但是由于航司和供应商的服务不稳定,当外部服务出现异常时,会影响查询功能的正常使用。
发明内容
针对现有技术中的问题,本发明的目的在于提供一种引擎查询控制方法、系统、设备及存储介质,根据实时分析各个引擎的查询日志的分析结果,自动判断是否发送本次查询请求,从而实现根据需要的引擎查询自动控制。
本发明实施例提供一种引擎查询控制方法,包括如下步骤:
通过消息队列实时采集查询引擎的查询日志;
根据所述查询日志,采用数据流计算引擎判断是否满足预设的查询禁售条件;
如果是,则拒绝将接收到的查询请求发送至所述查询引擎。
可选地,所述消息队列为Kafka消息队列。
可选地,所述数据流计算引擎为Flink数据流计算引擎。
可选地,所述查询日志包括查询数据和预订数据,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询数据和预订数据;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的有效查询率,所述有效查询率等于过去预设时间段内的预订量与查询量的比值;
所述数据流计算引擎判断所述有效查询率是否小于第一阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
可选地,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询日志;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的查询成功率,所述查询成功率为过去预设时间段内的查询成功量与查询总量的比值;
所述数据流计算引擎判断所述查询成功率是否小于第二阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
可选地,所述拒绝将接收到的查询请求发送至所述查询引擎,包括设定禁售时间,于所述禁售时间内拒绝将接收到的查询请求发送至所述查询引擎。
可选地,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎判断所述查询日志的类别;
所述数据流计算引擎判断是否满足所述查询日志的类别所对应的预设的查询禁售条件。
可选地,所述查询日志为机票查询日志,所述数据流计算引擎判断所述查询日志的类别,包括如下步骤:
所述数据流计算引擎根据所述查询日志确定所对应的起始地和目的地,将所述起始地和目的地作为所述查询日志的类别标识。
本发明实施例还提供一种引擎查询控制系统,用于实现所述的引擎查询控制方法,其特征在于,所述系统包括:
日志采集模块,用于通过消息队列实时采集查询引擎的查询日志;
禁售判断模块,用于根据所述查询日志,采用数据流计算引擎判断是否满足预设的查询禁售条件;
查询控制模块,用于如果满足预设的查询禁售条件,则拒绝将接收到的查询请求发送至所述查询引擎。
可选地,所述消息队列为Kafka消息队列。
可选地,所述数据流计算引擎为Flink数据流计算引擎。
可选地,所述查询日志包括查询数据和预订数据,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询数据和预订数据;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的有效查询率,所述有效查询率等于过去预设时间段内的预订量与查询量的比值;
所述数据流计算引擎判断所述有效查询率是否小于第一阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
可选地,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询日志;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的查询成功率,所述查询成功率为过去预设时间段内的查询成功量与查询总量的比值;
所述数据流计算引擎判断所述查询成功率是否小于第二阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
可选地,所述查询控制模块拒绝将接收到的查询请求发送至所述查询引擎,包括所述查询控制模块设定禁售时间,于所述禁售时间内拒绝将接收到的查询请求发送至所述查询引擎。
可选地,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎判断所述查询日志的类别;
所述数据流计算引擎判断是否满足所述查询日志的类别所对应的预设的查询禁售条件。
可选地,所述查询日志为机票查询日志,所述数据流计算引擎判断所述查询日志的类别,包括如下步骤:
所述数据流计算引擎根据所述查询日志确定所对应的起始地和目的地,将所述起始地和目的地作为所述查询日志的类别标识。
本发明实施例还提供一种引擎查询控制设备,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行所述的引擎查询控制方法的步骤。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被处理器执行时实现所述的引擎查询控制方法的步骤。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
本发明的引擎查询控制方法、系统、设备及存储介质具有如下有益效果:
本发明通过实时采集和分析各个查询引擎的查询日志,根据分析结果判断本次查询请求是否需要发送给查询引擎,从而实现根据需要的引擎查询自动控制。由此,对于查询需要成本的引擎例如GDS引擎,可以针对无转化率的查询禁售,对于查询无需成本的引擎例如Travelfusion和CSD引擎,当外部服务出现异常时,可以自动触发查询禁售,从而可以提供用户使用体验。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1是本发明一实施例的引擎查询控制方法的流程图;
图2是本发明一实施例的引擎查询控制的过程示意图;
图3是本发明一实施例的引擎查询控制系统的结构示意图;
图4是本发明一实施例的引擎查询控制设备的结构示意图;
图5是本发明一实施例的计算机可读存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
如图1所示,本发明实施例提供一种引擎查询控制方法,包括如下步骤:
S100:通过消息队列实时采集查询引擎的查询日志;通过消息队列可以实现各个查询引擎数据的统一采集和存储;
S200:根据所述查询日志,采用数据流计算引擎判断是否满足预设的查询禁售条件;具体地,针对不同的查询引擎可以设定不同的查询禁售条件;通过数据流计算引擎可以根据各个查询引擎的需求逐个进行分析;
S300:如果是,则拒绝将接收到的查询请求发送至所述查询引擎;
S400:如果否,则将接收到的查询请求发送至所述查询引擎。
因此,本发明通过步骤S100实时采集查询引擎的查询日志,并且通过步骤S200自动对查询日志进行分析,判断是否需要发送查询请求,如果是,则通过步骤S400正常发送查询请求,如果否,则通过步骤S300拒绝发送查询请求,实现查询禁售,从而实现根据需要的引擎查询自动控制。
如图2所示,在该实施例中,所述消息队列为Kafka消息队列。Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。由于Kafka具有高吞吐、低延时的特性,可以高效地处理实时数据。
如图2所示,在该实施例中,所述数据流计算引擎为Flink数据流计算引擎。ApacheFlink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。Flink是基于Event事件驱动的,理论上可以支持上万亿的Event处理,更适合实时处理的场景。
因此,本发明提供了一种统一的解决方案,包括通过Kafka实现数据自动采集,通过Flink实现数据分析以及针对分析结果控制引擎的应用。考虑到部分引擎部署在AWS(Amazon Web Services,亚马逊云计算服务)上,本发明可以应用于AWS上的引擎控制。
此处Kafka和Flink的采用仅为示例,本发明不限于此,在其他可替代的实施方式中,所述消息队列可以采用其他类型的数据采集工具,所述数据流计算引擎可以采用其他实时数据流计算引擎或近实时数据流计算引擎。
在该实施例中,所述查询日志包括查询数据和预订数据。查询数据即为实际向引擎发送的查询请求的相关数据,包括查询请求的类别、查询请求的时间、查询请求的返回结果等等。所述预订数据包括用户预订服务的相关数据,包括预订请求的发送时间、预订请求的类别、预订请求的结果等等。
所述步骤S200中,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询数据和预订数据;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的有效查询率,所述有效查询率等于过去预设时间段内的预订量与查询量的比值,预设时间段的时长可以根据需要选择和调整;
所述数据流计算引擎判断所述有效查询率是否小于第一阈值,第一阈值的数值可以根据需要设定,并且在查询请求有多种类别时,不同类别所对应的第一阈值可以互不相同;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
因此,所述数据流计算引擎通过计算有效查询率,可以根据有效查询率来有针对性地控制当前接收到的查询请求是否发送给查询引擎。该种方式可以应用于如GDS引擎等查询需要成本的场景中,在有效查询率大于等于第一阈值时,说明当前的搜索量和实际预订的比例L2B较低,则允许继续向查询引擎发送查询请求。在有效查询率小于第一阈值时,说明当前的搜索量和实际预订的比例L2B过高,则暂停向查询引擎发送查询请求,即拦截当前的查询请求,实现低转化率的查询禁售,降低查询成本。该种方式也可以应用于其他查询无成本的场景,例如Travelfusion和CSD引擎中,可以有效减少低转化率的查询请求数量。
在该实施例中,所述步骤S200中,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询日志;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的查询成功率,所述查询成功率为过去预设时间段内的查询成功量与查询总量的比值,预设时间段的时长可以根据需要选择和调整;
所述数据流计算引擎判断所述查询成功率是否小于第二阈值,第二阈值的数值可以根据需要设定,并且在查询请求有多种类别时,不同类别所对应的第二阈值可以互不相同;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
因此,所述数据流计算引擎可以通过计算查询成功率,可以有效地控制查询请求的发送。所述查询成功率可以反映引擎的外部服务的状态。在查询成功率大于等于第二阈值时,说明引擎的外部服务正常,可以正常继续发送查询请求。在查询成功率小于第二阈值时,说明引擎的外部服务很可能出现异常,则拦截当前接收到的查询请求,不将查询请求发送给查询引擎,从而实现服务异常时的自动触发禁售。该种方式可以应用于Travelfusion引擎和CSD引擎等无查询成本的引擎,也可以应用于如GDS引擎等其他类别的查询引擎,从而可以实现外部服务出现异常时自动触发禁售,提升了用户的使用体验。
上述两种方式也可以结合在一起应用,例如,在有效查询率小于第一阈值和/或查询成功率小于第二阈值的情况下,均认为当前符合预设的查询禁售条件,继续步骤S300。在有效查询率大于等于第一阈值且查询成功率大于等于第二阈值的情况下,则认为当前不符合预设的查询禁售条件,继续步骤S400。
在该实施例中,所述步骤S300中,拒绝将接收到的查询请求发送至所述查询引擎,包括设定禁售时间,于所述禁售时间内拒绝将接收到的查询请求发送至所述查询引擎。例如,可以设定每次禁售时间的时长,设为5min、3min等,等禁售时长过后,再恢复查询请求的正常发送。
在另一可替代的实施方式中,在采用有效查询率来实现查询禁售之后,也可以实时获取查询日志,在当前的查询日志不满足预设的查询禁售条件时,自动恢复查询请求的正常发送。
在该实施例中,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎判断所述查询日志的类别;
所述数据流计算引擎判断是否满足所述查询日志的类别所对应的预设的查询禁售条件。
在所述引擎查询控制方法应用于机票场景时,可以根据起始地和目的地进行分类。例如,当前接收到一个A地到B地的查询请求,则获取A地到B地的查询日志,判断是否满足其所对应的预设的查询禁售条件,例如判断A地到B地在预设时间段内的有效查询率是否小于第一阈值,如果是,则拒绝将该A地到B地的查询请求发送至查询引擎。而在接收到C地到D地的查询请求时,获取C地到D地的查询日志,判断是否满足其所对应的预设的查询禁售条件,例如判断C地到D地在预设时间段内的有效查询率是否小于第一阈值,如果否,则将该C地到D地的查询请求发送至查询引擎。
因此,进一步地,在所述引擎查询控制方法应用于机票场景时,所述查询日志为机票查询日志,所述数据流计算引擎判断所述查询日志的类别,包括如下步骤:
所述数据流计算引擎根据所述查询日志确定所对应的起始地和目的地,将所述起始地和目的地作为所述查询日志的类别标识。
所述数据流计算引擎判断是否满足所述查询日志的类别所对应的预设的查询禁售条件之后,如果是,则拒绝该起始地和目的地所对应的查询请求。
如图3所示,本发明实施例还提供一种引擎查询控制系统,用于实现所述的引擎查询控制方法,其特征在于,所述系统包括:
日志采集模块M100,用于通过消息队列实时采集查询引擎的查询日志;通过消息队列可以实现各个查询引擎数据的统一采集和存储;所述查询日志可以是从查询引擎直接获取的,也可以是在引擎查询控制系统中记录的每次查询的数据;
禁售判断模块M200,用于根据所述查询日志,采用数据流计算引擎判断是否满足预设的查询禁售条件;
查询控制模块M300,用于如果满足预设的查询禁售条件,则拒绝将接收到的查询请求发送至所述查询引擎,还用于如果不满足预设的查询禁售条件,则将接收到的查询请求发送至所述查询引擎。
因此,本发明通过日志采集模块M100实时采集查询引擎的查询日志,并且通过禁售判断模块M200自动对查询日志进行分析,判断是否需要发送查询请求,如果是,则通过查询控制模块M300正常发送查询请求,如果否,则通过查询控制模块M300拒绝发送查询请求,实现查询禁售,从而实现根据需要的引擎查询自动控制。
在该实施例中,所述消息队列为Kafka消息队列。所述数据流计算引擎为Flink数据流计算引擎。但本发明不限于此,在其他可替代的实施方式中,所述消息队列可以采用其他类型的数据采集工具,所述数据流计算引擎可以采用其他实时数据流计算引擎或近实时数据流计算引擎。
在该实施例中,所述查询日志可以包括查询数据和预订数据。所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询数据和预订数据;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的有效查询率,所述有效查询率等于过去预设时间段内的预订量与查询量的比值;
所述数据流计算引擎判断所述有效查询率是否小于第一阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
因此,所述数据流计算引擎通过计算有效查询率,可以根据有效查询率来有针对性地控制当前接收到的查询请求是否发送给查询引擎。该种方式可以应用于如GDS引擎等查询需要成本的场景中,在有效查询率大于等于第一阈值时,说明当前的搜索量和实际预订的比例L2B较低,则所述查询控制模块M300允许继续向查询引擎发送查询请求。在有效查询率小于第一阈值时,说明当前的搜索量和实际预订的比例L2B过高,则所述查询控制模块M300暂停向查询引擎发送查询请求,即拦截当前的查询请求,实现低转化率的查询禁售,降低查询成本。
在该实施例中,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询日志;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的查询成功率,所述查询成功率为过去预设时间段内的查询成功量与查询总量的比值;
所述数据流计算引擎判断所述查询成功率是否小于第二阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
因此,所述数据流计算引擎可以通过计算查询成功率,可以有效地控制查询请求的发送。所述查询成功率可以反映引擎的外部服务的状态。在查询成功率大于等于第二阈值时,说明引擎的外部服务正常,所述查询控制模块M300可以正常继续发送查询请求。在查询成功率小于第二阈值时,说明引擎的外部服务很可能出现异常,则所述查询控制模块M300拦截当前接收到的查询请求,不将查询请求发送给查询引擎,从而实现服务异常时的自动触发禁售。
在该实施例中,所述查询控制模块M300拒绝将接收到的查询请求发送至所述查询引擎,包括所述查询控制模块M300设定禁售时间,于所述禁售时间内拒绝将接收到的查询请求发送至所述查询引擎。
在该实施例中,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎判断所述查询日志的类别;
所述数据流计算引擎判断是否满足所述查询日志的类别所对应的预设的查询禁售条件。
进一步地,在所述引擎查询控制方法应用于机票场景时,所述查询日志为机票查询日志,所述数据流计算引擎判断所述查询日志的类别,包括如下步骤:
所述数据流计算引擎根据所述查询日志确定所对应的起始地和目的地,将所述起始地和目的地作为所述查询日志的类别标识。
所述数据流计算引擎判断是否满足所述查询日志的类别所对应的预设的查询禁售条件之后,如果是,则所述查询控制模块M300拒绝该起始地和目的地所对应的查询请求。
本发明实施例还提供一种引擎查询控制设备,包括处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的引擎查询控制方法的步骤。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。
下面参照图4来描述根据本发明的这种实施方式的电子设备600。图4显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述引擎查询控制方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被处理器执行时实现所述的引擎查询控制方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上执行时,所述程序代码用于使所述终端设备执行本说明书上述引擎查询控制方法部分中描述的根据本发明各种示例性实施方式的步骤。
参考图5所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上执行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
综上所述,通过采用本发明的引擎查询控制方法、系统、设备及存储介质,通过实时采集和分析各个查询引擎的查询日志,根据分析结果判断本次查询请求是否需要发送给查询引擎,从而实现根据需要的引擎查询自动控制。由此,对于查询需要成本的引擎例如GDS引擎,可以针对无转化率的查询禁售,对于查询无需成本的引擎例如Travelfusion和CSD引擎,当外部服务出现异常时,可以自动触发查询禁售,从而可以提供用户使用体验。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (9)
1.一种引擎查询控制方法,其特征在于,包括如下步骤:
通过消息队列实时采集查询引擎的查询日志;
根据所述查询日志,采用数据流计算引擎判断是否满足预设的查询禁售条件;
如果是,则拒绝将接收到的查询请求发送至所述查询引擎;
其中,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询日志中的查询数据和预订数据;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的有效查询率,所述有效查询率等于过去预设时间段内的预订量与查询量的比值;
所述数据流计算引擎判断所述有效查询率是否小于第一阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件;
或,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎从所述消息队列中获取所述查询引擎的查询日志;
所述数据流计算引擎计算所述查询引擎在过去预设时间段内的查询成功率,所述查询成功率为过去预设时间段内的查询成功量与查询总量的比值;
所述数据流计算引擎判断所述查询成功率是否小于第二阈值;
如果是,则所述数据流计算引擎判断满足预设的查询禁售条件。
2.根据权利要求1所述的引擎查询控制方法,其特征在于,所述消息队列为Kafka消息队列。
3.根据权利要求1所述的引擎查询控制方法,其特征在于,所述数据流计算引擎为Flink数据流计算引擎。
4.根据权利要求1所述的引擎查询控制方法,其特征在于,所述拒绝将接收到的查询请求发送至所述查询引擎,包括设定禁售时间,于所述禁售时间内拒绝将接收到的查询请求发送至所述查询引擎。
5.根据权利要求1所述的引擎查询控制方法,其特征在于,所述数据流计算引擎配置为采用如下步骤判断是否满足预设的查询禁售条件:
所述数据流计算引擎判断所述查询日志的类别;
所述数据流计算引擎判断是否满足所述查询日志的类别所对应的预设的查询禁售条件;
如果是,则拒绝将与所述查询日志的类别所对应的接收到的查询请求发送至所述查询引擎。
6.根据权利要求5所述的引擎查询控制方法,其特征在于,所述查询日志为机票查询日志,所述数据流计算引擎判断所述查询日志的类别,包括如下步骤:
所述数据流计算引擎根据所述查询日志确定所对应的起始地和目的地,将所述起始地和目的地作为所述查询日志的类别标识。
7.一种引擎查询控制系统,用于实现权利要求1至6中任一项所述的引擎查询控制方法,其特征在于,所述系统包括:
日志采集模块,用于通过消息队列实时采集查询引擎的查询日志;
禁售判断模块,用于根据所述查询日志,采用数据流计算引擎判断是否满足预设的查询禁售条件;
查询控制模块,用于如果满足预设的查询禁售条件,则拒绝将接收到的查询请求发送至所述查询引擎。
8.一种引擎查询控制设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至6中任一项所述的引擎查询控制方法的步骤。
9.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被处理器执行时实现权利要求1至6中任一项所述的引擎查询控制方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011289165.7A CN112269808B (zh) | 2020-11-17 | 2020-11-17 | 引擎查询控制方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011289165.7A CN112269808B (zh) | 2020-11-17 | 2020-11-17 | 引擎查询控制方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112269808A CN112269808A (zh) | 2021-01-26 |
CN112269808B true CN112269808B (zh) | 2024-03-19 |
Family
ID=74339184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011289165.7A Active CN112269808B (zh) | 2020-11-17 | 2020-11-17 | 引擎查询控制方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112269808B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110134674A (zh) * | 2019-05-22 | 2019-08-16 | 中国人民银行成都分行 | 一种货币信贷大数据监测分析系统 |
CN111209258A (zh) * | 2019-12-31 | 2020-05-29 | 航天信息股份有限公司 | 税务端系统日志实时分析方法、设备、介质及系统 |
CN111311326A (zh) * | 2020-02-18 | 2020-06-19 | 平安科技(深圳)有限公司 | 用户行为实时多维度分析方法、装置及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11226962B2 (en) * | 2018-10-05 | 2022-01-18 | Sap Se | Efficient event correlation in a streaming environment |
-
2020
- 2020-11-17 CN CN202011289165.7A patent/CN112269808B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110134674A (zh) * | 2019-05-22 | 2019-08-16 | 中国人民银行成都分行 | 一种货币信贷大数据监测分析系统 |
CN111209258A (zh) * | 2019-12-31 | 2020-05-29 | 航天信息股份有限公司 | 税务端系统日志实时分析方法、设备、介质及系统 |
CN111311326A (zh) * | 2020-02-18 | 2020-06-19 | 平安科技(深圳)有限公司 | 用户行为实时多维度分析方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112269808A (zh) | 2021-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111309550A (zh) | 应用程序的数据采集方法、系统、设备和存储介质 | |
CN109033814B (zh) | 智能合约触发方法、装置、设备及存储介质 | |
CN112100079B (zh) | 基于模拟数据调用的测试方法、系统和电子设备 | |
CN111600772B (zh) | 网络分发内容检测处理装置、方法、系统及电子设备 | |
WO2007134885A1 (en) | Method, apparatus and computer program for controlling retention of data messages | |
CN110880209A (zh) | 一种小区待办事项推送的方法及计算机存储介质 | |
CN110955640A (zh) | 跨系统数据文件的处理方法、装置、服务器和存储介质 | |
CN109242320B (zh) | 订单分配方法、装置、服务器及存储介质 | |
CN110287146A (zh) | 应用下载的方法、设备和计算机存储介质 | |
CN102893261B (zh) | 空闲转换采样方法及其系统 | |
CN109086429B (zh) | Ivr语音导航的方法、系统、设备及存储介质 | |
CN112269808B (zh) | 引擎查询控制方法、系统、设备及存储介质 | |
CN110750431A (zh) | 数据埋点配置方法及装置 | |
CN113905091A (zh) | 用于对访问请求进行处理的方法及装置 | |
CN113489756A (zh) | 一种物联网分布式事件驱动服务系统 | |
CN110650126A (zh) | 一种防网站流量攻击方法、装置以及智能终端、存储介质 | |
CN113986569A (zh) | 一种消息处理方法、装置和电子设备 | |
KR20230055575A (ko) | 사설망과 공용망을 위한 범용 대규모 멀티 클라우드 환경 모니터링 시스템 및 방법 | |
CN112101718A (zh) | 基于互联网的多人协作结构化数据处理方法及装置 | |
CN114240476A (zh) | 异常用户确定方法、装置、设备及存储介质 | |
CN111258775A (zh) | 消息处理方法、装置、设备和存储介质 | |
CN113821336A (zh) | 资源分配方法和装置、存储介质、电子设备 | |
CN113377551A (zh) | 无人车任务的分配方法、装置、电子设备及存储介质 | |
CN113411382B (zh) | 一种基于网络设备f5的实时数据采集系统及方法 | |
CN111367875B (zh) | 一种话单文件处理方法、系统、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |