CN104751386A - 酒店的分布式比价方法 - Google Patents
酒店的分布式比价方法 Download PDFInfo
- Publication number
- CN104751386A CN104751386A CN201510175455.1A CN201510175455A CN104751386A CN 104751386 A CN104751386 A CN 104751386A CN 201510175455 A CN201510175455 A CN 201510175455A CN 104751386 A CN104751386 A CN 104751386A
- Authority
- CN
- China
- Prior art keywords
- price
- hotel
- data
- supplier
- price data
- 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
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种酒店的分布式比价方法,包括:S1、爬取一时间段内供应商的所有酒店的价格数据,存储至数据库;S2、提取酒店查询服务器中该时间段内目标酒店的价格数据,将第一价格数据缓存至价格缓存服务器;S3、建立供应商的酒店与目标酒店的匹配关系;S4、提取第一价格数据和第二价格数据;S5、判断供应商的酒店与目标酒店是否存在匹配关系,若是,进入步骤S6,若否,结束流程;S6、比较第一价格数据与第二价格数据,得出目标酒店中价格最低的价格数据。本发明通过建立匹配关系,避免了大量的无效比价,提高了比价效率;通过建立价格缓存服务器,避免了高频度地调用服务器,有效减少了与在线用户争抢访问资源的问题。
Description
技术领域
本发明涉及酒店的比价领域,特别涉及一种酒店的分布式比价方法。
背景技术
随着互联网的普及和发展,越来越多的人们选择在网上预订酒店,不仅方便快捷,而且能够根据价格来选择酒店。目前,酒店的在线供应商主要有同程网、去哪儿网、艺龙旅行网和携程网等。
在线供应商会根据市场的需求不断地调整酒店的价格,供应商传统的酒店比价方式为:通过网络爬虫爬取竞争对手网页的酒店数据,并调用自身酒店服务器的酒店数据,经过比较得到某个酒店的最低价。这种传统的比价方式中,爬取的数据量相当大,很易发生堵塞,而且爬取的数据没有经过任何区分,造成大量的无效比价,从而导致比价效率低下。另外,供应商每次比价都需要调用自身的酒店服务器,大量高频度的调用存在与在线用户争抢访问资源的问题,从而潜在影响了生产运营。
发明内容
本发明要解决的技术问题是为了克服现有技术比价过程中容易发生数据堵塞、比价效率低等缺陷,提供一种比价效率高的酒店的分布式比价方法。
本发明是通过下述技术方案来解决上述技术问题的:
一种酒店的分布式比价方法,其特点在于,该分布式比价方法包括以下步骤:
S1、爬取一时间段内供应商的所有酒店的价格数据,并将该些价格数据存储至一数据库;
S2、提取酒店查询服务器中该时间段内目标酒店的所有价格数据,并将第一价格数据缓存至一价格缓存服务器,该第一价格数据为该目标酒店中价格最低的价格数据;
S3、建立供应商的酒店与该目标酒店的匹配关系,该匹配关系包括酒店名称;
S4、提取第一价格数据和第二价格数据,该第二价格数据为该数据库中供应商的每个酒店中价格最低的价格数据;
S5、判断该第二价格数据对应的酒店与该目标酒店是否存在匹配关系,若是,则进入步骤S6,若否,则结束流程;
S6、比较该第一价格数据与该第二价格数据,并得出该匹配关系包括的该目标酒店中价格最低的价格数据。
本方案中,一时间段通常为一天,酒店查询服务器中存储有目标酒店的所有价格数据。同一个酒店在供应商网页和酒店查询服务器中的名称一般不相同,建立匹配关系是指将代表同一个酒店的供应商网页显示的酒店名称与酒店查询服务器中显示的酒店名称(即目标酒店的名称)匹配。判断第二价格数据对应的酒店与目标酒店是否存在匹配关系,实际上是指判断目标酒店是否为供应商网页中的某个酒店,若是,则比较酒店查询服务器中目标酒店的最低价与供应商网页中该酒店的最低价,并得出该酒店的最低价;若否,则结束比价。本发明通过建立酒店名称的匹配关系,确保了参与比价的数据均为有效数据,避免了大量的无效比价,提高了比价效率。其中,步骤S1中的供应商可以为一个,也可以为多个,即可以爬取一个竞争对手网页上酒店的数据,也可以爬取多个竞争对手网页上酒店的数据。
较佳地,供应商的每个酒店和该目标酒店均包括多个房型,步骤S3中该匹配关系还包括房型,该第一价格数据为该目标酒店的每个房型中价格最低的价格数据,该第二价格数据为该数据库中供应商的每个酒店的每个房型中价格最低的价格数据。
本方案中,设供应商页面有X个酒店,每个酒店均包括Y个房型,目标酒店包括Z个房型。当匹配关系中仅包括酒店名称时,第一价格数据为一个数据,即目标酒店中价格最低的价格数据,第二价格数据包括Y个数据,即供应商的每个酒店中价格最低的价格数据;当匹配关系包括酒店名称和房型时,第一价格数据包括Z个数据,包括目标酒店的每个房型中价格最低的价格数据,第二价格数据包括X*Y个数据,即供应商的每个酒店的每个房型中价格最低的价格数据。其中,供应商页面的每个酒店的房型数量可以相同,也可以不相同。
较佳地,步骤S2中还包括:监控该酒店查询服务器中该时间段内目标酒店的所有价格数据,并在监控到该第一价格数据发生变化时,更新该价格缓存服务器。
本方案中,当匹配关系中仅包括酒店名称时,若监控到第一价格数据发生变化,则更新目标酒店在某天内的最低价;当匹配关系包括酒店名称和房型时,若监控到第一价格数据发生变化,则更新目标酒店在某天内的某些房型的最低价。本发明通过建立价格缓存服务器,并在比价的过程中从价格缓存服务器中提取数据,避免了高频度地调用酒店查询服务器,从而有效减少了与在线用户争抢访问资源的问题。
另外,当供应商页面中酒店的数据未发生变化时,在比价的过程中不需要重新爬取酒店的价格数据,直接从数据库中提取数据即可。当供应商页面中酒店的数据发生变化时,则需要重新爬取酒店的价格数据。
较佳地,步骤S2中通过聚合处理得到该第一价格数据,步骤S4中通过聚合处理得到该第二价格数据。
较佳地,该数据库为Redis数据库。Redis是一个高性能的key-value数据库,支持网络,并提供多种语言的API(Application Programming Interface,应用程序编程接口)。另外,Redis还是一种可基于内存也可持久化的日志型数据库。
较佳地,该数据库包括多个库。本方案中,从供应商网页爬取的数据量庞大,一个库容纳不下所有酒店的价格数据,因此,该数据库中包括多个库。另外将庞大的数据存储到多个库中,还可以加快提取数据的速度。
在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
本发明的积极进步效果在于:与现有技术相比,本发明通过建立匹配关系,避免了大量的无效比价,从而提高了比价效率;通过建立价格缓存服务器,避免了高频度地调用服务器,从而有效减少了与在线用户争抢访问资源的问题。
附图说明
图1为本发明实施例1的酒店的分布式比价方法的流程图。
图2为本发明实施例2的酒店的分布式比价方法的流程图。
图3为本发明实施例3的酒店的分布式比价方法的流程图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
某酒店在某网站中的名称为M,在供应商A网页中的名称为A1,供应商A网页中共有100个酒店。其中,该网站中所有酒店的价格数据均存储在酒店查询服务器中。本实施例提供一种酒店的分布式比价方法,如图1所示,包括以下步骤:
步骤101、爬取2015年10月1日供应商A的100个酒店的价格数据,并将该些价格数据存储至25个库;
步骤102、提取酒店查询服务器中2015年10月1日酒店M的所有价格数据,并将酒店M中价格最低的价格数据缓存至价格缓存服务器;
步骤103、建立酒店A1与酒店M的名称匹配关系;
步骤104、提取酒店M的最低价和25个库中供应商A的每个酒店的最低价;
步骤105、判断供应商A的每个酒店与酒店M是否存在匹配关系,若是,则进入步骤106,若否,则结束流程;
步骤106、比较酒店M的最低价与供应商A的每个酒店的最低价,并得出酒店M和酒店A1中价格最低的价格数据。
本实施例通过将代表同一家酒店的该网站中显示的名称M与供应商A中显示的名称A1建立匹配关系,确保了参与比价的酒店为同一家酒店,避免了大量的无效比价,提高了比价效率。
实施例2
某酒店在某网站中的名称为M,在供应商A网页中的名称为A1,在供应商B网页中的名称为B1,供应商A网页中共有100个酒店,供应商B网页中共有50个酒店。其中,该网站中所有酒店的价格数据均存储在酒店查询服务器中。本实施例提供一种酒店的分布式比价方法,如图2所示,包括以下步骤:
步骤201、爬取2015年10月1日供应商A的100个酒店的价格数据和供应B的50个酒店的价格数据,并将该些价格数据存储至40个库;
步骤202、提取酒店查询服务器中2015年10月1日酒店M的所有价格数据,并将酒店M中价格最低的价格数据缓存至价格缓存服务器;
步骤203、建立酒店A1、酒店B1与酒店M的名称匹配关系;
步骤204、提取酒店M的最低价以及40个库中供应商A和供应商B的每个酒店的最低价;
步骤205、判断供应商A和供应商B的每个酒店与酒店M是否存在匹配关系,若是,则进入步骤206,若否,则结束流程;
步骤206、比较酒店M的最低价与供应商A和供应商B的每个酒店的最低价,并得出酒店M、酒店A1和酒店B1中价格最低的价格数据。
本实施例通过将代表同一家酒店的该网站中显示的名称M、供应商A中显示的名称A1以及供应商B中显示的名称B1建立匹配关系,确保了参与比价的酒店为同一家酒店,避免了大量的无效比价,提高了比价效率。
实施例3
某酒店在某网站中的名称为M,在供应商A网页中的名称为A1,该网站中酒店M的房型包括M01、M02和M03,供应商A网页中共有100个酒店,每个酒店均包括2个房型,酒店A1的房型包括A11和A12。其中,该网站中所有酒店的价格数据均存储在酒店查询服务器中。本实施例提供一种酒店的分布式比价方法,如图3所示,包括以下步骤:
步骤301、爬取2015年10月1日供应商A的100个酒店的价格数据,并将该些价格数据存储至25个库;
步骤302、提取酒店查询服务器中2015年10月1日酒店M的所有价格数据,并将酒店M的每个房型中价格最低的价格数据缓存至价格缓存服务器;
步骤303、建立酒店A1房型A11与酒店M房型M01、酒店A1房型A12与酒店M房型M02的匹配关系;
步骤304、提取酒店M中房型M01、房型M02和房型M03的最低价,以及25个库中供应商A的每个酒店的每个房型的最低价;
步骤305、判断供应商A的每个酒店的每个房型与酒店M房型M01、酒店M房型M02是否存在匹配关系,若是,则进入步骤306,若否,则结束流程;
步骤306、比较酒店M中房型M01、房型M02和房型M03的最低价与供应商A的每个酒店每个房型的最低价,并得出酒店M房型M01和酒店A1房型A11中价格最低的价格数据,以及酒店M房型M02和酒店A1房型A12中价格最低的价格数据。
本实施例通过建立酒店名称和房型的匹配关系,比价得到了同一家酒店同一个房型的最低价。其中,本实施例该网站中酒店M房型M01的最低价为248元,酒店M房型M02的最低价为180元,供应商A中A1房型A11的最低价为258元,酒店A1房型A12的最低价为175元,因此,最后比价得到的结果为:酒店M房型M01和酒店A1房型A11中的最低价为该网站的248元,酒店M房型M02和酒店A1房型A12中的最低价为供应商A的175元。
实施例4
本实施例提供一种酒店的分布式比价方法,与实施例3的区别在于:该网站的酒店查询服务器中酒店M房型M02的最低价变为了170元,而供应商A网页中所有酒店的价格数据均未发生变化。与实施例3中酒店的分布式比价方法相比,本实施例还包括以下步骤:
监控酒店查询服务器中2015年10月1日酒店M的所有价格数据,并在监控到酒店M某个房型的最低价发生变化时,更新价格缓存服务器。
具体地,本实施例中将酒店M房型M02的最低价更新为170元。
由于供应商A网页中所有酒店的价格数据均未发生变化,因此,不需要重新爬取供应商A的酒店的数据,直接从之前存储的25个库中提取数据即可。本实施例最后比价得到的结果为:酒店M房型M01和酒店A1房型A11中的最低价为该网站的248元,酒店M房型M02和酒店A1房型A12中的最低价为该网站的170元。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (6)
1.一种酒店的分布式比价方法,其特征在于,该分布式比价方法包括以下步骤:
S1、爬取一时间段内供应商的所有酒店的价格数据,并将该些价格数据存储至一数据库;
S2、提取酒店查询服务器中该时间段内目标酒店的所有价格数据,并将第一价格数据缓存至一价格缓存服务器,该第一价格数据为该目标酒店中价格最低的价格数据;
S3、建立供应商的酒店与该目标酒店的匹配关系,该匹配关系包括酒店名称;
S4、提取第一价格数据和第二价格数据,该第二价格数据为该数据库中供应商的每个酒店中价格最低的价格数据;
S5、判断该第二价格数据对应的酒店与该目标酒店是否存在匹配关系,若是,则进入步骤S6,若否,则结束流程;
S6、比较该第一价格数据与该第二价格数据,并得出该匹配关系包括的该目标酒店中价格最低的价格数据。
2.如权利要求1所述的分布式比价方法,其特征在于,供应商的每个酒店和该目标酒店均包括多个房型,步骤S3中该匹配关系还包括房型,该第一价格数据为该目标酒店的每个房型中价格最低的价格数据,该第二价格数据为该数据库中供应商的每个酒店的每个房型中价格最低的价格数据。
3.如权利要求2所述的分布式比价方法,其特征在于,步骤S2中还包括:监控该酒店查询服务器中该时间段内目标酒店的所有价格数据,并在监控到该第一价格数据发生变化时,更新该价格缓存服务器。
4.如权利要求3所述的分布式比价方法,其特征在于,步骤S2中通过聚合处理得到该第一价格数据,步骤S4中通过聚合处理得到该第二价格数据。
5.如权利要求1~4中任意一项所述的分布式比价方法,其特征在于,该数据库为Redis数据库。
6.如权利要求1~4中任意一项所述的分布式比价方法,其特征在于,该数据库包括多个库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510175455.1A CN104751386A (zh) | 2015-04-14 | 2015-04-14 | 酒店的分布式比价方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510175455.1A CN104751386A (zh) | 2015-04-14 | 2015-04-14 | 酒店的分布式比价方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104751386A true CN104751386A (zh) | 2015-07-01 |
Family
ID=53591010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510175455.1A Pending CN104751386A (zh) | 2015-04-14 | 2015-04-14 | 酒店的分布式比价方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104751386A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106886565A (zh) * | 2017-01-11 | 2017-06-23 | 北京众荟信息技术股份有限公司 | 一种基础房型自动聚合方法 |
WO2018133699A1 (zh) * | 2017-01-20 | 2018-07-26 | 阿里巴巴集团控股有限公司 | 一种业务对象预订系统、方法及装置 |
CN111858691A (zh) * | 2020-07-30 | 2020-10-30 | 中国民航信息网络股份有限公司 | 一种民航票务信息的监控方法及装置 |
CN113377554A (zh) * | 2021-06-24 | 2021-09-10 | 携程旅游信息技术(上海)有限公司 | 机票价格的缓存方法、系统、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102779133A (zh) * | 2011-05-12 | 2012-11-14 | 苏州同程旅游网络科技有限公司 | 基于多平台、多供应商的搜索比价方法 |
CN102831252A (zh) * | 2012-09-21 | 2012-12-19 | 北京奇虎科技有限公司 | 一种用于更新索引数据库的方法及装置、搜索方法和系统 |
CN103218724A (zh) * | 2013-04-18 | 2013-07-24 | 北京京东尚科信息技术有限公司 | 一种在通信网络中提供信息更新的系统和方法 |
CN104346328A (zh) * | 2013-07-23 | 2015-02-11 | 同程网络科技股份有限公司 | 基于网页数据抓取的垂直智能爬虫数据收集方法 |
CN104462194A (zh) * | 2014-10-28 | 2015-03-25 | 北京国双科技有限公司 | 一种业务数据的处理方法、装置及服务器 |
-
2015
- 2015-04-14 CN CN201510175455.1A patent/CN104751386A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102779133A (zh) * | 2011-05-12 | 2012-11-14 | 苏州同程旅游网络科技有限公司 | 基于多平台、多供应商的搜索比价方法 |
CN102831252A (zh) * | 2012-09-21 | 2012-12-19 | 北京奇虎科技有限公司 | 一种用于更新索引数据库的方法及装置、搜索方法和系统 |
CN103218724A (zh) * | 2013-04-18 | 2013-07-24 | 北京京东尚科信息技术有限公司 | 一种在通信网络中提供信息更新的系统和方法 |
CN104346328A (zh) * | 2013-07-23 | 2015-02-11 | 同程网络科技股份有限公司 | 基于网页数据抓取的垂直智能爬虫数据收集方法 |
CN104462194A (zh) * | 2014-10-28 | 2015-03-25 | 北京国双科技有限公司 | 一种业务数据的处理方法、装置及服务器 |
Non-Patent Citations (2)
Title |
---|
程海: "一云多屏的旅游搜索比价系统的研究与实现", 《中国优秀硕士学位论文全文数据库》 * |
郭彩红: "基于DHT的分布式价格搜索引擎研究", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106886565A (zh) * | 2017-01-11 | 2017-06-23 | 北京众荟信息技术股份有限公司 | 一种基础房型自动聚合方法 |
CN106886565B (zh) * | 2017-01-11 | 2020-02-11 | 北京众荟信息技术股份有限公司 | 一种基础房型自动聚合方法 |
WO2018133699A1 (zh) * | 2017-01-20 | 2018-07-26 | 阿里巴巴集团控股有限公司 | 一种业务对象预订系统、方法及装置 |
CN111858691A (zh) * | 2020-07-30 | 2020-10-30 | 中国民航信息网络股份有限公司 | 一种民航票务信息的监控方法及装置 |
CN111858691B (zh) * | 2020-07-30 | 2024-03-01 | 中国民航信息网络股份有限公司 | 一种民航票务信息的监控方法及装置 |
CN113377554A (zh) * | 2021-06-24 | 2021-09-10 | 携程旅游信息技术(上海)有限公司 | 机票价格的缓存方法、系统、设备及存储介质 |
CN113377554B (zh) * | 2021-06-24 | 2024-03-05 | 携程旅游信息技术(上海)有限公司 | 机票价格的缓存方法、系统、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104751386A (zh) | 酒店的分布式比价方法 | |
CN101505311B (zh) | 一种基于社会化网络的信息传播方法及系统 | |
US20100034466A1 (en) | Object Identification in Images | |
CN108197289A (zh) | 一种数据存储结构、数据存储查询方法、终端及介质 | |
CN107222566A (zh) | 信息推送方法、装置及服务器 | |
CN107040422A (zh) | 一种基于物化缓存的网络大数据可视化方法 | |
WO2023050712A1 (zh) | 一种深度学习业务的任务调度方法及相关装置 | |
CN105550338A (zh) | 一种基于HTML5应用缓存的移动Web缓存优化方法 | |
CN106888381B (zh) | 一种数据资源存储方法及装置 | |
CN104702625A (zh) | 一种cdn网络中访问请求调度方法及装置 | |
CN106815260A (zh) | 一种索引建立方法及设备 | |
CN103024078A (zh) | 云计算环境下的资源分配方法和装置 | |
CN112182238A (zh) | 一种基于图数据库的知识图谱构建系统和方法 | |
CN102946320A (zh) | 一种分布式用户行为日志预测网络监管方法及系统 | |
CN104699851A (zh) | 一种大数据环境下业务标签的扩展方法 | |
CN109635192A (zh) | 面向微服务的海量资讯热度排行更新方法及平台 | |
CN103116641A (zh) | 获取排序的统计数据的方法及排序装置 | |
CN106254579A (zh) | 一种动态ip代理池及其搭建及管理方法 | |
CN107239542A (zh) | 一种数据统计方法、装置、服务器及存储介质 | |
CN110119396A (zh) | 数据管理方法及相关产品 | |
CN110134698A (zh) | 数据管理方法及相关产品 | |
CN207764844U (zh) | 一种数据处理系统 | |
CN107277095B (zh) | 会话分割方法及装置 | |
CN104462548A (zh) | 一种数据库分布式系统及其实现方法 | |
CN104408135B (zh) | 网页热力图的加载方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into 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: 20150701 |