CN109783545A - 一种机票实时推荐方法 - Google Patents
一种机票实时推荐方法 Download PDFInfo
- Publication number
- CN109783545A CN109783545A CN201910065892.6A CN201910065892A CN109783545A CN 109783545 A CN109783545 A CN 109783545A CN 201910065892 A CN201910065892 A CN 201910065892A CN 109783545 A CN109783545 A CN 109783545A
- Authority
- CN
- China
- Prior art keywords
- matching result
- caching system
- client
- data
- real
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 239000011159 matrix material Substances 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 235000013399 edible fruits Nutrition 0.000 claims description 2
- 238000013139 quantization Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开一种机票实时推荐方法。所述方法包括以下步骤:步骤1,利用内存单元建立用于存放航行数据的缓存系统;步骤2,根据客户端输入的查询条件,在缓存系统中进行精确匹配查询,向客户端返回精确匹配结果;如果不能精确匹配,转步骤3;步骤3,根据查询条件进行模糊匹配查询,得到多个匹配结果,选取最优的匹配结果作为模糊匹配结果返回客户端。本发明利用内存资源具有快速存取的特性,构建缓存系统取代调用实时查询接口,降低了成本,解决了高延迟问题。
Description
技术领域
本发明属于机票查询推荐技术领域,具体涉及一种机票实时推荐方法。
背景技术
用户在搜索特定条件的机票数据时,推荐往往要根据返回的搜索结果再进行二次查询。例如先查询邻近城市或邻近日期的机票数据,然后再进行推荐。这样处理会带来推荐服务的高延迟问题。同时,推荐进行的二次查询如果调用实时查询接口,会带来较高的成本代价。
发明内容
为了解决现有技术中存在的上述问题,本发明提出一种机票实时推荐方法,利用内存资源具有快速存取的特性,构建缓系统取代调用实时查询接口,从而降低成本,解决高延迟问题。
为实现上述目的,本发明采用如下技术方案:
一种机票实时推荐方法,包括以下步骤:
步骤1,利用内存单元建立用于存放航行数据的缓存系统;
步骤2,根据客户端输入的查询条件,在缓存系统中进行精确匹配查询,向客户端返回精确匹配结果;如果不能精确匹配,转步骤3;
步骤3,根据查询条件进行模糊匹配查询,得到多个匹配结果,选取最优的匹配结果作为模糊匹配结果返回客户端。
与现有技术相比,本发明具有以下有益效果:
本发明通过利用内存单元建立用于存放航行数据的缓存系统,根据客户端输入的查询条件在缓存系统中进行精确匹配查询,将精确匹配结果返回客户端,如果不能进行精确匹配,根据查询条件进行模糊匹配,选取最优的匹配结果作为模糊匹配结果返回客户端,实现了机票的实时推荐。本发明利用内存资源具有快速存取的特性,构建缓系统取代调用实时查询接口,降低了成本,解决了高延迟问题。
附图说明
图1为本发明实施例一种机票实时推荐方法的流程图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
本发明实施例一种机票实时推荐方法的流程图如图1所示,所述方法包括:
S101、利用内存单元建立用于存放航行数据的缓存系统;
S102、根据客户端输入的查询条件,在缓存系统中进行精确匹配查询,向客户端返回精确匹配结果;如果不能精确匹配,转S103;
S103、根据查询条件进行模糊匹配查询,得到多个匹配结果,选取最优的匹配结果作为模糊匹配结果返回客户端。
在本实施例中,步骤S101用于建立缓存系统。缓存系统是利用服务器的内存资源具有快速存取的特性,将需要计算和调用的航行数据存放在内存中。利用缓存系统可以替代调用实时查询接口,从而降低查询成本,减少计算量以解决现有技术中存在的高延迟问题。
在本实施例中,步骤S102用于根据客户端输入的查询条件,在缓存系统中进行精确匹配查询,如果能够精确匹配,将精确匹配结果返回客户端;如果不能精确匹配,转下一步进行模糊匹配。
在本实施例中,步骤S103主要用于是在步骤S102不能进行精确匹配查询的情况下,进行模糊匹配查询。模糊匹配查询会得到很多匹配结果,选取最优的匹配结果作为模糊匹配结果,并将模糊匹配结果返回客户端。
进一步地,缓存系统的建立方法包括:
S1011、从客户端触发的搜索结果中解析出航线、日期、舱位组合条件的价格数据,将所述数据更新存储到为缓存系统分配的内存单元;
S1012、将爬虫批量爬取的航线价格数据更新存储到分配的内存单元;
S1013、将航班动态信息定时更新存储到分配的内存单元;
S1014、将用户触发的推荐结果缓存到分配的内存单元,并设置过期策略;
S1015、根据航线热度和出行日期的范围,设置缓存数据的过期策略。
本实施例给出了建立缓存系统的方法。通过多种渠道将航行数据更新存储到内存单元,并设置合理的过期策略,以解决数据不一致问题。推荐结果数据的过期时间一般设置的较短。航班动态信息是指出行当天有没有航班,航班是否取消之类的信息。根据航班动态信息对数据进行过滤可减小计算量。
作为一种可选实施例,所述S103计算模糊匹配结果的方法包括:
S1031、根据查询条件进行模糊匹配,得到m个匹配结果,每个匹配结果包含n个特征,记为Xi=(Xi1,Xi2,…,Xij,…,Xin),Xij为第i个结果的第j个特征,i=1,2,…,m,j=1,2,…,n;
S1032、计算特征Xij的特征值xij,构建匹配结果矩阵X=[xij]m×n;
S1033、对X=[xij]m×n进行归一化,得到X′=[x′ij]m×n;
S1034、选取加权系数向量w=[w1,w2,…,wn]T,计算匹配结果的得分向量A=X′w=[a1,a2,…,am]T,第i个匹配结果的得分ai=w1x′i1+w2x′i2+…+wnx′in,如果ak=max(a1,a2,…,am),1≤k≤m,则第k个匹配结果就是模糊匹配结果。
本实施例给出了一种计算模糊匹配结果的具体方法。首先通过计算特征值对多个模糊匹配结果进行量化从而构建匹配结果矩阵,对匹配结果矩阵进行归一化处理,计算每个匹配结果的得分,得分最高的匹配结果就是最终的模糊匹配结果。为便于理解,现举例说明。比如,{'date':'2019-01-10','direct':True,'price':923.0,‘updatetime’:1547027811115}是用日期、是否直飞、价格和更新日期表示的匹配结果。可以按自己喜欢的方式确定特征值,比如,可以用票价作为价格的特征值,用与当天的日期差作为日期的特征值,用逻辑值0和1作为是否直飞的特征值,是直飞特征值为1,不是直飞特征值为0。由于各个特征值的量化分值大小没有统一的标准,有些相差很大,为了使求得的匹配结果的得分更合理,需要进行归一化处理。可以通过简单地求匹配结果的特征值的和计算匹配结果的分值,但为了对不同特征值区别对待,选取一个合适的加权系数向量,不同的特征值赋予不同的加权系数,对匹配结果的特征值进行加权求和,得到各个匹配结果的得分。
作为一种可选实施例,x′ij的计算公式为:
本实施例给出了一种归一化的具体方法。采用上式对匹配结果矩阵的每个元素进行归一化处理,可以使每列的最小值元素变为0,每列的最大值元素变为1,归一化后的取值范围为[0,1]。
作为一种可选实施例,所述S103进行模糊匹配时,包含航线航班价格、余票的实时信息数据从缓存系统中获取,包含邻近城市信息、直飞航线数据、机场基础信息、城市基础信息的基础信息数据从Mysql和Mongodb数据库中获取。
本实施例给出了进行模糊匹配查询时不同数据的获取途径。根据缓存系统的建立方法可知,缓存系统中保存的更新较快的实时性信息,如余票和价格等。因此,进行模糊匹配查询时,诸如航线航班价格、余票等实时信息数据从缓存系统中获取,邻近城市信息、直飞航线数据、机场基础信息、城市基础信息等更新较慢的数据,则从Mysql和Mongodb数据库中获取。Mysql和Mongodb是现有的数据库,它们都是磁盘型数据库。其中,Mysql主要用于存储固定字段类型的数据,比如邻近城市数据、直飞航线数据等;Mongodb主要用于存储文档类型数据,比如机场信息、城市信息等。
上述仅对本发明中的几种具体实施例加以说明,但并不能作为本发明的保护范围,凡是依据本发明中的设计精神所做出的等效变化或修饰或等比例放大或缩小等,均应认为落入本发明的保护范围。
Claims (5)
1.一种机票实时推荐方法,其特征在于,包括以下步骤:
步骤1,利用内存单元建立用于存放航行数据的缓存系统;
步骤2,根据客户端输入的查询条件,在缓存系统中进行精确匹配查询,向客户端返回精确匹配结果;如果不能精确匹配,转步骤3;
步骤3,根据查询条件进行模糊匹配查询,得到多个匹配结果,选取最优的匹配结果作为模糊匹配结果返回客户端。
2.根据权利要求1所述的机票实时推荐方法,其特征在于,所述缓存系统的建立方法包括:
步骤1.1,从客户端触发的搜索结果中解析出航线、日期、舱位组合条件的价格数据,将所述数据更新存储到为缓存系统分配的内存单元;
步骤1.2,将爬虫批量爬取的航线价格数据更新存储到分配的内存单元;
步骤1.3,将航班动态信息定时更新存储到分配的内存单元;
步骤1.4,将用户触发的推荐结果缓存到分配的内存单元,并设置过期策略;
步骤1.5,根据航线热度和出行日期的范围,设置缓存数据的过期策略。
3.根据权利要求1所述的机票实时推荐方法,其特征在于,所述步骤3计算模糊匹配结果的方法包括:
步骤3.1,根据查询条件进行模糊匹配,得到m个匹配结果,每个匹配结果包含n个特征,记为Xi=(Xi1,Xi2,…,Xij,…,Xin),Xij为第i个结果的第j个特征,i=1,2,…,m,j=1,2,…,n;
步骤3.2,计算特征Xij的特征值xij,构建匹配结果矩阵X=[xij]m×n;
步骤3.3,对X=[xij]m×n进行归一化,得到X′=[x′ij]m×n;
步骤3.4,选取加权系数向量w=[w1,w2,…,wn]T,计算匹配结果的得分向量A=X′w=[a1,a2,…,am]T,第i个匹配结果的得分ai=w1x′i1+w2x′i2+…+wnx′in,如果ak=max(a1,a2,…,am),1≤k≤m,则第k个匹配结果就是模糊匹配结果。
4.根据权利要求3所述的机票实时推荐方法,其特征在于,x′ij的计算公式为:
5.根据权利要求1所述的机票实时推荐方法,其特征在于,所述步骤3进行模糊匹配时,包含航线航班价格、余票的实时信息数据从缓存系统中获取,包含邻近城市信息、直飞航线数据、机场基础信息、城市基础信息的基础信息数据从Mysql和Mongodb数据库中获取。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910065892.6A CN109783545A (zh) | 2019-01-24 | 2019-01-24 | 一种机票实时推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910065892.6A CN109783545A (zh) | 2019-01-24 | 2019-01-24 | 一种机票实时推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109783545A true CN109783545A (zh) | 2019-05-21 |
Family
ID=66501225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910065892.6A Pending CN109783545A (zh) | 2019-01-24 | 2019-01-24 | 一种机票实时推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109783545A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111339122A (zh) * | 2020-02-13 | 2020-06-26 | 南京意博软件科技有限公司 | 一种差旅平台的主动缓存方法、差旅查询方法和相关产品 |
CN111709680A (zh) * | 2020-05-29 | 2020-09-25 | 无锡医迈德科技有限公司 | 一种基于发票的获取出入库信息的方法及系统 |
CN111831710A (zh) * | 2020-07-17 | 2020-10-27 | 深圳市活力天汇科技股份有限公司 | 一种机票模糊搜索方法 |
CN111858689A (zh) * | 2020-07-22 | 2020-10-30 | 深圳市活力天汇科技股份有限公司 | 一种基于用户偏好推荐航班的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291901A (zh) * | 2017-06-23 | 2017-10-24 | 携程旅游网络技术(上海)有限公司 | 主被动组合获取机票数据的方法、系统、设备及存储介质 |
CN107885743A (zh) * | 2016-09-29 | 2018-04-06 | 南京途牛科技有限公司 | 一种基于缓存的航班余位查询方法 |
-
2019
- 2019-01-24 CN CN201910065892.6A patent/CN109783545A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107885743A (zh) * | 2016-09-29 | 2018-04-06 | 南京途牛科技有限公司 | 一种基于缓存的航班余位查询方法 |
CN107291901A (zh) * | 2017-06-23 | 2017-10-24 | 携程旅游网络技术(上海)有限公司 | 主被动组合获取机票数据的方法、系统、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
陈岗编著: "《图书情报自动化实用技术》", 标准出版社 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111339122A (zh) * | 2020-02-13 | 2020-06-26 | 南京意博软件科技有限公司 | 一种差旅平台的主动缓存方法、差旅查询方法和相关产品 |
CN111339122B (zh) * | 2020-02-13 | 2023-11-10 | 南京意博软件科技有限公司 | 一种差旅平台的主动缓存方法、差旅查询方法和相关产品 |
CN111709680A (zh) * | 2020-05-29 | 2020-09-25 | 无锡医迈德科技有限公司 | 一种基于发票的获取出入库信息的方法及系统 |
CN111709680B (zh) * | 2020-05-29 | 2023-07-07 | 无锡医迈德科技有限公司 | 一种基于发票的获取出入库信息的方法及系统 |
CN111831710A (zh) * | 2020-07-17 | 2020-10-27 | 深圳市活力天汇科技股份有限公司 | 一种机票模糊搜索方法 |
CN111831710B (zh) * | 2020-07-17 | 2023-09-22 | 深圳市活力天汇科技股份有限公司 | 一种机票模糊搜索方法 |
CN111858689A (zh) * | 2020-07-22 | 2020-10-30 | 深圳市活力天汇科技股份有限公司 | 一种基于用户偏好推荐航班的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109783545A (zh) | 一种机票实时推荐方法 | |
CN103548019B (zh) | 用于根据数据仓库提供统计信息的方法和系统 | |
EP2842085B1 (en) | Database system using batch-oriented computation | |
US7957988B2 (en) | Systems, methods, and computer program products for storing and retrieving product availability information from a storage cache | |
US20130073586A1 (en) | Database system using batch-oriented computation | |
CN103597503B (zh) | 用于具有提高的搜索效率的售前预订系统的方法和系统 | |
WO2016019857A1 (zh) | 服务派发系统及方法 | |
CN104794191B (zh) | 一种用于机票数据更新的方法和装置 | |
WO2006074246A2 (en) | System, method, and computer program product for improving accuracy of cache-based searches | |
CN106030626A (zh) | 用于提供诸如飞机票价可用性的票价可用性的方法和系统 | |
CN106033583A (zh) | 一种应用于电子商务的广告竞价排名方法和系统 | |
Shi | Tourism culture and demand forecasting based on BP neural network mining algorithms | |
CN109977309B (zh) | 基于多关键字和用户偏好的组合兴趣点查询方法 | |
EP3044706A1 (en) | A method of optimizing queries execution on a data store | |
WO2002056239A2 (en) | Process to graphically display travel information on a map in electronic form | |
AU2002235334A1 (en) | Process to graphically display travel information on a map in electronic form | |
CN114282106B (zh) | 一种职位信息快速投递方法 | |
CN102662986A (zh) | 微博消息检索系统与方法 | |
WO2010037314A1 (zh) | 一种搜索的方法、系统和装置 | |
CN111339122B (zh) | 一种差旅平台的主动缓存方法、差旅查询方法和相关产品 | |
CN113256472B (zh) | 智能交通管控方法、系统以及类脑计算可读存储介质 | |
AU2015252016A1 (en) | Dynamic database object management | |
CN109635272A (zh) | 一种空中交通管理领域的本体交互模型构建方法 | |
US20060111923A1 (en) | System and a method for selecting a property based on prioritized criteria of a purchaser | |
CN110083761B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190521 |