【技术实现步骤摘要】
基于分层预计算的图数据中最短路径的查询方法和装置
[0001]本说明书涉及计算机
,尤其涉及一种基于分层预计算的图数据中最短路径的查询方法和装置
。
技术介绍
[0002]目前,随着计算机技术的发展和业务融合的需要,图结构由于其可用于刻画现实世界中各种实体之间复杂关系的特点,被广泛应用于社交网络
、
计算机网络
、
语义网络
、
公路网络等多种网络结构中
。
而在使用图结构来抽象具体应用问题时,计算顶点间的最短路径成为了图数据的基本运算
。
[0003]一种常见的查询方式,是预先针对图结构中的每个节点,计算并存储该图结构中其他节点与该节点之间的最短路径,并在需要进行查询时,确定待查询节点对应的节点标识,并根据节点标识确定待查询节点,进而根据预先存储的待查询节点,确定最短路径
。
[0004]但是,在图结构所包含的节点的数量过大时,需要存储的最短路径的数量过于庞大,所需的计算资源也较多,可能会造成查询设备没有存储资源来存储相应数据的情况出现,进而导致无法查询
。
[0005]基于此,本说明书提供一种基于分层预计算的超大网络中最短路径的查询方法和装置
。
技术实现思路
[0006]本说明书提供一种基于分层预计算的图数据中最短路径的查询方法和装置,以部分的解决现有技术存在的上述问题
。
[0007]本说明书采用下述技术方案:本说明书提供一种分层预计算的图数据中 ...
【技术保护点】
【技术特征摘要】
1.
一种分层预计算的图数据中的最短路径的查询方法,其特征在于,所述方法包括:接收目标图数据的查询请求,并确定所述查询请求对应的起始节点和目标节点;确定所述目标图数据对应的生成图数据,所述生成图数据中包含多层生成图,针对每层生成图,该生成图包含地标节点和普通节点,下一层生成图根据该层生成图中的普通节点构建;针对所述生成图数据中的每层生成图,根据该层生成图中各普通节点和各地标节点之间的最短路径
、
所述起始节点的位置和所述目标节点的位置,确定所述起始节点和所述目标节点在该层生成图中的最短路径,作为该层生成图中的目标路径;根据所述查询请求,返回各目标路径
。2.
如权利要求1所述的方法,其特征在于,所述方法应用于服务器,针对每层生成图,所述服务器中存储有该层生成图中各普通节点和该层生成图中各地标节点之间分别对应的最短路径;根据该层生成图中各普通节点和各地标节点之间的最短路径
、
所述起始节点的位置和所述目标节点的位置,确定所述起始节点和所述目标节点在该层生成图中的最短路径,作为该层生成图中的目标路径,具体包括:根据该层生成图中各普通节点和各地标节点之间的最短路径
、
所述起始节点的位置和所述目标节点的位置,确定指定数量的特定路径,所述特定路径为该层生成图中以所述起始节点为起点
、
以所述目标节点为终点的路径;确定各特定路径分别对应的路径长度,并根据各路径长度,从各特定路径中确定路径长度最短的特定路径,作为该层生成图中的目标路径
。3.
如权利要求2所述的方法,其特征在于,所述方法还包括:将该层生成图中的目标路径作为候选路径,并确定所述候选路径对应的候选长度;根据所述候选长度,判断是否存在以所述起始节点为起点
、
以所述目标节点为终点且路径长度小于所述候选长度的指定路径;若是,确定所述指定路径为目标路径;若否,确定所述候选路径为目标路径
。4.
如权利要求1所述的方法,其特征在于,在确定各层生成图中的目标路径前,所述方法还包括:确定待生成的生成图数据包含的生成图的层数,并确定各层生成图分别对应的地标节点的数量;将所述目标图数据中包含的各节点,作为初始生成图包含的全量节点,构建所述初始生成图,并根据所述初始生成图中对应的地标节点的数量,从所述初始生成图包含的全量节点中,确定各地标节点,并所述全量节点中将除各地标节点外的节点,作为各普通节点;将所述初始生成图中的各普通节点,作为中间生成图的全量节点,构建所述中间生成图,...
【专利技术属性】
技术研发人员:王乐乐,王永恒,李炳强,罗实,巫英才,
申请(专利权)人:之江实验室,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。