The embodiment of the invention provides a moving object query method in the road network, belonging to the field of high performance computing and database. The query method of moving objects in road network, for the server, which comprises the following steps: acquiring data query of moving objects to update the data and user input; the use of multi-core CPU, the mobile node where the object is located in the road network of the mobile object obtained by updating data aggregation index and query data in the network edge to the clustered index the query based on the acquired data; and the clustered index after the data into GPU to calculate the nearest neighbor based on KNN algorithm, to obtain query results. The embodiment of the invention provides a query method of moving objects based on high throughput of network hardware environment, which give full play to the characteristics of large memory, multi-core CPU and GPU, so as to improve the efficiency of query processing of moving objects, can query location services based on user satisfaction data.
【技术实现步骤摘要】
路网中移动对象查询方法
本专利技术涉及高性能计算领域和数据库领域,具体地涉及一种路网中移动对象查询方法。
技术介绍
随着移动设备的广泛普及和位置服务的不断发展,针对移动对象的查询处理成为研究的热点。典型的查询,例如:查找距离用户最近的超市或加油站;距离用户最近的出租车等。在人们的日常生活中,所有的对象都是基于路网进行运动。对于路网中任意对象X和Y,对象间的路网距离d(x,y)比欧式距离||x–y||能更好的反映出对象间的实际距离。例如,在双向车道中,车辆q到位于另一侧加油站p的路网距离d(q,p)远远大于两者之间的欧式距离||q–p||。因此,两个对象间的路网距离d(q,p)比欧氏距离||q–p||更有意义。但是,本申请专利技术人在实现本专利技术的过程中发现,已有的路网中移动对象查询算法具有如下缺陷:随着用户数量的不断增加,应用场景的不断丰富,常规的KNN算法不能很好的应对新出现的应用。例如,对于典型的打车应用,车辆在运行过程中会产生一个车辆位置更新数据流。同时,大量用户发起的打车请求会形成一个查询数据流。系统首先要对车辆位置信息进行实时更新,以确保查询结果的有效性,同时又需要实时响应所有用户的查询请求,以确保服务质量。对于这类应用场景,当KNN算法采用每次处理一个查询(onebyone)的方式时,大量用户需要排队以等待查询响应,用户的排队等待时间将严重影响服务质量。因此,已有的路网中移动对象查询算法不能很好地应对新出现的需求,需要找到新的移动对象查询方案,以满足大数据下位置服务的查询需求。
技术实现思路
本专利技术实施例的目的是提供一种路网中移动对象查询方法 ...
【技术保护点】
一种路网中移动对象查询方法,用于服务器端,其特征在于,所述路网中移动对象查询方法包括:获取移动对象更新数据和用户输入的查询数据;采用多核CPU,基于移动对象在路网中所在的节点对所获取的移动对象更新数据进行聚集索引以及基于查询数据在路网中所在的边来对所获取的查询数据进行聚集索引;以及将聚集索引后的数据放入GPU中进行基于最近邻KNN算法的计算,以获得查询结果。
【技术特征摘要】
1.一种路网中移动对象查询方法,用于服务器端,其特征在于,所述路网中移动对象查询方法包括:获取移动对象更新数据和用户输入的查询数据;采用多核CPU,基于移动对象在路网中所在的节点对所获取的移动对象更新数据进行聚集索引以及基于查询数据在路网中所在的边来对所获取的查询数据进行聚集索引;以及将聚集索引后的数据放入GPU中进行基于最近邻KNN算法的计算,以获得查询结果。2.根据权利要求1所述的路网中移动对象查询方法,其特征在于,所述获取移动对象更新数据和用户输入的查询数据包括:周期性采集移动对象更新数据,该移动对象更新数据包括移动对象识别号及移动对象坐标;实时接收用户输入的查询数据;以及采用缓存器缓存所述移动对象更新数据及所述查询数据,并按照需要使用的线程数划分所述缓存器中的数据,其中每个线程处理一块移动对象更新数据或查询数据。3.根据权利要求2所述的路网中的移动对象查询方法,其特征在于,采用快照的方式将所述移动对象更新数据和所述查询数据存储到所述缓存器中。4.根据权利要求1所述的路网中移动对象查询方法,其特征在于,基于移动对象在路网中所在的节点对所获取的移动对象更新数据进行聚集索引包括:计算移动对象与其所在路径中的两个端点处的节点的距离;将与端点处的节点距离不超过其路径长度一半的移动对象的移动对象更新数据聚集在该节点;以及将聚集完成的移动对象更新数据放入一个对象表结构中。5.根据权利要求1所...
【专利技术属性】
技术研发人员:薛忠斌,何宁,晋世仲,刘明洋,李艾宸,王长周,汤杰,
申请(专利权)人:中国神华能源股份有限公司,北京国华电力有限责任公司,神华国华北京电力研究院有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。