【技术实现步骤摘要】
一种基于geohash与PatriciaTrie的空间关键词查询方法及装置
本专利技术涉及一种基于geohash与PatriciaTrie的空间关键词查询方法及装置,属于空间关键词查询(SpatialKeywordquery)领域、基于位置的服务(Location-BasedService,LBS)等领域。
技术介绍
近年来,随着GPS移动设备的普及、社交网络的发展,产生了大量基于位置的服务,如:社交服务(微信、陌陌、Twitter、Foursquare等)、食住服务(携程、去哪儿、美团外卖等)、导航服务(高德地图、腾讯地图、Google地图等)、娱乐服务(全城热斗、Wikitude等)。这些服务产生了大量具有位置属性的数据,即空间文本,如何从这些数据中快速获取所需信息是空间文本查询领域的核心问题。根据应用场景,空间文本查询可分为空间关键词查询与分发/订阅查询。高效支持空间关键词查询则需高效的空间文本索引结构。目前,国内外对空间文本索引结构进行了广泛而又深入的研究,这些索引结构通常组合空间索引结构与文本索引结构。根据所采用的空间索引结构的不同,可将其分为:基于R-Tree及其变体、grid/Quad-Tree、space-fillingcurve的空间文本索引;根据所采用的文本索引结构,可将其分为:基于倒排列表与签名文件的空间文本索引。空间索引与文本索引的组合方式分为:独立组合、松散组合、紧凑组合。据空间文本查询领域国内外研究现状可知,R-Tree及其变体与倒排索引组合的索引结构是主流的空间文本索引结构。R-Tree的变体以面积最小原则、重叠区域最小原则、 ...
【技术保护点】
1.一种基于geohash与Patricia Trie的空间关键词查询方法,其特征在于:包括:数据预处理步骤,通过geohash空间编码方法将数据集D中所有位置点编码成长度为n的字符串geoStr,以geoStr为排序对象按字典序对数据集D中的每行数据排序并生成编号id,每一行数据称为一条记录r,则由一至多行记录r组成的数据集称为记录集R;空间关键词索引建立步骤,对geoStr构建Patricia Trie,Patricia Trie的叶节点指向根据该域内关键词构建的倒排索引,倒排索引的列表元素为关键词及与其相对应的id列表,得到空间关键词索引结构;其中,该域指从根节点到叶节点所构成的字符串;空间关键词查询步骤,检索空间关键词索引结构,获取满足查询条件的id,经过滤得到id候选集,并对候选集验证返回满足空间查询条件的位置点。
【技术特征摘要】
1.一种基于geohash与PatriciaTrie的空间关键词查询方法,其特征在于:包括:数据预处理步骤,通过geohash空间编码方法将数据集D中所有位置点编码成长度为n的字符串geoStr,以geoStr为排序对象按字典序对数据集D中的每行数据排序并生成编号id,每一行数据称为一条记录r,则由一至多行记录r组成的数据集称为记录集R;空间关键词索引建立步骤,对geoStr构建PatriciaTrie,PatriciaTrie的叶节点指向根据该域内关键词构建的倒排索引,倒排索引的列表元素为关键词及与其相对应的id列表,得到空间关键词索引结构;其中,该域指从根节点到叶节点所构成的字符串;空间关键词查询步骤,检索空间关键词索引结构,获取满足查询条件的id,经过滤得到id候选集,并对候选集验证返回满足空间查询条件的位置点。2.根据权利要求1所述的基于geohash与PatriciaTrie的空间关键词查询方法,其特征在于:所述数据预处理步骤,具体包括如下步骤:步骤110:给定一个由一系列位置点、关键词集构成的数据集D,通过geohash空间编码方法将数据集D中的位置点编码成长度为n的字符串geoStr;其中,位置点由纬度、经度数据构成;geoStr即geohash编码,表示geohash精度表中n对应的范围区域;步骤120:以geoStr为排序对象按字典序对数据集D中的每行数据排序并生成编号id,每一行数据称为一条记录r,则由一至多行记录r组成的数据集称为记录集R;其中,R中每行数据r由id、纬度lat、经度lon、字符串geoStr、关键词集items组成,items至少包含一个关键词item。3.根据权利要求1所述的基于geohash与PatriciaTrie的空间关键词查询方法,其特征在于:所述空间关键词索引建立步骤,具体为:步骤210:对Rstr构建PatriciaTrie,每个geoStr可映射为PatriciaTrie中一条从根到叶节点的路径,PatriciaTrie叶节点指向根据该域内关键词构建的倒排索引,PatriciaTrie的所有叶节点通过指针连接,PatriciaTrie内部节点存储以该节点为根结点的PatriciaTrie子树的叶节点个数;其中,Rstr表示R中所有geoStr且保持其顺序性;该域指从根节点到叶节点所构成的字符串geoStri;步骤220:对Ritems中每个独立元素item,构建一个由包含item的rpart.id组成的倒排列表;其中,rpart表示R中包含geoStri的r.id、r.items,r.id表示r的id,r.items表示r的关键词集,Rpart表示由一至多行rpart组成的数据集;Ritems表示Rpart中全部关键词,rpart.id表示rpart的id。4.根据权利要求1所述的基于geohash与PatriciaTrie的空间关键词查询方法,其特征在于:所述空间关键词查询步骤,具体包括如下步骤:步骤310:给定查询位置点q、查询距离范围d、查询关键词集qitems,根据geohash精度表选定与d相对应的geohash编码长度p,通过geohash空间编码方法将位置点q编码为p位长度的字符串qs,获取字符串qs周围8个区域的geohash编码,并将字符串qs及其周围8个区域的geohash编码分别作为查询域,共9个查询域;其中,p对应的距离误差不小于d且为最小值;qitems至少由一个关键词item构成;步骤320:检索空间关键词索引结构返回满足查询条件的id;其中,查询条件指查询域内包含全部qitems的id;步骤330:根据查询位置点q和查询距离范围d分别确定纬度范围与经度范围,根据经纬度范围对与步骤320返回的id相对应的位置点进行筛选,最终得到id候选集;步骤340:计算候选集中id对应的位置点到q的距离dq:若dq≤d,则返回该位置点,否则,不返回。5.根据权利要求2所述的基于geohash与PatriciaTrie的空间关键词查询方法,其特征在于:所述步骤110,包括下列步骤111、112...
【专利技术属性】
技术研发人员:沈兵林,贾连印,李孟娟,李晓武,丁家满,左喻灏,胡俊涛,雷妍,
申请(专利权)人:昆明理工大学,
类型:发明
国别省市:云南,53
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。