1、 文档编号:GM-YFZX-Temp-27文档密级:内部公开数据管理平台产品需求规格说明书版本号:0.2天耀宏图科技有限公司数据管理平台产品需求规格说明书1 / 17修订记录版本号 修订记录 编写人 审核人 日期V0.1 创建 邹锦辉 2016-06-19V0.2 修改文档格式 王芳 2016-06-21数据管理平台产品需求规格说明书2 / 17目目 录录 1 文档介绍 21.1 文档目的 21.2 读者对象 21.3 参考文档 21.4 术语与缩写解释 22 产品介绍 33 项目目标 33.1 数据集存储 33.2 数据负载均衡 33.3 数据交互 43.4 支持 GIS 数据类型 .43.
2、5 接口的高扩展性 44 总体架构 55 产品的功能性需求 .55.1 数据视图 55.1.1 服务器视图功能 .64.1.2 数据集视图功能 .74.1.3 图层视图功能 .85.2 数据提交 94.2.1 单文件提交 .94.2.2 批量提交 .104.2.3 断点续传 .115.3 服务器设置 11数据管理平台产品需求规格说明书3 / 174.3.1 主服务设置 .114.3.2 服务器启动停止 .124.3.3 负载均衡 .136 性能需求 147 外部接口需求 .148 软硬件环境需求 .159 其他需求 15数据管理平台产品需求规格说明书1 / 171 文档介绍1.1文档目的本文档
3、的目的是通过对用户需求的分析,将用户需求转化为对产品需求规格的定义,为产品的设计开发和测试提供依据。本文档范围包括:产品介绍及产品范围,产品应当遵循的标准或规范,产品功能性需求、用户界面需求、性能需求、软硬件环境需求及其他需求等。1.2读者对象产品的开发设计和测试人员、产品的用户(包括公司内/外部客户) 。1.3参考文档无1.4术语与缩写解释无2 产品介绍数据管理服务将数据预处理工具处理好的数据进行组织,根据制定的数据发布规则,将数据部署到服务器端,并将数据和数据发布服务进行关联,从而将数据提供给浏览终端使用,并对数据进行有效的管理。3 项目目标3.1数据集存储一个数据集可以理解为一个数据仓库
4、,内部可以存储任意条目的数据。数据管理平台产品需求规格说明书2 / 17数据集用一个 065535 的数字编号进行标识,其中有几个编号为固定仓库,其它类型的数据不允许使用:RDSC_VirtualCubeCode(1):八叉树索引数据专用RDSC_LayerCfgCode(3):图层配置数据专用RDSC_DataSetCfgCode(2):客户端数据工具配置专用(服务端不会存在此数据集)RDSC_InternalShareObject(4):三维客户端内部共享数据专用(服务端不会存在此数据集)RDSC_ExternalDataSetCode(99):连接外部数据专用,如WMTS/WMS/WMF
5、S 等(服务端不会存在此数据集)一个数据集可以分布于多个 Globe 服务端实例上以实现数据存储与发布服务的负载均衡。3.2数据负载均衡Globe 允许多个服务端进程实例同时提供数据服务,一个服务端实例,用 IP:Port进行标识。1. 一台实体服务器硬件,可以有多个服务端实例同时提供数据服务2. 多台实体服务器硬件,可以有各自的服务端实例同时提供数据服务数据负载均衡的作用,就是让数据分布在不同的服务端进程实例中,让每一个服务端进程实例尽量均衡地承载数据访问压力;同时数据可以冗余分布,也可以非冗余分布以保证数据服务的高可用性;数据负载均衡,在最初配置服务端实例时就应该规划好,后期修改时才能不影
6、响到前期的数据,后期修改负载均衡配置,不得涉及到前期已经均衡配置的数据集3.3数据交互1. 客户端数据通过数据维护工具可以上传到事先配置好的服务端实例中数据管理平台产品需求规格说明书3 / 172. 数据维护工具也可以将事先上传到服务端实例的数据删除掉3. 数据维护工具可以更新指定的数据条目4. 数据维护工具可以在服务端创建图层树结构3.4支持 GIS 数据类型数据平台需要具备支持常用 GIS 数据的存储与服务,包括以下三种数据类型: 影像数据 地形数据 模型数据3.5接口的高扩展性该项目除了实现上述基本数据服务需求之外,应该确保接口的高扩展性,以支撑未来各种应用场景的自定义数据服务实现,主要
7、包括两个层次的模块接口设计: C+层 DataKeeper 模块接口设计 COM 层 GMDataKeeper 模块接口设计4 总体架构架构视图如图所示,该项目聚焦于数据服务层,从数据维护工具应该具备的功能需求开始,逐层梳理现有的模块与接口,根据业务需求重新进行架构设计,提高数据服务框架的可扩展性与可复用性。数据管理平台产品需求规格说明书4 / 17N e t W o r k S e r v i c e网络通信组件D a t a K e e p e r数据维护工具D a t a S e r i v c e P l a t f o r m后台数据服务端G M G l o b e模型图层P r e
8、 P r o c e s s o r模型预处理工具展 示 层数 据 服 务 层数 据 生 产 层T i l e B u i l d e r T o o l影像预处理工具T i l e B u i l d e r T o o l地形预处理工具G M G l o b e影像图层G M G l o b e地形图层图 4-1数据定义:记录是以 ID、Object 的形式存储的,数据集里存放着 N 条记录,ID 描述了Object 的类型,唯一标识与所在数据集号;Object 有一种特殊类型叫图层,它可以包含对象,也可以包含图层,Object 数据对象支持嵌套,数据物理存储格式为 Bson 格式。5 产
9、品的功能性需求无5.1数据视图数据视图包括两个层次,第一个是粗粒度的视图,包括服务器视图,数据集视图,图层视图,第二个是细粒度的视图,主要是粗粒度视图中的数据集或图层对象所包含的最基本的瓦片数据集合或模型数据集合的数据展示。数据从粗粒度视图角度来看,有三种组织结构,因此数据视图功能模块至少应该包括三个视图的功能子模块: 以服务器组织 以数据集组织数据管理平台产品需求规格说明书5 / 17 以图层组织5.1.1 服务器视图功能可以通过树视图查看每个服务器节点上的数据集存储分布,双击每个数据集可以展示数据列表视图并能通过列表视图进行单条记录的查找、单条记录/批量记录/ 全部记录的删除,以及列表视图
10、翻页等常用功能。由于目前查找记录功能只支持 ID 方式查找,可以考虑为每个记录添加名字属性来支持查找,比如模型数据应用场景可以通过名字属性来删除一些目标模型从而支持场景编辑。图 5-1图 5-2数据管理平台产品需求规格说明书6 / 174.1.2 数据集视图功能数据集视图可以清晰展示每个数据集对应存储的服务器节点,但是这个视图功能目前没有展示出数据集在节点上的负载配置,并且双击某个服务器节点弹出的数据列表视图无任何数据记录。图 5-34.1.3 图层视图功能图层视图支持图层创建、图层删除以及图层更新,对于每个图层节点支持图层的创建、删除、图层名修改、数据集增加以及数据集复制与粘贴。目前平台设计
11、思路是在提交目标数据集到服务器节点时会自动以数据集文件名为图层名创建一个图层添加到 RDSC_LayerCfgCode=3 对应的图层数据集中,因此可以看到存在 XX.GMCT 后缀的图层。每个图层是对子图层DOMDEMVCUBE 类型数据集的引用,因此图层视图功能需要支持以上各种图层与数据集关联的功能。数据集增加/关联就是将某个数据集关联到目标图层,但是必须是同类型的数据集与图层的关联,比如不能将模型数据集关联到影像图层;同理数据集复制与粘贴功能是在同类型图层节点之间的编辑操作,跨类型图层节点之间不支持此类操作,目前数据维护工具并无相关校验逻辑与易用性提示。数据管理平台产品需求规格说明书7
12、/ 17图 5-4同样双击目标图层节点能通过数据列表视图进行展示,并提供单条记录/批量记录从图层引用列表中移除。图 5-5数据管理平台产品需求规格说明书8 / 175.2数据提交4.2.1 单文件提交数据提交包括数据记录的增加与更新,同时需要支持用户任意选择或全部数据的提交。整个提交业务流程是根据每条记录 ID 中的 DataSetCode 数据集编码,找到该数据集对应的服务器进程,因负载配置的不同因此可能是多个服务器进程,然后提交到对应的服务器节点。图 5-6单文件提交选择单个数据文件后通过列表视图(文档视图的一种)进行展示,用户在视图中可以进行记录的查找、数据选择、操作类型(更新与增加)的
13、选择以及查看每条记录的类型等相关属性,最后通过提交功能进行批量记录提交。4.2.2 批量提交支持批量选择任意多个数据文件进行批量提交,数据文件可是是同类型也可以是跨类型,支持 DOMDEM模型三种数据文件类型。数据管理平台产品需求规格说明书9 / 17图 5-74.2.3 断点续传支持批量提交过程中网络传输中断情况下的续传,以保证网络中断之前已经提交到服务器节点的数据成果避免耗时耗力的重复上传。通过设计合理的用户操作日志来支撑断点续传功能或机制。日志格式可以是:时间+用户名+动作+ 资源+状态5.3服务器设置服务器设置功能模块包括主服务器切换与子服务器节点添加功能模块、服务器的启动与停止功能模
14、块、以及服务器的负载均衡配置模块。4.3.1 主服务设置通过该功能模块可以自由切换当前激活的主服务器,同时可以动态创建子服务器节点以用于数据存储与发布服务的均衡负载。数据管理平台产品需求规格说明书10 / 17图 5-84.3.2 服务器启动停止通过客户端方式启动停止服务器进程更加方便高效,为用户屏蔽 Linux 服务器端繁琐的 shell 命令操作,同时通过输出视图输出相关状态信息。图 5-9数据管理平台产品需求规格说明书11 / 174.3.3 负载均衡 支持数据存储与发布服务的均衡负载 支持数据存储的冗余备份 负载均衡业务流程如图所示:开始点击负载分配树形根节点添加数据集编码新建数据集名
15、称与编码点击目标数据集节点添加散列区间完成任意多个散列区间的添加给任意多个散列区间节点添加对应的服务器节点同步到主服务器结束图 5-10数据管理平台产品需求规格说明书12 / 17图 5-11目前数据维护工具在已有的负载配置基础上可以进行服务器节点的添加,比如可以将 ds1:1 的 0-100%散列区间上再次添加若干个服务器节点,并同步到主服务器,但是并不会涉及到原来已经提交的数据集的修改变更或冗余备份,只有当提交新数据集时才会同时提交到多个服务器节点进行冗余存储与备份。已经配置好的数据集,其存储区间分割不能变更,只能删除目标数据集再重新创建;同时删除的目标数据集同步到主服务后会直接将数据集从服务器中移除。6 性能需求 数据查询的最长等待时间1S 数据库入库时间 1000 条/S 系统能 7*24 正常运行,无故障7 外部接口需求无数据管理平台产品需求规格说明书13 / 178 软硬件环境需求表 8-1需求名称 需求定义硬件平台 8G内存,1T 硬盘,CPU 4 核以上网络环境 局域网百兆带宽第三方硬件接口 无操作系统 Linux操作系统 centos6.5与 Win7以上操作系统数据库 自定义 DB运行库环境第三方软件接口 http协议9 其他需求无