CN110399438A - 一种gis点位信息查询方法及装置 - Google Patents

一种gis点位信息查询方法及装置 Download PDF

Info

Publication number
CN110399438A
CN110399438A CN201810372790.4A CN201810372790A CN110399438A CN 110399438 A CN110399438 A CN 110399438A CN 201810372790 A CN201810372790 A CN 201810372790A CN 110399438 A CN110399438 A CN 110399438A
Authority
CN
China
Prior art keywords
inquiry
point information
rank
city
province
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.)
Granted
Application number
CN201810372790.4A
Other languages
English (en)
Other versions
CN110399438B (zh
Inventor
张洋
庾少华
亓娜
王艳辉
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.)
Beijing Visionvera International Information Technology Co Ltd
Original Assignee
Beijing Visionvera International Information Technology Co Ltd
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 Beijing Visionvera International Information Technology Co Ltd filed Critical Beijing Visionvera International Information Technology Co Ltd
Priority to CN201810372790.4A priority Critical patent/CN110399438B/zh
Publication of CN110399438A publication Critical patent/CN110399438A/zh
Application granted granted Critical
Publication of CN110399438B publication Critical patent/CN110399438B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种GIS点位信息查询方法及装置,其中所述方法应用于视联网中,包括:接收前端发送的点位信息查询请求,其中,所述查询请求中携带有查询级别和查询对象;依据所述查询级别以及查询对象生成查询关键词;判断Redis中是否存在与所述查询关键词匹配的点位信息;若存在,从所述Redis中查询所述查询关键词匹配的目标点位信息;将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示。本发明实施例提供的GIS点位信息查询方法,能够极大缩短查询统计点位信息所耗时长,从而缩短首页加载统计信息的响应时间。

Description

