位置服务系统(LBS )的构建吕志平,赵冬青,徐爱民,石善斌(解放军信息工程大学测绘学院3S 工程研究中心,郑州450052)【摘 要】构建面向大众化的位置服务系统是城市信息化建设的重要内容。
本文提出了基于J2EE 平台的位置相关信息服务系统的完整框架,讨论了服务器端地理空间数据的融合技术、客户端地理空间数据的表达技术和定位信息的传输技术。
【关键词】卫星导航定位;位置服务系统;地理信息标识语言;可伸缩矢量图像;移动位置协议【中图分类号】P208 【文献标识码】A 【文章编号】1009-2307(2005)02-0092-03收稿日期:2004-08-181 引 言卫星导航定位已是深入人心的大众化技术。
随着无线互联网技术的不断发展,在需求和技术的双重驱动下,将互联网强大的应用服务能力扩展到移动终端上,为用户提供随时随地的、基于位置的信息服务是社会信息化发展的趋势。
卫星导航与无线互联技术、地理空间信息技术的结合,正在引领信息化社会的一场革命。
2 LBS 系统的概念在资源管理、社会经济活动、军事应用和人们生活中,有80%以上的信息属于具有空间位置特性的地理相关信息。
无线移动用户迫切想知道他当时所处环境的信息,比如:“我在哪儿?”,“我怎么到达目的地?”,“我要找的人现在何处?”等等,如何提供这类服务,是定位和移动服务技术面对的重要话题。
位置服务系统(Location Based Service ,LBS )正是在这一背景下产生的。
LBS 是建立在定位基础上的服务,其工作原理是:用户终端(如手机、PDA 、CarPC 等多种移动终端)采用卫星定位等手段获取用户位置,并实时地把这一位置信息通过移动通信网上传至服务器;服务器根据用户发出的服务请求做出响应,并把响应的服务信息(如地图、文本等)通过移动通信网发布至用户终端。
LBS 是卫星导航技术、GIS 技术和无线通信网络技术等相集成的产物,它实现了互联网与各类定位终端之间点对点、端对端的互动应用,它通过无线通信技术为用户提供基于位置的信息服务。
LBS 定义了未来地理空间信息(含定位信息)移动服务的蓝图,即当用户与现实世界的一个模型交互时,在不同时间、不同地点,这个模型会动态的向不同用户提供不同的信息服务。
在我国,车辆自主导航和监控技术的应用正在形成热潮,实际上车辆导航和监控将逐步被新兴的位置相关服务所替代。
因为从技术上看,LBS 是以Web 技术对车辆导航和监控技术的提升;从应用上看,通过LBS 可为各单元间的关系管理提供先进的技术支持。
3 位置相关信息服务系统的框架根据LBS 的设计原则,采用多层分布式网络应用模型,对应用逻辑按功能划分为不同的层。
网络模型的层次划分遵从以下原则:各层之间的功能划分明确和总体体系结构简单。
据此,将J2EE 平台下的LBS 系统划分为四层结构。
311 表示层表示层负责地理信息和属性数据的表达逻辑,以人机交互的方式接受用户请求和给用户提供GIS 功能,可作为数据收集终端。
由客户端和W AP 网关构成,客户端由W AP 浏览器和服务程序构成,可以在文本和地图页面之间自由切换,在文本页面通过表单的文本输入来获取用户请求,在地图页面可以通过菜单项来选择GIS 功能。
W AP 网关是连接无线域和WWW 的桥梁,主要功能是协议转换(把来自W AP 协议栈的请求转换为HTTP 协议栈的请求)和编码/解码(把W AP 内容转换为紧缩的编码格式)。
标记库制定JSP 中的标记。
移动终端按内存容量和电池电量可以分为三类:①程序逻辑型。
这种类型的终端内存容量较大,终端上装有特定的程序,有一定的程序处理能力,能操作本地数据,与服务器的数据交换最少。
②HT M L 浏览器型。
所有业务处理都在服务器端完成,终端与服务器端的数据交换量最大。
③GIS 浏览器型。
本质上讲,这种类型跟②是类似的,数据通信量比①要大。
这种类型进行了功能的优化:地图操作、输入顺序控制和简单的地图符号输入等。
客户端接入互联网有无线连接和有线连接两种方式。
考虑到LBS 系统的特点,无线连接是主要方式(本文讨论的客户端均指无线终端)。
这样在条件容许的情况下,用户可以很方便地进行上网方式的切换。
通过这种接入方式有线终端可以实现对无线终端的有效监控,从而满足友邻定位、监控等的需要。
例如:通过上网的电脑就可以实现对装有无线终端的汽车进行实时监控。
有线连接、无线连接的网络模型是相似的,不同的是无线连接是通过W AP 网关(W AP gateway )来实现的。
因此,可以认为LBS 系统的结构模式是基于client/gateway/server 模型的。
W AP 编程模型和WWW 编程模型是相似的。
表示层获取用户的请求后,经通信服务器中转给J2EE 服务器。
J2EE 服务器由W eb 服务器和地图应用服务器构成。
312 Web 层Web 层即Web 服务器,由Web 容器组成,产生表示逻辑,负责WWW 功能。
Web 容器由Java Servlet 和JSP (Java Server Page )提供交互式Web 页面来响应客户端的请求,并根据多用户并发访问机制的特点,启动相应的线程;把从业务层响应回的数据返回给表示层(客户端)。
Web 服务器如果采用JSP +Servlet 的方式,必须采用提供相应功能的服务器,如I BM Webs ohere 、Sun iPlanet 、第30卷第2期2005年4月 测绘科学Science of Surveying and Mapping V ol 130N o 12AprApache 服务器和T omcat +Apache 等Web 服务器。
313 业务层业务层负责处理逻辑,即GIS 应用服务器由E JB 容器、数据缓存Cache 和地图应用服务器构成。
其主要功能是:响应Web 层的请求,给Web 层返回所请求的空间数据;与数据层进行交互,通过JDBC 或是S Q LJ 连接到空间数据库,也可以通过Java 连接体系结构(JC A )来访问遗留系统,完成空间数据的获取、修改和增加;进行复杂的数学运算和事务处理,如路径规划、地理编码等等;数据缓冲处理和并发控制。
数据缓冲是由Cache 机制来实现的。
业务层是LBS 系统实现的核心。
E JB 规范定义了一个开发和部署分布式逻辑处理的框架,以简化企业级应用的开发,使其较容易地具备可伸缩性、可移植性、分布式事务处理、多用户和安全性等。
这是因为E JB 容器封装了核心和关键的GIS 计算及处理过程。
扩展新的GIS 服务功能时只需扩展E JB 组件即可。
E JB 容器利用Java 数据库连接工具(JDBC )来完成对空间数据库的访问。
JDBC 支持对异构数据库的访问,是很好的数据访问工具。
Web 服务器普遍使用多线程的方式处理客户端请求,而大部分地图引擎目前均不支持多线程,所以一般采用另外启动一个地图应用服务器的方式来解决这个问题。
国内外有很多GIS。
如Mapin fo 公司的MapX treme for Java ,是100%的纯Java 地图服务器软件,完全符合J2EE 规范。
地图应用服务器并不是业务层的必要部分。
314 数据层数据层负责数据的存储,由空间数据库、外部数据库、遗留信息系统等构成。
空间数据库可以采用文件形式也可以采用数据库形式,来对影像、矢量等空间数据进行管理。
外部数据主要是一些其他非空间数据库,它通过Java 的消息机制(JMS )实现与服务器端的松散耦合。
遗留信息系统是一些旧有的信息系统,E JB 通过JC A 来完成访问,这样能最大限度地保留现有的信息资源。
其主要功能:负责空间数据库和外部数据库的管理、维护和存储,根据请求的业务服务操作数据。
4 服务器端的地理空间数据融合数据融合是多源数据之间的无缝集成。
存在多种数据源是数据融合的主要原因。
LBS 的终端用户感兴趣的数据信息包括地理空间数据信息,如最短路径(路径信息)、友邻定位(位置信息)等,以及非空间数据信息,如统计分析、作战预案等。
LBS 用户需求的信息具有多源性,这就势必要求系统能够实现多源数据的融合,主要包括多源地理空间数据的融合和多种类型数据的融合。
从这点看,LBS 本质上是以位置信息为核心的多数据融合系统。
作为新一代网络载体,X M L (可扩展标识语言)正在成为当前网络空间中信息表达方面的主流技术。
通过X M L 来表达信息、传递信息,不仅跨越了平台(X M L 是基于文本的,具有天然的平台无关性),还跨越了空间(X M L 的应用范围随着Internet 的发展扩展到了无线领域),更跨越了设备(X M L 数据内容与数据表现的分离可以成为不同终端之间交换信息的载体)。
正是因为这种语言的产生,使得互操作的实现有了很大的可能性与现实性。
地理信息标识语言(G M L )作为X M L 在地理信息领域的应用,提供了对地理信息的规范化、结构化的描述,是数据转换和空间数据互操作的有力工具。
把G M L 作为地理空间数据的实时传输协议,能有效地实现LBS 平台中地理空间数据的互操作性。
图1 基于G M L 的空间数据融合模型G M L 不仅仅是传统GIS 数据的X M L 格式化,更是一种开放的空间数据融合框架。
把各种异构空间数据统一为G M L 数据进行管理,并提供G M L 数据源I/O 接口,这样能有效的实现空间数据融合。
图1描述了基于G M L 数据融合的基本思路。
从图中可以看出,基于G M L 的空间数据融合模型可以分为三层:输入层、融合层、输出层。
融合层对输入层提供输入接口,输入的是多源空间数据;对输出层提供输出接口,输入的是单一格式的G M L 数据源。
5 客户端的地理空间数据表达栅格图像是目前无线网络传输的主要格式。
这是因为到目前为止并没有标准的矢量图形格式可以参考,或者没有浏览器的支持。
M obile S VG 的出现从根本上改观了这一现状。
可缩放矢量图像(S VG )是互联网联盟(W3C )的正式推荐标准,它是X M L 在二维矢量图像表达方面的应用。
M obile S VG 含有“智能性”,如动画、图层、半透明对象、画中画、复杂图形和字体效果等。
这些特性给无线网络传输带来了新的生机。
G M L 描述了空间信息的数据内容,而没有描述空间信息的可视化形式。
G M L 数据的可视化有两种策略:①G M L Draw Display ,直接操作G M L 数据进行分析并显示。
②G M L T rans form S VG,VM L Draw Display ,把G M L 数据转换成相应的图形格式的数据,例如S VG,VM L 及X 3D 。
然后由已经存在的支持这几种图形格式的软件进行显示。