文章信息
- 颜平辉, 张旭, 陈艳, 雷震宇, 刘燕.
- Yan Pinghui, Zhang Xu, Cheng Yan, Lei Zhenyu, Liu Yan.
- 数字林业数据管理平台研究
- Study on Digital Forestry Data Management Platform
- 林业科学, 2006, 42(增刊1): 140-145.
- Scientia Silvae Sinicae, 2006, 42(增刊1): 140-145.
-
文章历史
- 收稿日期:2005-06-24
-
作者相关文章
进入21世纪以来, 林业信息化水平大力提升。在网络基础设施方面, 国家林业局于2003年通过全国林业视频系统的建设, 建立了一套于各省区和直辖市林业厅(局)的国家林业局专用网络(钟飞等, 2005)。在行业软件和数据存储方面, 从国家林业局到各省、市、县林业厅(局)相继成立数据中心和相关机构, 开发林业信息管理系统进行数据存储和业务处理; 形成不同层次和级别的管理系统, 一定程度上满足了部门的管理需求, 促进了林业信息化建设。
随着生产、管理和科研对数据规模、精度和实效性需求的不断增加, 信息孤岛的问题日益突出。尽管物理网络已经连通, 但在生产管理上, 不同层次系统不能互联, 国家林业局的资源管理系统不能访问省级系统, 更无法下钻到市(县)访问最新的小班数据; 在科学研究方面, 数据不能横向访问, 2个地区都有类似的数据, 却无法完成自动融合, 进行比较和分析。
林业行业系统作为一个分布式系统, 其异构性导致了信息孤岛的出现。一个分布式系统的异构性可划分为3个层次(达飞鹏等, 2004)。最底层为平台层, 如不同的计算机、操作系统或通信协议, 同时各系统也会采用不同的编程语言和编译环境; 中间层是系统层, 如不同的数据库管理系统, 甚至是文件系统, 它们基于不同的数据模型, 提供不同的语言。由于不同的应用系统有不同的业务逻辑、不同的设计方法, 因此各应用系统间软件结构以及它们的数据表示都会有很大的不同。最顶层是数据语义层, 由于不同的数据库是独立设计的, 不同的数据语义之间存在很大的差异。不同的系统采用不同的方式去描述他们的数据, 相同的信息可以用不同的模式, 即使在同一系统中相同的信息也可以用不同的数据模式表示。
因此, 克服信息孤岛问题的关键是消解系统不同层次的异构性。COM/DCOM、CORBA和EJB是分布式技术中比较成熟且已经大量使用的3种技术(邓灵等, 2004), 它们从各个层次致力于系统异构性的消解。COM/DCOM在3种技术中稳定性较高而且实现较为简单, 是在Windows操作系统下的最佳选择, 但在平台层的异构性并没有得到很好解决。而CORBA主要适用于多操作系统下的分布式系统构建, 其实现较为复杂。EJB则是分布式企业应用系统的首选。这三者的不足之处是它们对其他分布式技术的兼容性比较差, 通讯主要采用Bridge技术, 只要系统改动了就需要重新编译代码; CORBA和EJB虽然能采用IIOP协议进行通讯, 但是由于CORBA的实现要依赖于ORB中间件软件, 而各个中间件厂商对CORBA标准的具体实现也不完全相同, 从而使得不同的CORBA系统之间以及CORBA与EJB之间的通讯问题也较难解决, 无法形成统一的规范。直到XML和Web Service技术的兴起才较好地解决了这一问题。
在林业上, 为避开分布数据异构性的问题, 多采用数据中心集中存储数据的方式。由于数据中心与数据生产者分离, 数据中心无法感知数据的实时变化, 导致数据不一致, 更新和维护困难。Web Service技术只在一些特定问题有局部范围应用, 如森林防火报警系统中的Web服务(肖锦辉等, 2005)。把林业行业作为一个整体, 以实时共享林业全行业范围内分布异构数据的系统目前还没有。
基于林业行业分布式应用的巨大需求和当前数据集中访问的缺陷, 在数字林业公共平台的框架(张旭, 2002)下, 结合省级数字林业平台(刘新胜等, 2002; 方陆明等, 2002; 钟凯文等, 2004; 苗良等, 2005), 本文提出了面向全林业行业以服务为架构的数字林业数据管理平台(digital forestry data management platform, DFDMP), 它是数字林业公共平台(图 1)的网络核心组件之一。DFDMP基于当前比较成熟的中间件技术(郑娅峰等, 2005; 滑楠等, 2005; 温永宁等, 2005), 对林业生产、管理、科学研究领域的各类数据资源以及相关行业的数据资源进行整合, 屏蔽数据源的异构性。它向应用程序和用户提供数据管理服务、数据交换服务、数据传输服务、数据提供服务和全局数据视图, 形成了一套完整的数据支撑平台。平台不仅向林业行业的各种应用系统提供透明、安全、可靠的分布异构数据统一访问, 还向其他行业的授权用户提供数据服务。
数字林业数据管理平台主要实现4方面的目标:基于用户的统一数据视图、分布异构数据统一访问、分布异构数据统一管理和数据的安全访问。平台将向用户服提供全国林业行业统一数据目录, 所有的数据好像来自同一节点, 实际数据却来自互联网上不同数据节点; 在该平台下, 用户看到一幅完整的地图, 其不同的图层数据可能来自不同的数据节点, 这对用户是透明的; 同一图层, 不同的区域数据来自不同的数据节点, 这对用户也是透明的。平台用几个简单的服务接口实现对整个系统范围内的数据进行访问, 而不是用特定的服务访问特定数据节点上的数据。具有权限的管理员能够对所有节点的分布数据进行监控和管理, 管理远程节点数据就像管理本地数据一样。通过认证、授权、审计、数据加密等安全措施的综合使用, 保证了网络环境下数据的安全性。
2 数字林业数据管理平台体系结构数字林业数据管理平台体系结构(图 2)由6部分组成:数据存储层、服务层、汇聚层、元数据、安全、门户。数据存储层主要存储各类数据, 数据管理在本地是自治的; 服务层通过Web服务, 屏蔽数据存储的异质性, 平台的异构性, 实现分布数据的访问和管理; 汇聚层汇聚各类元数据, 提供统一访问接口, 实现数据访问和管理的简单性和易用性; 元数据为管理和应用提供各类信息; 安全主要提供身份认证、服务授权、审计、数据加密等功能; 门户主要提供全局数据目录、数据管理、服务目录等功能, 方便开发人员的数据查询、使用服务和管理员进行系统管理。
数据存储层的功能主要提供各种数据资源和对数据资源的描述信息, 体现了林业数据分布异构的特点。林业数据资源丰富, 存储格式多样, 按数据性质可分为矢量、遥感影像数据、属性数据; 按应用领域可分为森林资源数据、生态工程数据等; 按存储形式可分为文件存储和数据库存储。就数据库而言, 有Dbase、Access、SQL Server、Oracle、DB2等不同系统。由于各个时期的数据标准不断变化, 不同时期的数据又有所差别。系统允许数据存储的多样性, 可以是结构化文件, 可以是音频视频文件, 也可以是各类数据库; 允许同一类型数据在数据结构上的多样性, 同时提供相关的元数据信息, 对数据进行描述和解释, 这样保持了数据的原真性。
2.2 服务层 2.2.1 Web服务消解系统异构性Web服务与CORBA、RMI、EJB类似, 是一种分布式计算技术, Web Service是描述一些操作的接口, 它是一系列标准的集合, 包括XML、SOAP、UDDI、WSDL和WSFL等。Web服务利用这些标准提供一个松耦合的分布式计算环境, 实现应用程序语言无关性、跨平台、跨网络访问(吴文明等, 2004)。
Web服务体系结构基于3种角色(服务提供者、服务注册中心和服务请求者)和2种构件(服务、服务描述), 完成3种操作(发布、查询、绑定)。服务提供者提供服务, 并向服务注册中心发布服务描述信息, 服务请求者向服务注册中心查找到所需的服务和服务描述信息, 然后使用服务描述中的绑定细节来定位、联系和调用服务, 从而在运行时调用或启动与服务的交互。
通过WSDL文件, 服务器端和客户端分别生成服务器Stubs和客户端Stubs。客户端Stubs的作用是生成SOAP请求和解释服务器的响应消息; 服务器Stubs的作用是解释客户端的请求消息和生成服务器的响应SOAP消息。典型服务调用过程分如下几步:1)当客户端应用程序调用Web服务时, 它首先调用客户端Stubs, 客户端Stubs将客户端的请求转换为相应的SOAP消息, 这个过程被称为序列化; 2) SOAP请求消息通过HTTP传到服务器端Stubs, 服务器Stubs将SOAP请求消息转换为Web服务能理解的信息, 这个过程被称为反序列化; 3) SOAP请求消息被反序列化之后, 服务器Stubs调用Web服务完成相应的操作; 4)服务执行的结果交给服务器Stubs, 服务器Stubs将其封装为SOAP响应消息; 5) SOAP响应消息通过HTTP传到客户端Stubs, 客户端Stubs将SOAP响应消息转换为客户端应用程序能理解的信息; 6)客户端Stubs将结果传给客户端应用程序, 完成调用过程。
由上可以看出, Web服务基于消息机制共享数据和应用程序, 其消息以XML表示, 从而消除操作系统和数据库系统层次的异构性, 意味着在Windows平台下用C++编写的客户端程序能调用在Linux平台下用Java写Web服务程序。Web服务消息主要通过HTTP传输, 使得它能顺利地穿过防火墙和代理服务器, 实现Internet范围的访问。同时, Web服务是松耦合的, 这使得Web服务特别适合于Internet环境下的分布式应用程序。对于林业行业内的各类分布异构数据, 采用Web服务技术进行封装, 以XML进行数据表示, 也就利用了Web服务技术的优点, 从而实现了分布异构数据的访问。
2.2.2 数据服务种类对任何数据实体, 有3类服务的具体方法与之对应:数据提供服务、元数据服务和数据管理服务。数据服务实现对数据的远程访问, 使任何在互联网上的用户(主要是应用程序)在拥有权限的情况下, 访问远程数据就象访问本地数据一样。元数据服务主要提供数据的描述信息, 告诉数据服务消费者如何使用数据以及提供其他相关的系统信息, 为分布数据的统一管理、访问提供帮助。数据管理服务是对节点不同层次的服务进行管理和监控。由于数据系统本身是自治的, 数据系统的管理主要由本地系统完成, 数据管理服务只暴露通用的、不具破坏性的管理功能, 如数据的迁移、转换, 数据的状态信息等。通过以上3类服务, 从功能上满足了应用系统对分布式数据的需求。
2.3 元数据 2.3.1 核心元数据模型元数据主要包括数据实体元数据和服务元数据, 其核心数据模型见图 3。数据实体元数据主要包括以下几个层次:节点元数据、服务器元数据、数据库元数据、数据集元数据、数据表元数据、数据字典元数据。其粒度由粗到细, 在节点层次, 可以得到节点名称、数据拥有者等信息; 在数据集层次, 可以得到按不同标准的数据分类信息; 在数据字典层次, 可以得到各字段的类型、长度、所表达的语义。通过数据实体元数据, 用户可以从不同层次对数据进行了解。服务元数据主要包括对服务的描述、对方法的描述、对参数的描述。通过此类元数据, 用户知道如何使用服务, 调用哪个方法、参数、返回值类型和含义。同一数据实体将与2类元数建立关联。这样, 如果需要获取某一数据, 可以通过数据实体元数据了解数据的详细信息, 可用性; 通过服务元数据得到如何获取数据的信息。
数据元(data element), 用一组属性描述其定义、标识、表达和允许值、所遵循规范、版本号的一个数据单元。公用数据元目录(common data element directory)根据各技术规程定义了林业行业相关的核心数据元。针对数据在语义层的异构现象, 设计、引用的一系列规范和标准, 它是数据字段和内容的依据。所有数据表字段和数据内容都表明了数据所遵循的规范和标准, 从而为实现异构数据的转换、融合提供依据, 从语义层消除系统的异构性。以工程类别数据元为例说明在数据转换中的作用, 数据见公用数据元目录(表 1)和转换关系表(表 2)。
现要将广西的二类数据向国家层汇总, 国家规范与各省规范存在一定差异, 在做数据转换时, 首先用字段信息表的DMID字段比较要转换的字段是否相等, 有关DMID条目信息参见表 1, 若相等, 说明是遵循同一规范, 分类方法相同, 可直接导入。在该例子中, 显然是遵循的规范不同, 不能直接导入。需要使用转换关系表(表 2), 以“工程类别 & quot; 字段的转换为例, 在国家级规范中没有“珠江流域防护林工程 & quot; 、“沿海防护林工程”2个类型, 但通过对应关系表, 却可以找到它们属于“其他工程 & quot; ;在国家级中没有“速生丰产林工程”但却明显地找到所对应的类别为“速生丰产林用材林工程”, 从而实现省级数据向国家级的汇总。同样, 具有了这样的转换关系, 也可以从国家级的“其他工程”数据查看其具体的组成情况。
2.4 汇聚层 2.4.1 数据目录服务, 服务目录服务各子节点(通常为省级中心)的元数据定期向国家级中心汇总, 在此基础上提供数据目录服务和服务目录服务。用户只需调用国家级中心的服务就可以查询到所有的数据目录和服务目录。
2.4.2 统一访问服务接口由于各节点的功能类似, 只是存在数据物理的分布性导致同一数据服务在多个节点部署, 用户访问不同节点数据需要调用不同的服务, 增加了系统应用的复杂性。因此, 在获得数据资源列表和数据服务列表之后, 即可实现数据的统一访问, 用户只需调用少量的服务就可访问所有的数据、元数据, 进行数据管理, 而不需针对每一数据节点调用特定服务。
2.5 门户门户主要包括4部分:全局数据目录、服务目录、数据管理和服务管理。它是数字林业公共平台门户的组成部分之一, 主要为系统管理和应用开发服务。全局数据目录除了向用户提供目录列表外, 还提供浏览功能、数据的分类信息、数据结构信息、坐标和投影信息, 调用该数据的服务地址和数据ID等, 通过全局数据目录, 用户可以对数据的属性和内容有全面的了解, 并获得访问数据的服务信息。服务目录提供系统所有服务的列表, 详细介绍了服务的功能; 提供每一服务的方法列表和功能说明; 提供每个方法的参数列表和参数说明和参数取值。数据管理的主要功能是监控各节点的数据资源状况, 录入数据元数据, 以及数据的迁移、数据转换等功能。服务管理的主要功能是监控个节点的服务状况, 远程控制服务部署、启动、停止、实例数, 以及服务元数据的管理。
2.6 数据安全数据安全主要包括4部分:用户身份认证、服务授权、审计和数据加密。用户身份认证统一由数字林业公共平台认证中心提供认证服务, 本系统按区域、级别、人员类别进行角色划分, 对用户分配角色, 对服务按角色授权, 对关键服务和用户进行审计, 对敏感数据加密实现数据访问的安全性。
3 典型工作流程数据管理平台的典型用户有3类:数据提供者、应用系统开发人员、系统管理员。他们之间的关系是:数据提供者提供子节点数据服务; 系统管理员管理数据服务, 提供统一接口, 维护服务; 应用程序员通过编程构建应用系统、消费服务。
虽然数据提供者、应用程序开发人员、系统管理员有着不同的工作流程, 但它们有其共同点:都要经过身份认证, 为实现特定任务都要调用服务。这里以应用开发人员为例说明其工作流程。首先应用程序开发人员通过身份认证模块完成用户的身份认证, 然后, 通过全局数据目录找到需要的数据, 通过服务目录明确调用数据的方法。通过编程环境调用服务接口编写应用程序, 然后测试应用程序, 在此过程中, 应用程序首先会调用数据中心服务, 数据中心服务再调用子节点服务完成任务, 将结果返回。
4 结论及讨论本文以全林业行业的分布异构数据为对象, 研究了基于服务的数字林业数据管理平台体系结构、以公共数据元目录为核心的元数据模型、Web服务实现机制、服务聚合数据模型和机制、安全策略, 从而实现全林业行业的分布异构数据实时访问和管理。采用Web服务技术既实现林业分布数据共享, 同时保持了系统自治性、系统间的松耦合性和开放性; 通过公共数据元目录机制保证异构数据的正确交换; 服务聚合屏蔽数据和服务的多样性和复杂性, 通过提供统一的接口和门户使消费数据服务变得简单易用。数字林业数据管理平台在技术上可行, 并符合当前林业的管理体制, 部署和消费服务简单, 是解决当前分布数据应用系统可行方案。
尽管Web服务在理论上消除异构系统得障碍, 在实际系统中, 由于各大软件公司对Web服务标准的实现不一样, 存在细微的差别, 并非所有的服务在任何平台上都能互相调用。因此, 在何种情况下, Web服务的调用会出现问题是是值得研究的问题。另外, 整个数据林业数据管理平台的统一访问和管理依赖于元数据, 目前林业行业的元数据规范还不完善, 所以在元数据方面还需做大量的工作。
达飞鹏, 孟广猛. 2004. 分布式数据库异构消解研究. 计算机工程与应用, (6): 187-190. DOI:10.3321/j.issn:1002-8331.2004.06.058 |
邓灵, 陈亮, 叶仲和. 2004. 分布式技术及其应用概述. 计算机时代, (6): 6-8. DOI:10.3969/j.issn.1006-8228.2004.06.003 |
方陆明, 陈勤娟, 周友法. 2002. 中国数字林业的构建与展望. 浙江林学院学报, 19(2): 222-226. DOI:10.3969/j.issn.2095-0756.2002.02.026 |
滑楠, 史浩山. 2005. 基于中间件的分布数据服务设计与研究. 计算机工程, 31(4): 91-93. |
刘新胜, 韩朝新, 罗刚. 2002. 湖北数字林业体系建设途径探讨. 湖北林业科技, (4): 13-17. DOI:10.3969/j.issn.1004-3020.2002.04.005 |
苗良, 张承明, 苗蕾. 2005. 山东省数字林业平台构建研究. 农业图书情报学刊, 17(2): 230-234. DOI:10.3969/j.issn.1002-1248.2005.02.071 |
肖锦辉, 罗良才. 2005. 森林防火报警系统中的Web服务. 惠州学院学报, 25(3): 46-50. DOI:10.3969/j.issn.1671-5934.2005.03.011 |
温永宁, 张宏. 2005. 基于Web服务的分布式空间数据共享模型. 计算机工程, 31(6): 25-26. DOI:10.3969/j.issn.1000-3428.2005.06.010 |
吴文明, 瞿裕忠, 董逸生. 2004. Web服务及相关技术. 计算机应用与软件, 21(3): 14-16. DOI:10.3969/j.issn.1000-386X.2004.03.006 |
张旭. 2002. 构筑数字高速通道促进林业跨越式发展——浅谈数字林业中的网络应用平台. 林业科技管理, (2): 35-38. DOI:10.3969/j.issn.1673-3290.2002.02.010 |
郑娅峰, 鱼滨. 2005. 基于Web的异构信息源集成中间件. 计算机应用, 25(1): 81-84. DOI:10.3969/j.issn.1000-386X.2005.01.034 |
钟飞, 杨新民. 2005. 国家林业局综合办公室传输系统结构设计. 林业资源管理, (4): 66-69. DOI:10.3969/j.issn.1002-6622.2005.04.017 |
钟凯文, 李岩, 黄建明. 2004. 省级"数字林业"系统模型研究. 热带地理, 24(4): 311-315. DOI:10.3969/j.issn.1001-5221.2004.04.003 |