一种GIS点位信息查询方法及装置
技术领域
本发明涉及视联网技术领域,特别是涉及一种GIS点位信息查询方法及装置。
背景技术
视联网GIS(Geographic Information System,地理信息系统)天眼平台在全国各省市布局有点位,每个点位上设置物理设备,每一个点位对应有点位信息。各点位均有其所属的机构标识,根据机构标识,按查询条件可统计各省市区的点位信息,并按视频通讯,视频监控,移动终端分类统计数量,首页加载需要一次得到全国各省的统计信息。
全国34各省,全国300多个的市区,接口测算时间每查一条市区点位信息,在查询每条市区点位信息时,需要将查询请求依次经控制层、服务层、数据层传递至数据库查询点位信息,查询得到的点位信息再原路逐层返回,在Linux服务器下耗时500ms,Windows服务器下耗时1000ms。那么,统计完全国各省市的点位信息大约需要150s-300s,点位信息统计耗时长,影响首页加载统计信息的响应时间。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种GIS点位信息查询方法及装置。
为了解决上述问题,本发明实施例公开了一种GIS点位信息查询方法,其中所述方法应用于视联网中,包括:接收前端发送的点位信息查询请求,其中,所述查询请求中携带有查询级别和查询对象;所述查询级别包括:省查询级别、市查询级别;依据所述查询级别以及查询对象生成查询关键词;判断Redis中是否存在与所述查询关键词匹配的点位信息;其中,所述Redis中缓存有各查询级别对应的点位信息;若存在,从所述Redis中查询所述查询关键词匹配的目标点位信息;将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示。
优选地,所述方法还包括:按照预设时间间隔,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中;或者,当检测到手动触发的点位信息缓存指令时,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中。
优选地,所述从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中的步骤,包括:确定待查询的各查询级别;其中,查询级别包括:省查询级别、市查询级别;确定省查询级别对应的第一级别标识;遍历全国各省机构标识;分别提取各省机构标识的前两位字符作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成第一查询关键词;依据拼接成的第一查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与第一查询关键词对应缓存至所述Redis中;确定市查询级别对应的第二级别标识;遍历全国各市机构标识;分别提取各市机构标识的前四位字符作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成第二查询关键词;依据拼接成的第二查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与所述第二查询关键词对应缓存至所述Redis中。
优选地,所述依据所述查询级别和查询对象生成查询关键词的步骤,包括:当所述查询级别为省时,确定省查询级别对应的第一级别标识;确定查询对象对应的各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成查询关键词;当所述查询级别为市时,确定省查询级别对应的第二级别标识;确定查询对象对应的各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成查询关键词。
优选地,所述将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示的步骤,包括:将所述目标点位信息转换为JSON格式的字符串,返回至所述前端,以使所述前端对接收到的所述JSON格式的字符串进行渲染显示。
为了解决上述问题,本发明实施例还公开了一种GIS点位信息查询装置,其中所述装置应用于视联网中,所述装置包括:接收模块,用于接收前端发送的点位信息查询请求,其中,所述查询请求中携带有查询级别和查询对象;所述查询级别包括:省查询级别、市查询级别;关键词生成模块,用于依据所述查询级别和查询对象生成查询关键词;判断模块,用于判断Redis中是否存在与所述查询关键词匹配的点位信息;其中,所述Redis中缓存有各查询级别对应的点位信息;查询模块,用于若存在,从所述Redis中查询所述查询关键词匹配的目标点位信息;返回模块,用于将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示。
优选地,所述装置还包括:第一缓存模块,用于按照预设时间间隔,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中;或者,第二缓存模块,用于当检测到手动触发的点位信息缓存指令时,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中。
优选地,所述第一缓存模块、第二缓存模块从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中时:确定待查询的各查询级别;其中,查询级别包括:省查询级别、市查询级别;确定省查询级别对应的第一级别标识;遍历全国各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成第一查询关键词;依据拼接成的第一查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与第一查询关键词对应缓存至所述Redis中;确定市查询级别对应的第二级别标识;遍历全国各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成第二查询关键词;依据拼接成的第二查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与所述第二查询关键词对应缓存至所述Redis中。
优选地,所述关键词生成模块包括:第一生成子模块,用于当所述查询级别为省时,确定省查询级别对应的第一级别标识;确定查询对象对应的各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成查询关键词;第二生成子模块,用于当所述查询级别为市时,确定省查询级别对应的第二级别标识;确定查询对象对应的各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成查询关键词。
优选地,所述返回模块具体用于:将所述目标点位信息转换为JSON格式的字符串,返回至所述前端,以使所述前端对接收到的所述JSON格式的字符串进行渲染显示。
本发明实施例提供的GIS点位信息查询方案,后端在Redis中预先缓存各查询级别对应的点位信息,当接收到前端的点位信息查询请求时,从Redis中直接查询所请求查询级别的点位信息返回至前端即可,无需逐层传递请求后到数据库中查询点位信息,能够极大缩短查询统计点位信息所耗时长,从而缩短首页加载统计信息的响应时间。
附图说明
图1是本发明的一种视联网的组网示意图;
图2是本发明的一种节点服务器的硬件结构示意图;
图3是本发明的一种接入交换机的硬件结构示意图;
图4是本发明的一种以太网协转网关的硬件结构示意图;
图5是根据本发明实施例一的一种GIS点位信息查询方法的步骤流程图;
图6是根据本发明实施例二的一种GIS点位信息查询方法的步骤流程图;
图7是根据本发明实施例三的一种GIS点位信息查询装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
视联网是网络发展的重要里程碑,是一个实时网络,能够实现高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面。
视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、VOD点播、电视邮件、个性录制(PVR)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。
为使本领域技术人员更好地理解本发明实施例,以下对视联网进行介绍:
视联网所应用的部分技术如下所述:
网络技术(Network Technology)
视联网的网络技术创新改良了传统以太网(Ethernet),以面对网络上潜在的巨大视频流量。不同于单纯的网络分组包交换(Packet Switching)或网络电路交换(CircuitSwitching),视联网技术采用Packet Switching满足Streaming需求。视联网技术具备分组交换的灵活、简单和低价,同时具备电路交换的品质和安全保证,实现了全网交换式虚拟电路,以及数据格式的无缝连接。
交换技术(Switching Technology)
视联网采用以太网的异步和包交换两个优点,在全兼容的前提下消除了以太网缺陷,具备全网端到端无缝连接,直通用户终端,直接承载IP数据包。用户数据在全网范围内不需任何格式转换。视联网是以太网的更高级形态,是一个实时交换平台,能够实现目前互联网无法实现的全网大规模高清视频实时传输,将众多网络视频应用推向高清化、统一化。
服务器技术(Server Technology)
视联网和统一视频平台上的服务器技术不同于传统意义上的服务器,它的流媒体传输是建立在面向连接的基础上,其数据处理能力与流量、通讯时间无关,单个网络层就能够包含信令及数据传输。对于语音和视频业务来说,视联网和统一视频平台流媒体处理的复杂度比数据处理简单许多,效率比传统服务器大大提高了百倍以上。
储存器技术(Storage Technology)
统一视频平台的超高速储存器技术为了适应超大容量和超大流量的媒体内容而采用了最先进的实时操作系统,将服务器指令中的节目信息映射到具体的硬盘空间,媒体内容不再经过服务器,瞬间直接送达到用户终端,用户等待一般时间小于0.2秒。最优化的扇区分布大大减少了硬盘磁头寻道的机械运动,资源消耗仅占同等级IP互联网的20%,但产生大于传统硬盘阵列3倍的并发流量,综合效率提升10倍以上。
网络安全技术(Network Security Technology)
视联网的结构性设计通过每次服务单独许可制、设备与用户数据完全隔离等方式从结构上彻底根除了困扰互联网的网络安全问题,一般不需要杀毒程序、防火墙,杜绝了黑客与病毒的攻击,为用户提供结构性的无忧安全网络。
服务创新技术(Service Innovation Technology)
统一视频平台将业务与传输融合在一起,不论是单个用户、私网用户还是一个网络的总合,都不过是一次自动连接。用户终端、机顶盒或PC直接连到统一视频平台,获得丰富多彩的各种形态的多媒体视频服务。统一视频平台采用“菜谱式”配表模式来替代传统的复杂应用编程,可以使用非常少的代码即可实现复杂的应用,实现“无限量”的新业务创新。
视联网的组网如下所述:
视联网是一种集中控制的网络结构,该网络可以是树型网、星型网、环状网等等类型,但在此基础上网络中需要有集中控制节点来控制整个网络。
如图1所示,视联网分为接入网和城域网两部分。
接入网部分的设备主要可以分为3类:节点服务器,接入交换机,终端(包括各种机顶盒、编码板、存储器等)。节点服务器与接入交换机相连,接入交换机可以与多个终端相连,并可以连接以太网。
其中,节点服务器是接入网中起集中控制功能的节点,可控制接入交换机和终端。节点服务器可直接与接入交换机相连,也可以直接与终端相连。
类似的,城域网部分的设备也可以分为3类:城域服务器,节点交换机,节点服务器。城域服务器与节点交换机相连,节点交换机可以与多个节点服务器相连。
其中,节点服务器即为接入网部分的节点服务器,即节点服务器既属于接入网部分,又属于城域网部分。
城域服务器是城域网中起集中控制功能的节点,可控制节点交换机和节点服务器。城域服务器可直接连接节点交换机,也可直接连接节点服务器。
由此可见,整个视联网络是一种分层集中控制的网络结构,而节点服务器和城域服务器下控制的网络可以是树型、星型、环状等各种结构。
形象地称,接入网部分可以组成统一视频平台(虚线圈中部分),多个统一视频平台可以组成视联网;每个统一视频平台可以通过城域以及广域视联网互联互通。
视联网设备分类
1.1本发明实施例的视联网中的设备主要可以分为3类:服务器,交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。视联网整体上可以分为城域网(或者国家网、全球网等)和接入网。
1.2其中接入网部分的设备主要可以分为3类:节点服务器,接入交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。
各接入网设备的具体硬件结构为:
节点服务器:
如图2所示,主要包括网络接口模块201、交换引擎模块202、CPU模块203、磁盘阵列模块204;
其中,网络接口模块201,CPU模块203、磁盘阵列模块204进来的包均进入交换引擎模块202;交换引擎模块202对进来的包进行查地址表205的操作,从而获得包的导向信息;并根据包的导向信息把该包存入对应的包缓存器206的队列;如果包缓存器206的队列接近满,则丢弃;交换引擎模202轮询所有包缓存器队列,如果满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。磁盘阵列模块204主要实现对硬盘的控制,包括对硬盘的初始化、读写等操作;CPU模块203主要负责与接入交换机、终端(图中未示出)之间的协议处理,对地址表205(包括下行协议包地址表、上行协议包地址表、数据包地址表)的配置,以及,对磁盘阵列模块204的配置。
接入交换机:
如图3所示,主要包括网络接口模块(下行网络接口模块301、上行网络接口模块302)、交换引擎模块303和CPU模块304;
其中,下行网络接口模块301进来的包(上行数据)进入包检测模块305;包检测模块305检测包的目地地址(DA)、源地址(SA)、数据包类型及包长度是否符合要求,如果符合,则分配相应的流标识符(stream-id),并进入交换引擎模块303,否则丢弃;上行网络接口模块302进来的包(下行数据)进入交换引擎模块303;CPU模块204进来的数据包进入交换引擎模块303;交换引擎模块303对进来的包进行查地址表306的操作,从而获得包的导向信息;如果进入交换引擎模块303的包是下行网络接口往上行网络接口去的,则结合流标识符(stream-id)把该包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃;如果进入交换引擎模块303的包不是下行网络接口往上行网络接口去的,则根据包的导向信息,把该数据包存入对应的包缓存器307的队列;如果该包缓存器307的队列接近满,则丢弃。
交换引擎模块303轮询所有包缓存器队列,在本发明实施例中分两种情形:
如果该队列是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零;3)获得码率控制模块产生的令牌;
如果该队列不是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。
码率控制模块208是由CPU模块204来配置的,在可编程的间隔内对所有下行网络接口往上行网络接口去的包缓存器队列产生令牌,用以控制上行转发的码率。
CPU模块304主要负责与节点服务器之间的协议处理,对地址表306的配置,以及,对码率控制模块308的配置。
以太网协转网关
如图4所示,主要包括网络接口模块(下行网络接口模块401、上行网络接口模块402)、交换引擎模块403、CPU模块404、包检测模块405、码率控制模块408、地址表406、包缓存器407和MAC添加模块409、MAC删除模块410。
其中,下行网络接口模块401进来的数据包进入包检测模块405;包检测模块405检测数据包的以太网MAC DA、以太网MAC SA、以太网length or frame type、视联网目地地址DA、视联网源地址SA、视联网数据包类型及包长度是否符合要求,如果符合则分配相应的流标识符(stream-id);然后,由MAC删除模块410减去MAC DA、MAC SA、length or frame type(2byte),并进入相应的接收缓存,否则丢弃;
下行网络接口模块401检测该端口的发送缓存,如果有包则根据包的视联网目地地址DA获知对应的终端的以太网MAC DA,添加终端的以太网MAC DA、以太网协转网关的MACSA、以太网length or frame type,并发送。
以太网协转网关中其他模块的功能与接入交换机类似。
终端:
主要包括网络接口模块、业务处理模块和CPU模块;例如,机顶盒主要包括网络接口模块、视音频编解码引擎模块、CPU模块;编码板主要包括网络接口模块、视音频编码引擎模块、CPU模块;存储器主要包括网络接口模块、CPU模块和磁盘阵列模块。
1.3城域网部分的设备主要可以分为2类:节点服务器,节点交换机,城域服务器。其中,节点交换机主要包括网络接口模块、交换引擎模块和CPU模块;城域服务器主要包括网络接口模块、交换引擎模块和CPU模块构成。
2、视联网数据包定义
2.1接入网数据包定义
接入网的数据包主要包括以下几部分:目的地址(DA)、源地址(SA)、保留字节、payload(PDU)、CRC。
如下表所示,接入网的数据包主要包括以下几部分:
DA SA Reserved Payload CRC
其中:
目的地址(DA)由8个字节(byte)组成,第一个字节表示数据包的类型(例如各种协议包、组播数据包、单播数据包等),最多有256种可能,第二字节到第六字节为城域网地址,第七、第八字节为接入网地址;
源地址(SA)也是由8个字节(byte)组成,定义与目的地址(DA)相同;
保留字节由2个字节组成;
payload部分根据不同的数据报的类型有不同的长度,如果是各种协议包的话是64个字节,如果是单组播数据包话是32+1024=1056个字节,当然并不仅仅限于以上2种;
CRC有4个字节组成,其计算方法遵循标准的以太网CRC算法。
2.2城域网数据包定义
城域网的拓扑是图型,两个设备之间可能有2种、甚至2种以上的连接,即节点交换机和节点服务器、节点交换机和节点交换机、节点交换机和节点服务器之间都可能超过2种连接。但是,城域网设备的城域网地址却是唯一的,为了精确描述城域网设备之间的连接关系,在本发明实施例中引入参数:标签,来唯一描述一个城域网设备。
本说明书中标签的定义和MPLS(Multi-Protocol Label Switch,多协议标签交换)的标签的定义类似,假设设备A和设备B之间有两个连接,那么数据包从设备A到设备B就有2个标签,数据包从设备B到设备A也有2个标签。标签分入标签、出标签,假设数据包进入设备A的标签(入标签)是0x0000,这个数据包离开设备A时的标签(出标签)可能就变成了0x0001。城域网的入网流程是集中控制下的入网过程,也就意味着城域网的地址分配、标签分配都是由城域服务器主导的,节点交换机、节点服务器都是被动的执行而已,这一点与MPLS的标签分配是不同的,MPLS的标签分配是交换机、服务器互相协商的结果。
如下表所示,城域网的数据包主要包括以下几部分:
DA SA Reserved 标签 Payload CRC
即目的地址(DA)、源地址(SA)、保留字节(Reserved)、标签、payload(PDU)、CRC。其中,标签的格式可以参考如下定义:标签是32bit,其中高16bit保留,只用低16bit,它的位置是在数据包的保留字节和payload之间。
基于视联网的上述特性,提出了本发明实施例的应用于视联网中的GIS点位信息查询方法。
实施例一
参照图5,示出了本发明实施例一的一种GIS点位信息查询方法的步骤流程图,该方法可以应用于视联网中,具体可以包括如下步骤:
步骤501:接收前端发送的点位信息查询请求。
其中,查询请求中携带有查询级别和查询对象;查询级别包括:省查询级别、市查询级别。
省查询级别为以省为单位对天眼点位进行查询统计;市查询级别为以市为单元对天眼点位进行查询统计。若查询级别为省查询级别,查询对象可以为全国范围内的任一或者多个省,也可以为全国范围内的全部省。若查询级别为市查询级别,查询对象可以为全国范围内的任一或者多个市,也可以为全国范围内的全部市。
无论是某省或某市新增或者更换点位时,各查询级别对应的点位信息均将发生变化,相应地GIS天眼点位的统计数据将发生变化。
步骤502:依据查询级别以及查询对象生成查询关键词。
查询关键词即查询key,依据查询级别可确定从缓存中的哪个具体查询级别对应的点位信息中查询目标点位信息,通过查询对象可确定具体查询哪个查询对象的点位信息。
步骤503:判断Redis中是否存在与查询关键词匹配的点位信息。
其中,Redis中缓存有各查询级别对应的点位信息。Redis是一个开源内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。
本发明实施例中以查询级别包含省查询级别和市查询级别为例进行说明。本发明实施例中预先在Redis中缓存省查询级别的各点位的点位信息,以及市查询级别的各点位的点位信息,当接收到点位信息查询请求时,直接从Redis中查询对应点位信息即可。
需要说明的是,后端可以按照预设时间间隔定期进行各查询级别的点位信息缓存,也可以由用户手动控制点位信息缓存。在具体实现过程中,若Redis中缓存查询级别的各点位的点位信息时,则无法查询到与关键词匹配的目标点位信息。当无法查询到关键词匹配的目标点位信息时,将查询的关键词依次经控制层、服务层、数据层传输至数据库,在数据库中查询关键词匹配的目标点位信息返回。
步骤504:若存在,从Redis中查询该查询关键词匹配的目标点位信息。
步骤505:将目标点位信息返回至前端。
前端对接收到的目标点位信息进行渲染显示。
通过本发明实施例提供的GIS点位信息查询方法,接口返回所有的点位信息的时间消耗为40ms-50ms,大幅度跨越性的提高了响应数据的时间消耗。
本发明实施例提供的GIS点位信息查询方法,后端在Redis中预先缓存各查询级别对应的点位信息,当接收到前端的点位信息查询请求时,从Redis中直接查询所请求查询级别的点位信息返回至前端即可,无需逐层传递请求后到数据库中查询点位信息,能够极大缩短查询统计点位信息所耗时长,从而缩短首页加载统计信息的响应时间。
实施例二
参照图6,示出了本发明实施例二的一种GIS点位信息查询方法的步骤流程图,该方法可以应用于视联网中,具体可以包括如下步骤:
步骤601:接收前端发送的点位信息查询请求。
其中,查询请求中携带有查询级别和查询对象;查询级别可以包括:省查询级别、市查询级别。
步骤602:依据查询级别以及查询对象生成查询关键词。
当查询级别为省时,确定省查询级别对应的第一级别标识;确定查询对象对应的各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据第一级别标识和各省机构对应的查询字符串,拼接成查询关键词。
拼接成的查询关键词为Redis查询key。若查询对象为全国范围内的各省时,将各省机构标识的前两位字符,以及第一级别标识拼接成查询关键词。
当查询级别为市时,确定省查询级别对应的第二级别标识;确定查询对象对应的各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据第二级别标识和各市机构对应的查询字符串,拼接成查询关键词。
若查询对象为全国范围内的各市时,将各市机构标识的前四位字符,以及第二级别标识拼接成查询关键词。
步骤603:判断Redis中是否存在与该查询关键词匹配的点位信息;若存在,执行步骤604;若不存在,执行预设操作。
Redis中预先缓存有各查询级别对应的点位信息,在具体实现过程中,后端可按照预设时间间隔,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至Redis中;或者,当检测到手动触发的点位信息缓存指令时,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至Redis中。
缓存至Redis中的点位信息,便于前端发出点位信息查询请求时直接查询,提升查询效率,缩短查询时间。
一种优选地从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至Redis中的方式如下:
首先,确定待查询的各查询级别;
其中,查询级别可以包括:省查询级别、市查询级别。在具体实现过程中,查询级别并不限于上述所列举的两个级别,本领域技术人员还可以根据实际需求将查询级别设置为3、4或者5个等级别。
其次,确定省查询级别对应的第一级别标识;遍历全国各省机构标识;分别提取各省机构标识的前两位字符作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成第一查询关键词;依据拼接成的第一查询关键词从数据库中查找该查询级别对应的点位信息;将查找到的点位信息与第一查询关键词对应缓存至Redis中。
再次,确定市查询级别对应的第二级别标识;遍历全国各市机构标识;分别提取各市机构标识的前四位字符作为各市机构对应的查询字符串;依据第二级别标识和各市机构对应的查询字符串,拼接成第二查询关键词;依据拼接成的第二查询关键词从数据库中查找该查询级别对应的点位信息;将查找到的点位信息与第二查询关键词对应缓存至Redis中。
步骤604:若存在,从Redis中查询该查询关键词匹配的目标点位信息。
需要说明的是,在具体实现过程中若Redis中未缓存各查询级别的点位信息时,前端便发出了点位信息查询请求,则此时Redis中无法查询到该查询关键词匹配的目标点位信息,因此需要执行预设操作,查询点位信息。
预设操作可以设置为:逐层请求数据,再逐层返回查询结果。具体地,控制层依据点位信息查询请求生成查询关键词,将查询关键词依次经服务层、数据层传输至数据库,在数据库中查找查询关键词匹配的点位信息,然后再经数据层、服务层、控制层返回至前端,同时将查询得到的点位信息和查询关键词对应缓存至Redis中。优选地,从数据库中查找得到的是点位信息返回至前端前,将其转换为JSON格式的字符串后再返回至前端。
步骤605:将目标点位信息转换为JSON格式的字符串,返回至前端,以使前端对接收到的JSON格式的字符串进行渲染显示。
JSON(JavaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式。它基于ECMAScript(w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
将目标点位信息转换为JSON格式的字符串返回至前端,无需前端进行格式的转换,能够减轻前端的工作负载。本发明实施例提供的GIS点位信息查询方法,前端仅执行数据的渲染,底层后端实现业务逻辑的处理和点位信息的封装。
本发明实施例提供的GIS点位信息查询方法,后端在Redis中预先缓存各查询级别对应的点位信息,当接收到前端的点位信息查询请求时,从Redis中直接查询所请求查询级别的点位信息返回至前端即可,无需逐层传递请求后到数据库中查询点位信息,能够极大缩短查询统计点位信息所耗时长,从而缩短首页加载统计信息的响应时间。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
实施例三
参照图7,示出了本发明的一种GIS点位信息查询装置的结构框图,该系统可以应用于视联网中,具体可以包括如下模块:
接收模块701,用于接收前端发送的点位信息查询请求,其中,所述查询请求中携带有查询级别和查询对象;其中,查询级别包括:省查询级别、市查询级别;关键词生成模块702,用于依据所述查询级别和查询对象生成查询关键词;判断模块703,用于判断Redis中是否存在与所述查询关键词匹配的点位信息;其中,所述Redis中缓存有各查询级别对应的点位信息;查询模块704,用于若存在,从所述Redis中查询所述查询关键词匹配的目标点位信息;返回模块705,用于将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示。
优选地,所述装置还包括:第一缓存模块706,用于按照预设时间间隔,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中;或者,第二缓存模块707,用于当检测到手动触发的点位信息缓存指令时,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中。
优选地,所述第一缓存模块、第二缓存模块从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中时:确定待查询的各查询级别;其中,查询级别包括:省查询级别、市查询级别;确定省查询级别对应的第一级别标识;遍历全国各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成第一查询关键词;依据拼接成的第一查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与第一查询关键词对应缓存至所述Redis中;确定市查询级别对应的第二级别标识;遍历全国各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成第二查询关键词;依据拼接成的第二查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与所述第二查询关键词对应缓存至所述Redis中。
优选地,所述关键词生成模块702可以包括:第一生成子模块7021,用于当所述查询级别为省时,确定省查询级别对应的第一级别标识;确定查询对象对应的各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成查询关键词;第二生成子模块7022,用于当所述查询级别为市时,确定省查询级别对应的第二级别标识;确定查询对象对应的各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成查询关键词。
优选地,所述返回模块705具体用于:将所述目标点位信息转换为JSON格式的字符串,返回至所述前端,以使所述前端对接收到的所述JSON格式的字符串进行渲染显示。
本发明实施例提供的GIS点位信息查询装置,后端在Redis中预先缓存各查询级别对应的点位信息,当接收到前端的点位信息查询请求时,从Redis中直接查询所请求查询级别的点位信息返回至前端即可,无需逐层传递请求后到数据库中查询点位信息,能够极大缩短查询统计点位信息所耗时长,从而缩短首页加载统计信息的响应时间。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种GIS点位信息查询方法及装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种GIS点位信息查询方法,其特征在于,所述方法应用于视联网中,包括:
接收前端发送的点位信息查询请求,其中,所述查询请求中携带有查询级别和查询对象;所述查询级别包括:省查询级别、市查询级别;
依据所述查询级别以及查询对象生成查询关键词;
判断Redis中是否存在与所述查询关键词匹配的点位信息;其中,所述Redis中缓存有各查询级别对应的点位信息;
若存在,从所述Redis中查询所述查询关键词匹配的目标点位信息;
将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
按照预设时间间隔,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中;
或者,
当检测到手动触发的点位信息缓存指令时,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中。
3.根据权利要求2所述的方法,其特征在于,所述从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中的步骤,包括:
确定待查询的各查询级别;其中,查询级别包括:省查询级别、市查询级别;
确定省查询级别对应的第一级别标识;遍历全国各省机构标识;分别提取各省机构标识的前两位字符作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成第一查询关键词;依据拼接成的第一查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与第一查询关键词对应缓存至所述Redis中;
确定市查询级别对应的第二级别标识;遍历全国各市机构标识;分别提取各市机构标识的前四位字符作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成第二查询关键词;依据拼接成的第二查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与所述第二查询关键词对应缓存至所述Redis中。
4.根据权利要求1所述的方法,其特征在于,所述依据所述查询级别和查询对象生成查询关键词的步骤,包括:
当所述查询级别为省时,确定省查询级别对应的第一级别标识;确定查询对象对应的各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成查询关键词;
当所述查询级别为市时,确定省查询级别对应的第二级别标识;确定查询对象对应的各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成查询关键词。
5.根据权利要求1所述的方法,其特征在于,所述将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示的步骤,包括:
将所述目标点位信息转换为JSON格式的字符串,返回至所述前端,以使所述前端对接收到的所述JSON格式的字符串进行渲染显示。
6.一种GIS点位信息查询装置,其特征在于,所述装置应用于视联网中,所述装置包括:
接收模块,用于接收前端发送的点位信息查询请求,其中,所述查询请求中携带有查询级别和查询对象;所述查询级别包括:省查询级别、市查询级别;
关键词生成模块,用于依据所述查询级别和查询对象生成查询关键词;
判断模块,用于判断Redis中是否存在与所述查询关键词匹配的点位信息;其中,所述Redis中缓存有各查询级别对应的点位信息;
查询模块,用于若存在,从所述Redis中查询所述查询关键词匹配的目标点位信息;
返回模块,用于将所述目标点位信息返回至所述前端,以使所述前端对接收到的所述目标点位信息进行渲染显示。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第一缓存模块,用于按照预设时间间隔,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中;
或者,
第二缓存模块,用于当检测到手动触发的点位信息缓存指令时,从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中。
8.根据权利要求7所述的装置,其特征在于,所述第一缓存模块、第二缓存模块从数据库中查询各查询级别对应的点位信息;将查询得到各查询级别对应的点位信息缓存至所述Redis中时:
确定待查询的各查询级别;其中,查询级别包括:省查询级别、市查询级别;
确定省查询级别对应的第一级别标识;遍历全国各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成第一查询关键词;依据拼接成的第一查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与第一查询关键词对应缓存至所述Redis中;
确定市查询级别对应的第二级别标识;遍历全国各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成第二查询关键词;依据拼接成的第二查询关键词从数据库中查找所述查询级别对应的点位信息;将查找到的点位信息与所述第二查询关键词对应缓存至所述Redis中。
9.根据权利要求6所述的装置,其特征在于,所述关键词生成模块包括:
第一生成子模块,用于当所述查询级别为省时,确定省查询级别对应的第一级别标识;确定查询对象对应的各省机构标识;分别提取各省机构标识的前两位字符,作为各省机构对应的查询字符串;依据所述第一级别标识和各省机构对应的查询字符串,拼接成查询关键词;
第二生成子模块,用于当所述查询级别为市时,确定省查询级别对应的第二级别标识;确定查询对象对应的各市机构标识;分别提取各市机构标识的前四位字符,作为各市机构对应的查询字符串;依据所述第二级别标识和各市机构对应的查询字符串,拼接成查询关键词。
10.根据权利要求6所述的装置,其特征在于,所述返回模块具体用于:
将所述目标点位信息转换为JSON格式的字符串,返回至所述前端,以使所述前端对接收到的所述JSON格式的字符串进行渲染显示。
CN201810372790.4A 2018-04-24 2018-04-24 一种gis点位信息查询方法及装置 Active CN110399438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810372790.4A CN110399438B (zh) 2018-04-24 2018-04-24 一种gis点位信息查询方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810372790.4A CN110399438B (zh) 2018-04-24 2018-04-24 一种gis点位信息查询方法及装置

Publications (2)

Publication Number Publication Date
CN110399438A true CN110399438A (zh) 2019-11-01
CN110399438B CN110399438B (zh) 2022-04-05

Family

ID=68320323

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810372790.4A Active CN110399438B (zh) 2018-04-24 2018-04-24 一种gis点位信息查询方法及装置

Country Status (1)

Country Link
CN (1) CN110399438B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026821A (zh) * 2019-11-11 2020-04-17 视联动力信息技术股份有限公司 点位信息查询方法、装置、电子设备及可读存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102930054A (zh) * 2012-11-19 2013-02-13 北京奇虎科技有限公司 数据搜索方法及系统
CN103023997A (zh) * 2012-11-29 2013-04-03 江苏鸿信系统集成有限公司 基于网格缓存技术的海量地理信息名址转换方法及其装置
US20160093208A1 (en) * 2014-09-29 2016-03-31 International Business Machines Corporation Storing trajectory
CN105589861A (zh) * 2014-10-22 2016-05-18 杭州海康威视系统技术有限公司 一种在地图数据中快速定位的方法
US9501585B1 (en) * 2013-06-13 2016-11-22 DataRPM Corporation Methods and system for providing real-time business intelligence using search-based analytics engine
CN106156061A (zh) * 2015-03-30 2016-11-23 北大方正集团有限公司 一种提高数据查询效率的方法及装置
CN106294573A (zh) * 2016-07-28 2017-01-04 Tcl集团股份有限公司 一种海量数据实时查询方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102930054A (zh) * 2012-11-19 2013-02-13 北京奇虎科技有限公司 数据搜索方法及系统
CN103023997A (zh) * 2012-11-29 2013-04-03 江苏鸿信系统集成有限公司 基于网格缓存技术的海量地理信息名址转换方法及其装置
US9501585B1 (en) * 2013-06-13 2016-11-22 DataRPM Corporation Methods and system for providing real-time business intelligence using search-based analytics engine
US20160093208A1 (en) * 2014-09-29 2016-03-31 International Business Machines Corporation Storing trajectory
CN105589861A (zh) * 2014-10-22 2016-05-18 杭州海康威视系统技术有限公司 一种在地图数据中快速定位的方法
CN106156061A (zh) * 2015-03-30 2016-11-23 北大方正集团有限公司 一种提高数据查询效率的方法及装置
CN106294573A (zh) * 2016-07-28 2017-01-04 Tcl集团股份有限公司 一种海量数据实时查询方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
魏林风: "基于Redis的实时WebGIS系统设计与实现", 《通信设计与应用》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111026821A (zh) * 2019-11-11 2020-04-17 视联动力信息技术股份有限公司 点位信息查询方法、装置、电子设备及可读存储介质

Also Published As

Publication number Publication date
CN110399438B (zh) 2022-04-05

Similar Documents

Publication Publication Date Title
CN108965912B (zh) 一种视频数据处理的方法、客户端以及服务器
CN108965224A (zh) 一种视频点播的方法和装置
CN110121059A (zh) 监控视频处理方法、装置及存储介质
CN109743595A (zh) 终端数据同步方法和装置
CN108965223A (zh) 一种基于视联网的网页处理方法、代理服务器及视联网终端
CN109996086A (zh) 一种视联网业务状态查询方法及装置
CN109617956A (zh) 一种数据处理方法和装置
CN109634988A (zh) 一种监控轮询方法和装置
CN109286826A (zh) 信息显示方法和装置
CN109145249A (zh) 数据渲染方法和装置
CN110225083A (zh) 基于视联网的数据推送方法和装置
CN108307212A (zh) 一种文件点播方法和装置
CN108073665B (zh) 一种视联网页面和html页面的切换方法和装置
CN109803119A (zh) 一种监控信息传输的方法和装置
CN109151061A (zh) 一种数据存储方法和装置
CN110505107A (zh) 一种监控方法和视联网管理系统
CN110134892A (zh) 一种监控资源列表的加载方法和系统
CN109922302A (zh) 会议预约信息获取方法、系统、设备和机器可读介质
CN110430168A (zh) 一种数据压缩的方法和装置
CN109257629A (zh) 一种数据传输系统
CN110109823A (zh) 一种应用程序修复方法和装置
CN110263030A (zh) 基于视联网的数据获取方法和装置
CN110012316A (zh) 一种视联网业务的处理方法及装置
CN109525635A (zh) 一种内存利用率的获取方法和系统
CN110399438A (zh) 一种gis点位信息查询方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100000 Dongcheng District, Beijing, Qinglong Hutong 1, 1103 house of Ge Hua building.

Applicant after: VISIONVERA INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 100000 Beijing Dongcheng District Qinglong Hutong 1 Song Hua Building A1103-1113

Applicant before: BEIJING VISIONVERA INTERNATIONAL INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant