CN106537384B - 使用指示用户位置的数据的逆向ip数据库 - Google Patents

使用指示用户位置的数据的逆向ip数据库 Download PDF

Info

Publication number
CN106537384B
CN106537384B CN201580038522.3A CN201580038522A CN106537384B CN 106537384 B CN106537384 B CN 106537384B CN 201580038522 A CN201580038522 A CN 201580038522A CN 106537384 B CN106537384 B CN 106537384B
Authority
CN
China
Prior art keywords
database
reverse
address
updated
revip
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
Application number
CN201580038522.3A
Other languages
English (en)
Other versions
CN106537384A (zh
Inventor
O·达恩
V·帕里克
S·C·阿罗拉
R·克拉克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106537384A publication Critical patent/CN106537384A/zh
Application granted granted Critical
Publication of CN106537384B publication Critical patent/CN106537384B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

使用搜索引擎查询日志和其它位置信息源来改进RevIP数据库的质量并且找出共享多个位置的IP地址(指示大型互联网网关)的架构。利用已知是正确的IP地址到位置以及IP范围到位置的映射来生成真相数据集。此外,该架构能够确定哪些类型的查询和SERP页面分块(页面分段)是位置感知的。位置信息能够从用户查询以及按IP地址聚合的最频繁使用的位置中提取。主导位置能够被聚合、被映射到已有的RevIP数据库的IP地址范围以及被替换。能够相对于真相数据集来评估经更新的RevIP数据库。RevIP IP地址范围能够被划分和组合,从而改进该RevIP数据库的整体性能。

Description

使用指示用户位置的数据的逆向IP数据库
技术领域
本公开涉及计算机领域,并且具体涉及使用指示用户位置的数据的逆向IP数据库。
背景技术
搜索引擎经常使用用户的位置来定制结果页面上所显示的结果。例如,对于“天气”的查询,搜索引擎可以使用用户的地理位置来显示基于用户的位置环境的天气预报。
一种用于确定用户位置的方法是使用诸如GPS(全球定位系统)之类的定位系统。遗憾的是,大多数用户不可获得该信息,因为这需要用户使用带有GPS的设备并且还需要搜索引擎支持对个人位置信息的访问。另一种确定用户位置的方法是简单地要求用户自行报告用户位置。而这可能仅在短期内是准确的,就长期而言,用户可能重新定位到新的位置但却没有更新自行报告的位置。还有一种被用来克服上述缺陷的方法是查阅逆向IP数据库(Reverse IP database,RevIP)。该数据库包含IP地址的范围以及他们对应的位置。
遗憾的是,从商业RevIP数据库自行报告的性能数字中揭示了这些数据库的精确度和覆盖存在缺陷。尝试利用互联网主干链路的结构和对到达互联网不同部分的时间进行测量来解决这一问题。然而,这些尝试只获得非常有限的成功。找到用于改进这些数据库的方法是一个艰巨的挑战并且将给出一个能够为跨若干行业的公司提供积极财务影响的解决方案。
发明内容
以下给出简化的发明内容以便提供对本文所描述的一些创新实现方式的基本理解。本发明内容并非扩展性的综述,并且也非旨在于标识出关键/必要要素或者对这些要素的范围加以限制。本发明内容的目的仅在于以简化形式给出一些概念以作为后续给出的更详的描述的前序。
所公开的架构使用搜索引擎查询日志来改进RevIP数据库的质量并且找出共享多个位置的IP地址(指示大型互联网网关)。关于查询日志,利用已知是正确的IP地址到位置以及IP范围到位置的映射来生成真相(ground truth)数据集。一种可替换的解决方案能够采用其它的位置导出的数据,诸如地理社交网络“签到”数据。此外,该架构能够确定哪些类型的查询和SERP页面分块(页面分段)是位置感知的。
位置信息能够从用户查询以及按IP地址聚合的最频繁使用的位置中被提取。主导位置能够基于决策算法而被聚合、被映射至已有的RevIP IP地址范围以及被替换。经修改的RevIP数据库能够相对于真相数据集进行评估。RevIP IP地址范围能够被划分和组合,从而改进RevIP数据库的整体性能。此外,找到共享多个地址的IP地址指示了大型互联网网关。
为了实现以上和相关的目标,在本文中结合以下描述和附图对某些示例性方面进行描述。这些方面指示了能够实践本文所公开的原理的各种方式,并且所有方面及其等同形式均旨在于处于请求保护的主题的范围之内。从以下接合附图考虑的详细描述中,将更清楚其它优势和创新特征。
附图说明
图1图示了根据所公开架构的数据库更新系统。
图2图示了根据所公开架构的可替换的数据库更新系统。
图3图示了根据所公开架构的用于数据库更新的示图。
图4图示了根据经改进的逆向IP数据库来划分旧有IP地址范围的视觉表示形式。
图5图示了根据所公开架构的一种方法。
图6图示了根据所公开架构的另一种方法。
图7图示了根据所公开架构的又一种方法。
图8图示了根据所公开架构的执行数据库更新的计算系统的框图。
具体实施方式
搜索引擎经常使用用户的位置来定制结果页面上所显示的结果。例如,针对“天气”的查询,搜索引擎可以使用用户的地理位置来显示基于用户的位置环境的天气预报。一种用于确定用户位置的精确方式是使用诸如GPS(全球定位系统)之类的定位系统;然而,大多数用户不可获得该信息。另一种方法采用简单地提示用户自行报告位置信息,但是自行报告具有其自身的问题。
为了克服以上方法的缺陷,用户的位置能够通过查阅逆向IP(互联网协议)数据库(RevIP)来确定。RevIP数据库包含IP地址的范围以及对应的位置。在用户访问搜索引时,RevIP数据库被用来确定该用户最可能的地理位置。RevIP数据库的粒度多种多样,但是都能够达到街区或街道的级别。
准确的RevIP数据库随搜索引擎一起被采用并且在搜索引擎结果页面(searchengine result page,SERP)上的一些利用用户位置的页面分区类型中被加以利用:基于位置的web搜索结果排名(例如,当用户搜索“DMV”时,搜索引擎应当示出指向地理上接近于该用户的DMV(机动车部门)办公室的web搜索结果链接);本地结果(例如,用户搜索“泰国餐厅”);本地天气预报(例如,“天气预报”);在用户附近的影院中上映的电影(例如,“我附近上映的电影”);基于位置的个性化新闻(例如,“当地新闻”);以及基于位置的广告(例如,“管道工”)。
逆向IP数据库在其它行业中也被广泛使用,作为示例,这些行业诸如用于信用卡诈骗预防、内容传递网络、具有地区性办公室的组织以及电子商务。
金融机构使用进行在线金融交易的用户的位置作为信用卡诈骗检测算法的输入之一。获知在线用户的位置使得金融机构能够将源自于信用卡诈骗高发的某些国家的交易标记出来。
关于内容传递网络,为了使得能够更快地访问在线内容,这些类型的网络在遍布全球的数据中心中部署服务器。内容传递网络然后使用RevIP数据库来确定用户的位置,从而将用户指向地理上最为接近的能够提供所请求的在线内容的服务器。这能够在内容延时、吞吐量和带宽成本方面都实现节省。
具有地区性办公室的组织(例如,保险公司、快餐店、非政府组织等)能够使用RevIP数据库对网站进行定制并且将用户指向在地理上最接近于该用户的办公室。此外,电子商务网站能够根据用户的位置来定制价格从而包括正确的运输费用。
发行商业RevIP数据库的公司通过咨询诸如IANA(互联网数字分配机构)以及负责向组织分配IP范围的各种国家和本地互联网登记处之类的组织来编译这些数据库。此外,RevIP公司还联系个体ISP(互联网服务提供方),个体ISP可以进一步将IP地址空间划分到地区、城市和/或街区的级别。
遗憾的是,商业RevIP数据库自行报告的性能数字揭示了这些数据库的精确度和覆盖存在缺陷。因此,找到用于改进这些数据库的方法是一个重要问题,该这个重要问题的解决方案能够对于跨若干行业的公司具有显著的积极财政影响。
所公开的架构使用搜索引擎查询日志来改进RevIP数据库的质量并且找出共享多个位置的IP地址(指示大型互联网网关)。关于查询日志,利用已知是正确的IP地址到位置以及IP范围到位置的映射来生成真相数据集。一种可替换的解决方案能够采用其它的位置导出的数据,诸如地理社交网络“签到”数据。此外,该架构能够确定哪些类型的查询和SERP页面分块(页面分段)是位置感知的。
位置信息能够从用户查询以及按IP地址聚合的最频繁使用的位置中被提取。主导位置能够基于决策算法而被聚合、被映射至已有的RevIP IP地址范围以及被替换。经修改的RevIP数据库能够相对于真相数据集进行评估。RevIP IP地址范围能够被划分和组合从而改进该RevIP数据库的整体性能。此外,找出共享多个地址的IP地址指示了大型互联网网关。
如本文所使用的,明确的位置查询旨在于向搜索引擎表示包含位置的用户查询,诸如“贝尔维尤的餐厅”、“华盛顿的柯克兰的电影上映时间”等等。
搜索引擎存储查询日志,查询日志能够包括每个用户的IP地址以及所有相关联的用户查询。查询日志还能够包括使用搜索引擎的每个人的用户标识符(UserID)(例如,唯一的标识符)。这些日志还能够包括与每个用户标识符和用户设备组合(UserID+Device)对应的客户端标识符(ClientID)。ClientID例如可以是用户登录信息或设备登录信息。对于非登录用户,能够创建匿名ID来追踪该用户。处于国外的用户地理位置能够通过搜索术语、GPS等来检测,从而校正用户位置的临时变化(例如,在不同协作位置工作)。使用例如移动电话和平板电脑访问搜索引擎的用户接收到单个UserID以及两个ClientID。在多个用户在相同的IP地址背后进行操作的情况下,不同于使用ClientID,标识能够以用户为基础而不是以IP为基础,这使得能够对相同IP地址背后的用户加以区分。
对于一些页面视图,搜索引擎有权从配备有地理位置(地理的位置)技术(例如,GPS)的移动设备或者能够报告正确位置的其它设备对用户的真实IP地址位置进行访问。
本文所描述的方法使用位置提取算法,该位置提取算法例如能够提取出用户查询中所提及的位置。对于查询“天气西雅图”,该算法提取出华盛顿州的西雅图,并且返回更多有关该位置的信息,包括该位置的州、国家以及位置标识符(ID)(例如,唯一的标识符)。提及西雅图的查询会产生相同的ID。
逆向地理编码算法能够被利用,该逆向地理编码算法在给定经/纬度配对的情况下返回有关该配对所处的地理实体(如果存在)的信息。类似地,该算法还能够返回有关该位置的州、国家和位置ID的信息。
至少RevIP数据库的城市级别粒度以及用于固定宽带互联网连接和移动网络范围的RevIP数据库能够有所改进。
以下是至少使用搜索引擎查询日志对RevIP数据库加以改进的描述。
能够利用已知正确的IP到位置和/或IP范围到位置的映射而生成真相数据集。在不同若干天的查询日志中被观察到并且没有“在地图上过多移动”(例如,保持在诸如小直径圆圈的预定义地理区域内)的IP地址得以被存储。与这些要求相匹配的IP地址最可能属于固定宽带网络。
在一种实施方式中,处理被首先限制为仅针对其中基于用户地理位置(例如,GPS)坐标而获知用户的确切位置的页面视图。(这可能是所有用户和页面视图中的一小部分。)将地理坐标发送至搜索引擎的大多数设备是具有移动网络无线电的移动设备(例如,蜂窝电话、平板电脑等)。这暗示了这样的设备的IP地址能够向移动网络IP范围发生倾斜。然而,使用移动设备的用户也经常将这些设备连接至他们自己的家庭无线网络。当设备切换至用户的家庭宽带网络时,最后的已知位置在该用户发出查询时再次被发送给搜索引擎。这进而意味着,特定用户地理位置能够被指派给用户移动手机和固定/家庭互联网连接这二者。
以已知地理位置的页面视图作为开始,在查询日志中针对每个IP地址而检测到的所有位置都被聚合。针对每个IP地址,存在页面视图的地理位置列表。还能够确定每个IP地址在日志中在多少不同的时段(例如,多天)被观察到。按照IP地址,能够计算出所有地理位置信息的纬度和经度的最小值和最大值。这能够产生四个数值:最小纬度(MinLat)、最小经度(MinLon)、最大纬度(MaxLat)和最大经度(MaxLon)。能够在(MinLat,MinLon)点和(MaxLat,MaxLon)的点之间计算出(诸如地球的球体上的)大圆距离(great-circledistance)。
一种用于计算距离的可替换解决方案可以是采用勾股定理。由于大圆距离因为三角函数的使用而采用了大量计算,所以可以使用勾股定理来基于最大值和最小值的绝对值(例如,abs(MinLat-MaxLat)和abs(MinLon-MaxLon))找出该长度。对每个IP地址,能够使用坐标(MinLat-MaxLat,MinLon-MaxLon)获得对质心(centroid)的计算。在日志中至少不同的X天都观察到并且在球体上的距离小于Y英里(X和Y都是整数)的所有IP地址和相关联圆心都能够被保存(存储)。
以下是一种用于生成真相数据集的可替换解决方案。如本文所描述的,一种用于确定真相IP地址的方法可以涉及固定(线缆)宽带网络,由于要求IP地址保持在Y英里的直径之内,因而这排除了移动网络IP地址。为了在真相数据中还包括移动网络,真相数据集问题可以有所放宽。
为了获得城市级别的粒度,能够对要求进行修改以使得IP地址的所有地理位置都位于同一城市。这种修改使得能够将移动IP地址包括在同一地理区域之内(在同一城市中)。
又一种用于生成真相数据集的可替换解决方案考虑除了查询日志以外或者与查询日志相结合的数据源。查询日志仅是用户位置真相数据的一种来源。另一种来源是地理社交网络。这些类型的社交网络使得用户能够在到达某些目的地—诸如餐厅—时进行“签到”(check in),这向其它社交网络用户给出该用户当前所在位置的信号。当进一步考虑这些类型的社交网络时,能够使用“签到”日志(其包含每次“签到”的IP地址和GPS位置),和/或使用完全位置日志,因为这些网站和应用中的一些对用户位置进行持续追踪。
所公开的架构还计算查询的类型并且SERP页面分块是位置感知的(基于用户位置而指向用户)。大型搜索引擎每个月处理数十亿的查询。所公开的方法有效地对用户的查询进行解析,从而找出(查询中的)明确位置,这在大规模上将会是一项显著的计算负担。该方法能够以使得并未被解析的查询包含有位置的可能性最大化的方式对查询进行采样。
期望仅对过去产生的位置感知的页面分区中的查询进行处理,这些页面分区诸如是天气、企业名录和电影放映时间等。为了实现该目的,首先对全天的查询日志进行处理。每个查询通过位置提取算法进行处理以提取出位置信息。针对每个包含明确位置的查询,该页面上呈现的页面分块的类型也被提取。针对包含位置的查询,对每种类型的页面分块的出现进行计数。然后,生成与明确位置查询相关的顶部页面分区的列表(也被称之为位置相关的页面分区列表)。
关于从用户查询中提取位置(明确的)以及按IP地址对最频繁使用的位置进行聚合,首先对来自查询日志的所有页面视图进行采样,以便仅匹配其中SERP页面包含如下页面分区的页面视图,该页面分区处于该位置相关的页面分区列表上。然后通过位置提取算法对该样本中的每个查询进行处理并且保留其中查询包含明确位置的所有页面视图连同与所提取位置有关的细节。按照IP地址,对在针对该IP地址而发出的查询中被提及的位置的出现进行计数。针对每个IP地址,对查询中提及最多的Z(其中Z是≥1的整数)个位置进行存储,并且按照出现次数以降序进行排列。
关于对主导位置进行聚合,将主导位置映射至已有的RevIP数据库的IP地址范围,并且确定要替换哪个主导位置,RevIP数据库将IP范围映射到位置(例如,范围具有起始IP地址(StartIP)和末尾IP地址(EndIP))。
能够假设这些IP范围中的一些被映射到不正确的地址。因此,为了找出哪些范围具有不正确的地址以便校正,要从以上计算的位置出现开始。然后,按IP地址范围对位置出现计数进行聚合(即,按RevIP数据库的IP地址范围来聚合针对每个IP地址的所有位置出现)。这产生了从RevIP数据库中的每个IP地址范围发出的查询中被最频繁提及的位置。针对与以上至少一个IP地址相匹配的每个RevIP数据库IP地址范围,基于阈值(例如,如果该位置被提及的次数大于阈值M,其中M≥1),来利用用户查询中被提及最多的位置替换该RevIP数据库中的位置。随着M增大,精确度增大并且召回(recall)减少。该步骤中经修改的RevIP数据库与原始RevIP数据库相比产生更好的性能。
以下是使得能够改进RevIP数据库的可替换算法实施方式的示例。
针对在特定地址范围(IPRange)R中至少被提及一次的每个位置L,以IP地址StartIP开始且以IP地址EndIP结束([StartIP,EndIP]),
其中该特定IPRange R的LocalMentions是位置L被提及的频率;GlobalMentions是位置L跨所有IP地址范围(不仅是该IP范围)被提及的频率;x和y是用于增大或减小LocalMentions相对于GlobalMentions的重要性的因数(同时这些因数可以是变量,在一种实施方式中,x可以是1.2且y可以是0.5);并且IPInst是在IPRange R中至少一次提及位置L的不同IP地址的数量。
一种IP实例规范化算法(normalization algorithm)可以是如下:
其中IPInst是该IPRange中已经提及该位置的不同IP地址的数目;并且EndIP-StartIP+1是该IP范围[StartIP,EndIP]中的IP地址的数目。
可以在下表中给出针对位置L=Susner的示例结果:
能够针对真相数据集来评估经修改的(并且可能有所改进的)RevIP数据库。针对真相数据集中的每个IP地址,在给定RevIP数据库中找出(匹配)相对应的IP地址范围(如果存在的话)。针对每个匹配,RevIP数据库中的位置与来自真相数据库的位置进行比较。由于商业RevIP数据库中的位置并非必然具有与真相数据集中的位置完全相同的名称,所以在执行这个比较之前,使用逆向地理编码算法将来自RevIP数据库和真相数据集的经纬度转换为位置。
许多可能的量度中的两种可以包括确切城市ID匹配和基于距离的匹配。关于确切城市ID匹配,按照次数划分,RevIP数据库的位置在匹配次数上与真相位置相同。关于基于位置的匹配,计算从RevIP数据库速确定的位置的坐标到来自地面实况的位置的坐标之间的距离,例如根据以下公式将针对每个匹配的距离都指派给一个给定的桶(bucket):
floor(distance/bucketSize)*bucketSize
其中floor对应于数学floor函数(将实数映射到小于或等于数值x的最大整数的函数),distance是RevIP位置与真相位置之间的距离(例如,以选定的位置单位表示,诸如千米或英里),并且bucketSize是以选定的距离单位(例如,千米或英里)表示的桶的宽度。如以上公式给出的,随着更多距离匹配具有低数值的桶大小,RevIP数据库得以改进。使用该方法,原始的RevIP数据库然后能够与经修改的RevIP数据库进行比较,从而确定哪个数据库具有更高质量。
RevIP数据库的IP地址范围能够被划分和/或组合,从而改进RevIP数据库的整体性能。关于以上对主导位置的聚合,能够假设RevIP数据库中的IP地址范围是正确的。然而,可能出现IP地址范围实际上包含具有不同位置的若干连续子范围的情形,或者多个IP地址范围包含相同位置并且能够合并的情形。
关于对IP地址范围进行划分,开始于每个IP地址范围(StartIP,EndIP)和该IP地址范围内与来自用户查询的位置相匹配的所有IP地址。在匹配的IP地址之中,找出数值增大(并非必然是连续的)并且匹配相同的最高位置的IP地址序列。针对每个这样的序列,创建IP地址子范围。由其余“地址空洞”创建的子范围地址然后被设置为具有该IP地址范围的原始位置。
关于对IP地址范围进行合并,找出具有相同位置的相邻IP地址范围。给定两个IP地址范围(StartIP1,EndIP1)和(StartIP2,EndIP2),如果0≤StartIP2-EndIP1≤R并且该IP地址范围的位置相同,那么前述两个范围被认为是相邻的,其中R是整数阈值。如果IP地址范围相邻并且具有相同位置,那么这些IP地址范围然后被合并。
用于改进RevIP数据库的一种可替换解决方案可以如下。不同于涉及在IP级别改进RevIP数据库,还能够在UserID和ClientID级别对RevIP数据库进行改进。通过按照UserID和/或ClientID对查询中指示的位置进行聚合,能够为每个用户或者每个用户设备生成位置简档。位置简档然后能够被用来重写由RevIP数据库以每个用户为基础所确定的位置。在许多用户共享相同IP地址的情况下,在UserID和ClientID级别改进位置检测将是有利的。例如,这能够应用于利用有限数目的公共IP地址的大型公司或移动电话运营商。在极端情况下,整个国家都处于代理服务器之后,该代理服务器仅具有单个公共IP地址。
关于找出共享多个位置(指示大型互联网网关)的IP地址,在用户位于共享相同IP地址的不同地理区域中时存在多种情形。所公开的架构能够确定为多于一个的地理地区进行服务的IP地址。这能够提供上文中涉及到从用户查询提取位置并且按IP聚合最经常使用的位置的步骤来实现。
不同于仅保存顶部的Z个位置,对每个IP地址的所有位置都加以考虑。如果不同数量的地理地区的数目高于阈值D,并且如果平均每个地区被提及至少R次(其中数值D和R是整数),则确定该IP地址是否被处于多个地理地区的若干用户所使用。
此外,其它信号能够被用来确定用户多样性:已经利用用户名/密码从该IP地址登入的不同用户的数目,以及与跨所有IP地址的平均值相比,从该IP地址平均发出的查询的数目。
存在共享多个位置的IP地址暗示了可以采用混合方法,该混合方法使用针对国家和/或地理地区而改进的IP级别的RevIP数据库,该RevIP数据库具有大量不同的IP地址,并且该方法针对具有被许多用户所共享的数目有限的IP地址的地区使用UserID和ClientID级别的位置检测。
现在参考附图,其中相同附图标记贯穿全文被用来指代相同要素。在以下描述中,出于解释说明的目的,给出了多个具体细节以便提供对所请求保护的主题的全面理解。然而,所请求保护的主题显然可以在没有这些具体细节的情况下被实践。在其它情况下,以框图形式示出了结构和设备以便促进对所请求保护主题的描述。旨在于覆盖落入所请求保护主题的精神和范围之内的所有修改、等同和替换形式。
图1图示了根据所公开架构的数据库更新系统100。该系统100能够包括被配置为访问地理位置数据104(例如,地理位置坐标数据(纬度/经度)、网页的位置感知内容等)的访问组件102,该地理位置数据104指示用户地理位置106,所述用户地理位置106从相对于地理位置106的用户动作108(例如,支持设备地理位置追踪,明确输入用户位置数据,支持从社交网络捕捉签到数据等)导出。
访问组件102能够访问搜索引擎查询日志,以例如从给定用户或其它用户的日志中获得地理位置数据104。访问组件102能够被配置为确定包含位置信息的至少一个查询或内容,并且被配置为从用户查询提取位置数据。
提供了聚合组件110,该聚合组件110被配置为按网络地址(例如,IP)对最频繁使用的(主导的)位置数据112进行聚合。主导位置被映射到已有的RevIP数据库的IP地址范围,并且确定要替换哪个主导位置,RevIP数据库将IP范围映射到多个位置(例如,范围具有起始IP地址(StartIP)和末尾IP地址(EndIP))。
由于这些IP范围中的一些可能被映射到不正确的位置,所以为了找出哪些范围具有不正确的位置以便校正,要从以上计算的位置的出现开始。然后,按IP地址范围对位置出现计数进行聚合(即,按RevIP数据库的IP地址范围来聚合针对每个IP地址的所有位置出现)。这产生了从RevIP数据库中的每个IP地址范围发出的查询中被最频繁提及的位置。针对与以上至少一个IP地址相匹配的每个RevIP数据库IP地址范围,基于阈值(例如,如果该位置被提及的次数大于阈值M,其中M≥1),来利用用户查询中被提及最多位置替换该RevIP数据库中的位置。随着M增大,精确度增大且召回(recall)减少。该步骤中经修改的RevIP数据库与原始的RevIP数据库相比产生更好的性能。
提供了更新组件114,该更新组件114被配置为基于最频繁使用的位置数据112来利用更新对已有的逆向IP(互联网协议)数据库进行更新,从而创建经更新的逆向IP数据库116以供随宽度网络或移动网络中的至少一种一起使用。更新组件114能够被配置为对IP地址范围进行划分或组合中的至少一种操作,从而随着针对经更新的RevIP数据库116的改进而对(先前的)逆向IP数据库的性能加以改进。
图2图示了根据所公开架构的可替换的数据库更新系统200。该系统包括图1的系统100,并且另外包括其它组件:真相数据集202、评估组件204和分析组件206。真相数据集202被生成并且被配置为将IP地址和IP地址范围映射到地理位置,从而实现对经更新的逆向IP数据库的测试(例如,使用阈值)以便得以改进。评估组件204被配置为使用真相数据集202来评估经更新的逆向IP数据库116,以确保经更新的逆向IP数据库比(先前的)逆向IP数据库有改进。分析组件206能够被配置为标识共享多个地理位置的IP地址。
根据所公开的架构可以理解,RevIP数据库评估不是一项要求。换句话说,能够假设在没有评估的情况下经更新的RevIP数据库也有所改进,并且因此被部署用以替代先前(或已有的)的RevIP数据库。RevIP数据库能够包括城市、州、国家、城市界限(边界标记)、大洲、时区等,所有这些都与用户(和用户设备)的地理情境相关。例如,可能出现能够确定已有的RevIP数据库的数据是“稳定的”(足够新)并且在另一次循环之前无需进行更新的情形。
评估能够采用不同阈值,这些阈值能够出于不同目的而被应用。例如,评估能够涉及诸如大洲、国家、较小地区之类的实体。一些实体可以不更新数据库而其它国家则可能更新该数据库。
在另一种实施方式中,相对接近的两个城市会在搜索中导致冲突:例如,用户在贝尔维尤居住或工作,但是频繁地搜索西雅图。在这样的情况下,能够采用一种算法来考虑城市大小。因此,如果用户搜索了西雅图二十次并且搜索贝尔维尤十五次,由于用户位置处于贝尔维尤中,贝尔维尤的结果被强化(例如,具有更高权重或排名)。这对大城市/小城市的情形做出了补偿。
要理解的是,在所公开的架构中,某些组件可以被重新排列、组合、省略,并且可以包括另外的组件。此外,在一些实施方式中,所有或一些组件出现在客户端上,而在其它实施方式中,一些组件可以处于服务器上或者由本地或远程服务来提供。
图3图示了根据所公开架构的用于数据库更新的示图300。虽然在该实施方式中特别涉及访问和检验搜索引擎的查询日志,但是要理解的是,该图通常也应用于用户位置信息的其它来源。
在300,对于单日查询日志进行操作,该流程去往302,在302中提取出与明确位置查询相关联的页面分区(例如,涉及地理区域的针对性广告,与用户或者用户/设备的地理位置相关联的其它形式的媒体,等等)。明确位置查询在查询中明确地使用位置数据或术语。因此,在页面分区(部分)中以页面视图被发送并呈现给用户的内容将可能是与查询中明确使用的位置数据相关联的内容。在304,创建位置相关的页面分区的列表。在306,基于位置相关的页面分区对查询日志进行采样。这可以在单日查询日志上执行,同样也可以在多日查询日志308上执行。多日可以是任意预定的天数,作为示例,诸如三天。
在306对单日和/或多日查询日志进行采样之后,该流程能够去往310,接收(或获得)经采样的查询日志。在312,从经采样的查询日志中的相关联查询中提取位置(地理信息)。在314,按IP地址对从查询提取的用户查询位置进行聚合。在316,然后以IP地址范围为基础执行聚合。在318,然后根据被提取和聚合的用户查询位置来更新(修改)先前的RevIP数据库320,这形成了经更新的RevIP数据库116。在一种实施方式中,这能够完成RevIP更新处理。
然而,能够做出进一步的强化,从而确保经更新的RevIP数据库116实际上比之前版本的RevIP数据库320有改进。如果支持的话,采用真相数据集202。能够使用至少被提取的与一些地理位置技术(诸如GPS)相关联的位置感知页面视图326来生成数据集202。位置感知页面视图326例如能够从多日查询日志308获得。在328,然后能够以每个IP地址为基础、保持(与宽带连接相关联的)固定IP地址,对从位置感知页面视图326获得的位置进行聚合。数据集202然后至少将这个信息用于对RevIP数据库的分析以供一定程度的改进(或者其缺陷)。
真相数据集202然后被用来评估先前的RevIP数据库320(如330所指示的)和评估经更新的RevIP数据库202(如332所指示的)。这可以是数据库(116和320)之间的差异分析处理,从而查看或估计经更新数据库116相对于之前数据库320的改变。
可替换地,这可以是相对于一个或多个量度对两个数据库(116和320)的直接分析,并且从该分析能够输出得分以作为有用性或改进的量度。例如,可能出现经更新的数据库116没有改进或者仅由小规模改进从而不值得花费资源成本(作为一种量度)来部署经更新数据库116的情形;因此,先前的数据库320在服务中被保留(保持被部署)直至经更新的数据库116被认为其部署是明显有利的。
所公开的架构可选地能够包括隐私组件,该隐私组件使得用户能够选择加入或拒绝曝光个人信息。该隐私组件实现对用户信息进行经授权且安全的处理,上述用户信息诸如追踪信息以及可能已经被获得、保存和/或可访问的个人信息。用户能够被提供有对部分个人信息的采集的通知以及选择加入或拒绝该收集处理的机会。同意能够采取多种形式。选择加入的同意能够在收集数据之前被施加给用户以采取确认动作。可替换地,选择退出的同意能够在数据被收集之前被施加给用户以采取阻止数据收集的确认动作。
图4图示了根据经改进的逆向IP数据库来划分旧有IP地址范围402的视觉表示形式400。旧有IP地址范围402被指示为具有StartIP地址和EndIP地址,并且是针对逆向IP数据库中的“旧有位置的旧有IP范围”而建立的IP地址范围。所公开的架构已经基于地理位置数据而检测到旧有IP地址范围402内的十个新IP地址:聚集在StartIP地址附近的四个IP地址404以及聚集在EndIP地址附近的六个IP地址406。
因此,为了提高RevIP数据库的准确性(质量),(更新组件114的)更新处理将旧有IP地址范围402划分为五个分段:用于旧有位置的第一新IP地址范围408,用于新位置的第一新IP地址范围410(四个IP地址404),用于旧有位置的第二新IP地址范围412,用于新位置的第二新IP地址范围414(六个IP地址406),以及旧有位置的第三新IP地址范围416。如本文所描述的,在两个IP地址范围相邻并且用于相同地理位置时,这两个IP地址范围能够被组合(合并)。
在操作中,能够假设整个IP地址范围都被指派给一个城市、诸如西雅图;然而,基于该更新处理确定在该范围中存在与第二城市、诸如贝尔维尤相关联的IP地址的子范围。为了提高该数据库的质量(或准确性),整个范围被划分以便更为准确地考虑诸如贝尔维尤的地址。
要理解的是,尽管在一个实施方式中,经更新的RevIP数据库能够处于网络中,但是在另一个实施方式中,该数据库的大小能够有所减小并且更关注于用户和/或位置,从而使得该数据库能够被推送给用户设备以供利用。
本文中包括了一组表示用于执行所公开架构的多个创新方面的示例性方法的流程图。虽然出于便于解释的目的,本文中示出的一个或多个方法例如以流程图表或流程图形的形式被示出和描述为一系列动作述,但是要理解并意识到的是,方法并不受动作的顺序的限制,因为一些动作可以相应地以与本文中示出和描述的不同的顺序发生和/或与本文中示出和描述之外的其它动作同时发生。例如,本领域技术人员将会理解并意识到,一种方法可替换地能够诸如以状态图的形式而被表示为一系列彼此相关的状态或事件。此外,创新实施方式并不要求方法中示出的所有动作。
图5图示了根据所公开架构的方法。该方法对应于搜索引擎查询日志的访问。在500,提取与明确位置查询相关的页面分区(或部分)。在502,基于位置相关(或感知)的页面分区对查询日志进行采样。在504,然后从查询提取出位置(地理的)。在506,然后按IP地址来聚合用户查询位置。在508,然后按IP地址范围来聚合用户查询位置。在510,然后根据用户查询位置来更新(修改)RevIP数据库。
图6图示了根据所公开架构的另一种方法。在600,访问指示用户地理位置的地理位置数据,该地理位置数据从用户动作导出。用户动作能够包括但不限于在网页的内容上进行点击、在查询中插入地理位置信息、携带用户设备进入到一个地理区域,等等。在602,按每个网络地址为基础聚合最频繁使用的位置数据。在604,基于最频繁使用的位置数据来利用更新对逆向IP数据库进行更新,从而创建经更新的逆向IP数据库以供随宽带网络(固定线缆)一起使用。
该方法可以进一步包括使用真相数据集来评估经更新的逆向IP数据库,以确保经更新的逆向IP数据库比逆向IP数据库有改进。该方法可以进一步包括访问与搜索查询相关的地理位置数据。
该方法可以进一步包括访问与搜索结果页面的内容部分相关的地理位置数据。该方法可以进一步包括确定何种类型的网页内容是位置感知内容。
该方法可以进一步包括作为更新的一部分,对IP地址范围进行划分以改进经更新的逆向IP数据库。该方法可以进一步包括作为更新的一部分,对IP地址进行组合以改进经更新的逆向IP数据库。
图7图示了根据所公开架构的又一种方法。该方法能够被实施为包括计算机可执行指令的计算机可读存储介质,计算机可执行指令在由硬件处理器执行时实现对数据库进行更新。
在700,访问搜索引擎的查询日志,查询日志被配置为存储用户做出的查询以及用户的IP地址。在702,提取与查询相关的位置数据。在704,以每个IP地址为基础聚合最频繁使用的位置数据。在706,基于最频繁使用的位置数据来利用更新对逆向IP数据库进行更新,从而创建经更新的逆向IP数据库以供随通信网络一起使用。
计算机可读存储介质可以进一步包括随宽带通信网络或移动通信网络中的至少一种一起利用经更新的逆向IP数据库。计算机可读存储介质可以进一步包括作为更新该逆向IP数据库的一部分,对IP地址范围进行划分或对IP地址范围进行组合中的至少一种。
计算机可读存储介质可以进一步包括针对真相数据集来评估经更新的逆向IP数据库。计算机可读存储介质可以进一步包括确定何种类型的查询和网页内容部分是位置感知的查询和内容部分。计算机可读存储介质可以进一步包括将最频繁使用的位置数据映射到已有的逆向IP数据库范围。
如本申请中所使用的,术语“组件”和“系统”旨在于指代计算机相关的实体,该计算机相关的实体是硬件、软件和有形硬件的组合、软件,或者执行中的软件。例如,组件可以是诸如微处理器、芯片存储器、大型存储设备(例如,光学驱动器、固态驱动器和/或磁性存储媒体驱动器)和计算机之类的有形组件,以及诸如在微处理器上运行的过程、对象、可执行程序、(存储在易失性或非易失性存储介质上的)数据结构、模块、执行线程和/或程序之类的软件组件,但是组件并不限于前述内容。
举例而言,在服务器上运行的应用程序以及服务器都可以是组件。一个或多个组件可以处于过程和/或执行线程内,并且组件可以被定位在一台计算机上和/或被分布在两台或更多计算机之间。词语“示例性”在本文中被用来表示用作示例、实例或说明。本文中被描述为“示例性”的方面或设计并非必然被理解为是优选地或者优于其他方面或设计。
现在参考图8,该图图示了根据所公开架构的执行数据库更新的计算系统800的框图。然而,应当理解的是,可以将所公开的方法和/或系统的一些或所有方面实现为片上系统,其中模拟、数字、混合信号以及其他功能都被制造在单个芯片衬底上。
为了提供针对该系统的各个方面的另外的上下文,图8及以下描述旨在提供对其中可以实现各个方面的适当计算系统800的简短和概括的描述。尽管以上描述处于在能够运行在一个或多个计算机上的计算机可执行指令的一般上下文中,但本领域技术人员将认识到,创新的实施例也可以结合其他程序模块来实现和/或被实现为硬件和软件的组合。
用于实现各个方面的计算系统800包括计算机802,该计算机802具有(多个)微处理单元804(也被称为(多个)微处理器和(多个)处理器)、诸如系统存储器806之类的计算机可读存储介质(计算机可读存储介质还包括磁盘、光盘、固态驱动器、外部存储系统、和闪速存储驱动器)以及系统总线808。(多个)微处理单元804可以是各种商业上可获得的微处理器中的任何一种,例如单处理器、多处理器、具有处理和/或存储电路的单核单元和多核单元。此外,本领域技术人员应当理解,可以利用其它计算机系统配置(包括小型计算机、大型计算机以及个人计算机(例如,台式计算机、膝上计算机、平板PC、等)、手持式计算设备、基于微处理器的或可编程的消费型电子设备等来实践创新的系统和方法,上述计算机中的每一个都可以可操作地耦合至一个或多个相关联的设备。
计算机802可以是在数据中心和/或计算资源(硬件和/或软件)中采用的若干计算机之一,以支持针对便携式和/或移动计算系统(诸如无线通信设备、蜂窝式电话和其他移动功能的设备)的云计算服务。云计算服务包括但不限于例如基础设施即服务、平台即服务、软件即服务、存储设备即服务、桌面即服务、数据即服务、安全即服务、以及API(应用程序接口)即服务。
系统存储器806可以包括诸如易失性(VOL)存储器810(例如,随机存取存储器(RAM))和非易失性存储器(NON-VOL)812(例如,ROM、EPROM、EEPROM等)之类的计算机可读存储(物理存储)介质。基本的输入/输出系统(BIOS)可以被存储在非易失性存储器812中,并且包括基础例程,这些基础例程促进计算机802内的组件之间的数据和信号的通信,例如,在启动期间,易失性存储器810还可以包括用于缓存数据的高速RAM、诸如静态RAM。
系统总线808为系统组件提供接口,这些系统组件包括但不限于系统存储器806到(多个)微处理单元804。系统总线808可以是使用商业上可获得的多种总线架构中的任意各种类型的总线结构中的任何一种,这些总线架构能够进一步互连到存储器总线(具有或不具有存储控制器)和外围总线(例如,PCI、PCIe、AGP、LPC等)。
计算机802进一步包括机器可读的存储子系统814以及用于将存储子系统814对接到系统总线808以及其它期望的计算机组件和电路的存储接口816。存储子系统814(物理存储介质)可以包括以下存储设备中的一个或多个:例如,硬盘驱动器(HDD)、磁软盘驱动器(FDD)、固态驱动器(SSD)、闪存驱动器和/或光盘存储驱动器(例如,CD-ROM驱动器、DVD驱动器)。存储接口816可以包括诸如EIDE、ATA、SATA、以及IEEE 1394之类的接口技术。
能够将一个或多个程序和数据存储在存储器子系统806、机器可读和可移动存储器子系统818(例如,闪存驱动器形式因子(flash drive form factor)技术)和/或(多个)存储子系统814(例如,光、磁、固态)中,上述一个或多个程序和数据包括操作系统820、一个或多个应用程序822、其它程序模块824以及程序数据826。
操作系统820、一个或多个应用程序822、其它程序模块824和/或程序数据826可以包括:例如图1的系统100中的项目和组件,图2的系统200中的项目和组件,图3的流程图300中的项目和流程,图4的系统400中的项目以及由图5至图7的流程图所表示的方法。
概括而言,程序包括执行特定的任务、功能、或实现特定的抽象数据类型的例程、方法、数据结构、其它软件组件等。操作系统820、应用程序822、模块824和/或数据826中的全部或部分也可以被缓存在诸如易失性存储器810和/或非易失性存储器之类的存储器中。应当理解的是,可以利用各种商业上可获得的操作系统或操作系统的组合(例如,作为虚拟机器)来实现所公开的架构。
(多个)存储子系统814和存储器子系统(806和818)充当用于对数据、数据结构、计算机可执行指令等的易失性和非易失性存储的计算机可读介质。当这样的指令由计算机或其它机器执行时,可以使得计算机或其它机器执行方法的一个或多个动作。计算机可执行指令包括例如使得通用计算机、专用计算机或者(多个)专用微处理器设备执行某个功能或某组功能的指令和数据。计算机可执行指令可以例如是二进制的、诸如汇编语言之类的中间格式的指令、或者甚至是源代码。可以将用于执行动作的指令存储在一个介质上、或者可以跨多个介质而存储,以使得指令共同出现在一个或多个计算机可读存储介质/多个介质上,而不管是否所有指令都在相同介质上。
(多个)计算机可读存储介质排除了传播的信号本身、可以由计算机802访问,并且包括可移动的和/或不可移动的易失性和非易失性内部和/或外部介质。对于计算机802而言,各种类型的存储介质以任何适当的数字格式来容纳对数据的存储。本领域技术人员应当理解,可以采用诸如zip驱动器、固态驱动器、磁带、闪速存储器卡、闪存驱动器、盒式磁带等之类的其它类型的计算机可读介质,以对用于执行所公开的架构的创新方法(动作)的计算机可执行指令进行存储。
用户可以使用诸如键盘和鼠标之类的外部用户输入设备828以及通过由话音标识促成的语音命令来与计算机802、程序和数据进行交互。其它外部用户输入设备828可以包括:麦克风、IR(红外)远程控制、操纵杆、游戏手柄、相机标识系统、触控笔、触摸屏、手势系统(例如,眼部运动,诸如涉及(多个)手、(多个)手指、(多个)手臂、头部等的身体姿势)等。用户可以使用诸如触摸板、麦克风、键盘等之类的板载(onboard)用户输入设备830来与计算机802、程序以及数据进行交互,其中计算机802例如是便携式计算机。
将这些和其它输入设备经由系统总线808通过输入/输入(I/O)设备接口832而连接至(多个)微处理单元804,但也可以通过诸如并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口、短距离无线(例如,蓝牙)和其它个域网(PAN)技术之类的其它接口来连接。(多个)I/O设备接口832还便于诸如打印机、音频设备、相机设备之类的输出外设834使用,例如声卡和/或板载音频处理能力的使用。
一个或多个图形接口836(通常也被称为图形处理单元(GPU))在计算机802与(多个)外部显示器838(例如,LCD、等离子)和/或板载显示器840(例如,针对便携式计算机)之间提供图形和视频信号。(多个)图形接口836也可以被制造为计算机系统板的一部分。
计算机802可以在使用经由有线/无线通信子系统842到一个或多个网络和/或其它计算机的逻辑连接的网络化的环境(例如,基于IP)中运行。其它计算机可以包括工作站、服务器、路由器、个人计算机、基于微处理器的娱乐家电、对等设备、或其它公共网络节点,并且通常包括关于计算机802所描述的元件中的许多元件或全部元件。逻辑连接可以包括与局域网(LAN)、广域网(WAN)、热点等的有线/无线连通性。LAN和WAN联网环境在办公室和公司中是常见的,并且促成了企业范围的计算机网络、例如内联网,所有这些网络都可以连接到诸如互联网之类的全球通信网络。
当在联网环境中使用时,计算机802经由有线/无线通信子系统842(例如,网络接口适配器、板载收发机子系统等)连接至网络,以与有线/无线网络、有线/无线打印机、有线/无线输入设备844等进行通信。计算机802可以包括调制解调器或者用于建立通过网络的通信的其它单元。在网络化的环境中,可以将与计算机802相关的程序和数据存储在远程存储器/存储设备中,如与分布式系统相关联。应当理解的是,所示出的网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其它器件。
计算机802可操作以使用诸如IEEE 802.xx族的标准之类的无线技术来与有线/无线设备或实体进行通信,例如可操作地设置在与例如打印机、扫描仪、台式计算机和/或便携式计算机、个人数字助理(PDA)、通信卫星、与无线可检测的标签相关联的任何一个装置或位置(例如,信报亭、新闻站、休息室)以及电话的无线通信(例如,IEEE 802.11无线调制技术)中的无线设备。这至少包括针对热点的Wi-FiTM(用于验证无线计算机联网设备的互操作性)、WiMax、以及蓝牙TM无线技术。因此,通信可以是正如传统网络的预先定义的结构或者在至少在两个设备之间的简单的自组织(ad hoc)通信。Wi-Fi网络使用被称为IEEE802.11x(a、b、g等)的无线技术来提供安全、可靠、快速的无线连通性。Wi-Fi网络可用于将计算机彼此连接、连接至互联网,以及连接至无线网络(其使用有关IEEE-802.3的技术和功能)。
在上文中已经描述的内容包括所公开的架构的示例。当然,不可能描述组件和/或方法的每种能想到的组合,但本领域技术人员可以理解的是,许多进一步的组合和排列是可能的。由此,创新的架构旨在包含落入所附权利要求的精神和范围内的所有这些改变、修改和变型。此外,就在具体实施方式或权利要求中所使用的术语“包括”而言,如“包括”在权利要求中用作过渡词时被翻译的那样,这样的术语旨在以与术语“包括”类似的方式被认为是包含性的。

Claims (17)

1.一种更新数据库的方法,包括:
访问指示用户地理位置的地理位置数据,所述地理位置数据从用户动作导出;
按网络地址来将最频繁使用的位置数据聚合到聚合数据库更新;
基于所述最频繁使用的位置数据来利用所述聚合数据库更新对已有的逆向互联网协议IP数据库进行更新,以创建经更新的逆向IP数据库;
相对于真相数据库来评估所述经更新的逆向IP数据库,以针对特定IP地址范围确定所述经更新的逆向IP数据库的准确性;
基于所述评估来确定所述经更新的逆向IP数据库相较于所述已有的逆向IP数据库是否对于所述特定IP地址范围更准确;以及
仅在确定所述经更新的逆向IP数据库相较于所述已有的逆向IP数据库对于所述特定IP地址范围更准确至少预定量的情况下,使用所述经更新的逆向IP数据库来确定针对特定IP地址范围的地理位置。
2.根据权利要求1所述的方法,进一步包括访问与搜索查询相关的所述地理位置数据。
3.根据权利要求1所述的方法,进一步包括访问与搜索结果页面的内容部分相关的所述地理位置数据。
4.根据权利要求1所述的方法,进一步包括确定何种类型的网页内容是位置感知内容。
5.根据权利要求1所述的方法,进一步包括作为所述更新的一部分,对IP地址范围进行划分以创建所述经更新的逆向IP数据库。
6.根据权利要求1所述的方法,进一步包括作为所述更新的一部分,对IP地址进行组合以创建所述经更新的逆向IP数据库。
7.一种包括计算机可执行指令的计算机可读硬件存储介质,所述计算机可执行指令在由硬件处理器执行时实现对数据库进行更新,使得所述处理器执行以下动作:
访问搜索引擎的查询日志,所述查询日志被配置为存储用户做出的查询和所述用户的互联网协议IP地址;
提取与所述查询相关的位置数据;
按IP地址来聚合最频繁使用的位置数据;
基于所述最频繁使用的位置数据来利用更新对已有的逆向IP数据库进行更新,以创建经更新的逆向IP数据库以供随通信网络一起使用;
相对于真相数据库来评估所述经更新的逆向IP数据库,以针对特定IP地址范围确定所述经更新的逆向IP数据库的准确性;
基于所述评估来确定所述经更新的逆向IP数据库相较于所述已有的逆向IP数据库是否对于所述特定IP地址范围更准确;以及
仅在确定所述经更新的逆向IP数据库相较于所述已有的逆向IP数据库对于所述特定IP地址范围更准确至少预定量的情况下,使用所述经更新的逆向IP数据库来确定针对特定IP地址范围的地理位置。
8.根据权利要求7所述的计算机可读硬件存储介质,进一步包括随宽带通信网络或移动通信网络中的至少一种一起利用所述经更新的逆向IP数据库。
9.根据权利要求7所述的计算机可读硬件存储介质,进一步包括以下至少一项:作为更新所述逆向IP数据库的一部分,将IP地址范围进行划分;或者作为更新所述逆向IP数据库的一部分,组合IP地址。
10.根据权利要求7所述的计算机可读硬件存储介质,进一步包括确定何种类型的查询和网页内容部分是位置感知查询和内容部分。
11.根据权利要求7所述的计算机可读硬件存储介质,进一步包括将所述最频繁使用的位置数据映射到已有的逆向IP数据库范围。
12.一种用于更新数据库的系统,包括:
至少一个处理器;
存储器,可操作地连接至所述至少一个处理器并且存储指令,所述指令在由所述至少一个处理器执行时使所述至少一个处理器执行方法,所述方法包括:
访问指示用户地理位置的地理位置数据,所述地理位置数据从用户动作导出;
按网络地址来将最频繁使用的位置数据聚合到聚合数据库更新;
基于所述最频繁使用的位置数据来利用所述聚合数据库更新对已有的逆向互联网协议IP数据库进行更新,以创建经更新的逆向IP数据库;
相对于真相数据库来评估所述经更新的逆向IP数据库,以针对特定IP地址范围确定所述经更新的逆向IP数据库的准确性;
基于所述评估来确定所述经更新的逆向IP数据库相较于所述已有的逆向IP数据库是否对于所述特定IP地址范围更准确;以及
仅在确定所述经更新的逆向IP数据库相较于所述已有的逆向IP数据库对于所述特定IP地址范围更准确至少预定量的情况下,使用所述经更新的逆向IP数据库来确定针对特定IP地址范围的地理位置。
13.根据权利要求12所述的系统,所述方法进一步包括访问与搜索查询相关的所述地理位置数据。
14.根据权利要求12所述的系统,所述方法进一步包括访问与搜索结果页面的内容部分相关的所述地理位置数据。
15.根据权利要求12所述的系统,所述方法进一步包括确定何种类型的网页内容是位置感知内容。
16.根据权利要求12所述的系统,所述方法进一步包括作为所述更新的一部分,对IP地址范围进行划分以创建所述经更新的逆向IP数据库。
17.根据权利要求12所述的系统,所述方法进一步包括作为所述更新的一部分,对IP地址进行组合以创建所述经更新的逆向IP数据库。
CN201580038522.3A 2014-07-15 2015-07-09 使用指示用户位置的数据的逆向ip数据库 Active CN106537384B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/332,350 2014-07-15
US14/332,350 US9753946B2 (en) 2014-07-15 2014-07-15 Reverse IP databases using data indicative of user location
PCT/US2015/039632 WO2016010799A1 (en) 2014-07-15 2015-07-09 Reverse ip databases using data indicative of user location

Publications (2)

Publication Number Publication Date
CN106537384A CN106537384A (zh) 2017-03-22
CN106537384B true CN106537384B (zh) 2019-07-26

Family

ID=53682869

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580038522.3A Active CN106537384B (zh) 2014-07-15 2015-07-09 使用指示用户位置的数据的逆向ip数据库

Country Status (4)

Country Link
US (1) US9753946B2 (zh)
EP (1) EP3170102B1 (zh)
CN (1) CN106537384B (zh)
WO (1) WO2016010799A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10791050B2 (en) * 2012-12-13 2020-09-29 Level 3 Communications, Llc Geographic location determination in a content delivery framework
US10474671B2 (en) * 2014-05-12 2019-11-12 Google Llc Interpreting user queries based on nearby locations
CN106537381B (zh) 2014-08-20 2019-08-20 谷歌有限责任公司 基于装置定向解释用户查询
US10394802B1 (en) 2016-01-31 2019-08-27 Splunk, Inc. Interactive location queries for raw machine data
US10298704B2 (en) 2016-10-27 2019-05-21 Microsoft Technology Licensing, Llc Determining geolocation of IP addresses using user transitions over time
CN107124480B (zh) * 2017-04-28 2020-12-18 国网上海市电力公司 一种网络协议地址-地域信息匹配方法及系统
US10984452B2 (en) * 2017-07-13 2021-04-20 International Business Machines Corporation User/group servicing based on deep network analysis
JP6977625B2 (ja) * 2018-03-07 2021-12-08 富士通株式会社 評価プログラム、評価方法および評価装置
CN108446365B (zh) * 2018-03-14 2022-03-15 北京思特奇信息技术股份有限公司 一种地址信息查询方法、系统、设备和存储介质
US11178156B2 (en) 2018-07-27 2021-11-16 Verizon Patent And Licensing Inc. Methods and systems for authenticating a reported geolocation of a mobile device
CN109446207A (zh) * 2018-08-28 2019-03-08 广州城市信息研究所有限公司 一种标准地址数据库更新方法和地址匹配方法
US11012861B1 (en) 2020-01-09 2021-05-18 Allstate Insurance Company Fraud-detection based on geolocation data
CN111506654B (zh) * 2020-04-17 2023-05-05 北京思特奇信息技术股份有限公司 用于数据路由的数据分区方法
CN113127448A (zh) * 2021-04-23 2021-07-16 深圳市酷开网络科技股份有限公司 一种地域维度表生成方法、装置、服务器及存储介质
US20230169596A1 (en) * 2021-11-30 2023-06-01 Capital One Services, Llc Systems and techniques for authenticating insurance claims

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383855A (zh) * 2007-09-04 2009-03-11 沈阳 一种基于ip地址信息获取计算机精确地理位置信息的方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6684250B2 (en) * 2000-04-03 2004-01-27 Quova, Inc. Method and apparatus for estimating a geographic location of a networked entity
US6947978B2 (en) * 2000-12-29 2005-09-20 The United States Of America As Represented By The Director, National Security Agency Method for geolocating logical network addresses
US7797410B2 (en) 2004-04-29 2010-09-14 Euro Convergence, Sarl Reverse IP method and system
US8024337B1 (en) 2004-09-29 2011-09-20 Google Inc. Systems and methods for determining query similarity by query distribution comparison
US20060218114A1 (en) 2005-03-25 2006-09-28 Microsoft Corporation System and method for location based search
US7424472B2 (en) 2005-05-27 2008-09-09 Microsoft Corporation Search query dominant location detection
US20070133385A1 (en) 2005-12-14 2007-06-14 Microsoft Corporation Reverse ID class inference via auto-grouping
WO2008030793A2 (en) 2006-09-05 2008-03-13 Thomas Publishing Company Marketing method and system using domain knowledge
US20090248663A1 (en) 2008-03-31 2009-10-01 Microsoft Corporation Online target location detection
US20110099507A1 (en) * 2009-10-28 2011-04-28 Google Inc. Displaying a collection of interactive elements that trigger actions directed to an item
CN102104635B (zh) * 2009-12-17 2014-07-16 阿里巴巴集团控股有限公司 一种更新互联网协议ip地址库的方法和装置
US8972397B2 (en) 2010-03-11 2015-03-03 Microsoft Corporation Auto-detection of historical search context
US20120072287A1 (en) 2010-09-17 2012-03-22 Microsoft Corporation Using location for determining relevance between queries and advertisements
US20160006628A1 (en) * 2011-05-02 2016-01-07 Google Inc. Determining geo-locations of users from user activities
US20120317104A1 (en) 2011-06-13 2012-12-13 Microsoft Corporation Using Aggregate Location Metadata to Provide a Personalized Service
US8812661B2 (en) 2011-08-16 2014-08-19 Facebook, Inc. Server-initiated bandwidth conservation policies
US8938653B2 (en) 2011-12-14 2015-01-20 Microsoft Corporation Increasing the accuracy of information returned for context signals
US9026145B1 (en) * 2012-03-23 2015-05-05 Google Inc. Systems and methods for mapping IP-addresses to geolocations
US9197595B1 (en) * 2012-05-04 2015-11-24 Google Inc. Evaluating IP-location mapping data
US8949196B2 (en) * 2012-12-07 2015-02-03 Google Inc. Systems and methods for matching similar geographic objects

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383855A (zh) * 2007-09-04 2009-03-11 沈阳 一种基于ip地址信息获取计算机精确地理位置信息的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Bringing location to IP Addresses withIP Geolocation;Jamie Taylor 等;《Journal of Emerging Technologies in Web Intelligence》;20120801;第4卷(第3期);273-277
Enhancing the classification accuracy of IP geolocation;Hellen Maziku 等;《Military Communications Conference》;20121029;1-6
Mining checkins from location-sharing services for client-independent IP geolocation;Hao Liu 等;《IEEE INFOCOM 2014 - IEEE Conference on Computer Communications》;20140427;619-627

Also Published As

Publication number Publication date
CN106537384A (zh) 2017-03-22
EP3170102A1 (en) 2017-05-24
US20160019237A1 (en) 2016-01-21
US9753946B2 (en) 2017-09-05
EP3170102B1 (en) 2021-04-28
WO2016010799A1 (en) 2016-01-21

Similar Documents

Publication Publication Date Title
CN106537384B (zh) 使用指示用户位置的数据的逆向ip数据库
US10931704B2 (en) Entity IP mapping
Ledlie et al. Molé: A scalable, user-generated WiFi positioning engine
US9515889B2 (en) Geographic location system and method
US8615605B2 (en) Automatic identification of travel and non-travel network addresses
US9268865B2 (en) Ranking search results by social relevancy
CN112347754A (zh) 建立联合学习框架
US10162810B2 (en) Address information input method, acquisition method, apparatus, device, and system
CN106416313A (zh) 识别与无线网络接入点相关联的实体
CN111523031B (zh) 用于推荐兴趣点的方法和装置
CN111639253B (zh) 一种数据判重方法、装置、设备及存储介质
CN103078962B (zh) 增加针对上下文信号返回的信息的准确度的系统和方法
CN107430631B (zh) 从位置报告确定语义地点名称
CN106686020A (zh) 域名安全性的检测方法、装置及系统
US11639857B2 (en) Objective generation of a point of interest score based on quantities of user stops
JP2012123542A (ja) サーバ、情報管理方法、情報管理プログラム、及びそのプログラムを記録するコンピュータ読み取り可能な記録媒体
CN102945263A (zh) 一种用于确定多个访问对象之间的访问相关性信息的方法
Bolliger Robust indoor positioning through adaptive collaborative labeling of location fingerprints
CN109684093A (zh) 数据处理方法及系统
CN109844732B (zh) 使用随时间的用户转换来确定ip地址的地理定位
CN102999558A (zh) 使用数据结构处理搜索查询
CN111798178A (zh) 快递寄送方法、装置和电商服务器
CN110990714A (zh) 一种用户行为意图预测方法和装置
JP2021505855A (ja) 移動経路およびマップ・オブジェクトに基づく位置較正
CN103295466B (zh) 在地图上局部渲染的方法和装置

Legal Events

Date Code Title Description
C06 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