图形数据维护工具项目架构设计总结

1、背景

近期负责一个GIS矢量化项目,工程中涉及图形数据、GIS业务数据的关联存储和管理。为弥补图形矢量化软件在附属属性管理方面的局限性,采用两套数据库系统进行图-数关联存储的方案:图形矢量化软件存储图形数据,文件数据库存储业务数据。图形数据维护工具,是矢量化实施项目中核心支撑系统之外数据检查、校正工具,主要完成图-数对应关系的建立、维护,业务数据合法性的基础检查和纠正等。

2、需求概述

在信息管理方面,整个项目涉及大量的、孤立的图片的存储,包括:图片的文件名、业务路径、对应的工程、图形处理人、业务处理流程、处理状态等。业务数据包括:工程信息、GIS点设施业务数据、GIS线设施业务数据、GIS图层信息、GIS的各类点、线设施之间的几何图形规则、拓扑关系、业务规则等等数据。图形数据维护工具,需要操作每份栅格图对应的业务数据库,从中读取和纠正每个孤立的图形工程对应的业务属性;同时还需操作整个项目的数据管理系统,保持中心数据库的信息与各个孤立工程之间的信息同步、根据统一的业务规则批量纠正涉及该规则的当个工程文件数据等等。

图形数据维护工具的数据管理及应用示意如下图:

3、架构设计

图形数据维护工具,纵向采用分层方式进行设计:持久化层、业务实体层、业务规则层、界面交互层。

数据访问层,完成对各种数据库、报表、日志文件的操作封装。包括:MySQL数据库接口、SQLite数据库接口、Excel文件操作封装、txt日志文件封装、XML文件访问封装等。

业务实体层,完成对工程、项目人员、图层、各种点设施、各种线设施、核心规则实体等等数据结构、类、常量等的定义与封装。

业务规则层,完成对点、线设置基础几何图形规则、GIS拓扑关系、业务数据检查规则、业务数据纠正规则、业务属性边界检查规则、业务数据错误检查规则、业务数据错误校正规则等等。

用户界面层,各种文件、数据库、业务数据展示、报表处理等操作界面。

图形数据维护工具的总体架构示意如下图:

时间: 2024-10-04 16:08:25

图形数据维护工具项目架构设计总结的相关文章

大数据日志分析项目架构

老是弹出由于您编辑时间过长,页面和服务器之间的连接已断开,请先将文章内容另外保存,再刷新本页面继续编辑让我保存页面我也是醉了,图片多没法一次上传,上传图片还一直失败,我只好都放在一个附件里面了.阿里能花点心思把网址做好一点么 共两个开发项目,git地址:https://github.com/dengziming/hongya-report.git,https://github.com/dengziming/hongya-taobaopayment.git 项目简介:大数据涉及到的业务很多很复杂,

Java文萃:谈软件对项目架构设计的概论

架构|设计|项目 开始之初的架构设计决定着软件产品的生死存亡."好的开始相当于成功一半". 开始的架构设计也是最难的,需要调研同类产品的情况以及技术特征,了解当前世界上对这种产品所能提供的理论支持和技术平台支持.再结合自己项目的特点(需要透彻的系统分析),才能逐步形成自己项目的架构蓝图. 比如要开发网站引擎系统,就从Yahoo的个人主页生成工具 到虚拟主机商提供的网站自动生成系统,以及IBM Webphere Portal的特点和局限 从而从架构设计角度定立自己产品的位置. 好的设计肯

J2EE项目架构设计或项目管理请教

问题描述 在项目管理及架构设计有谁有经验,请教高手交流!QQ群交流:137763159 解决方案 解决方案二:希望能通过群即时得到技术交流,帮助,多谢大家,多谢高手指点!

数据维护工具mysqldump

mysqldumpmysql管理工具 使用mysqldump工具,基本用法是: shell> mysqldump [OPTIONS] database [tables] 如果你不给定任何表,整个数据库将被导出.通过执行mysqldump --help,你能得到你mysqldump的版本支持的选项表. 注意,如果你运行mysqldump没有--quick或--opt选项,mysqldump将在导出结果前装载整个结果集到内存中,如果你正在导出一个大的数据库,这将可能是一个问题. mysqldump支

工业级物联网项目的架构设计及实施

早在1999年就已经有了"物联网"这个概念,但是直到十年之后的2009年,IBM提出"智慧地球"的概念,才推动很多国家把物联网研究和发展提升到战略层面.但是比较遗憾的是,直到现在的2015年,我国的物联网的发展依然主要靠政府项目来拉动,所以现在的发展似乎前景越来越不明朗. 政府似乎意识到这是个问题,在一些互联网公司的倡导和推动下,提出了"互联网+"的概念.虽然"互联网+"和"物联网"都是以网为主,但是发展的

【架构篇】Android移动app架构设计浅谈

前言 架构,又名软件架构,是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计. 软件架构设计目标: 1.可靠性(Reliable).软件架构的可靠是产品设计的前提. 2.安全性(Secure).软件架构的安全性是产品可持续发展的条件. 3.可扩展性(Scalable).软件架构必须能够不同的功能需求情况下,支持可扩散性. 4.可定制化(Customizable).同样的一套软件,可以根据客户群的不同和市场需求的变化进行调整. 5.可伸缩 (Extensible).在新技术出现

C语言项目开发-项目架构和编程命名规范

一个项目的流程: 1.公司市场人员与客户交流,了解客户.引导客户使用公司最优资源并产出一份市场需求文档 2.公司需求人员(BA)与客户交流,了解客户需求并产出一个软件需求文档 3.项目经理.开发小组成员.需求人员(BA)一起开一个需求评审会议,对不合理的地方,    打回给BA,再由BA与客户沟通 4.程序员接到和充分了解软件需求文档后产生软件设计文档(包括概要设计文档和详细设计文档,    涉及到数据库的还需要进行数据库的设计) 5.程序员根据设计文档进行编码.调试.打包发布.如果编写的函数库

springmvc-项目架构设计,提供接口的服务怎么设计

问题描述 项目架构设计,提供接口的服务怎么设计 目前系统需要对app端提供接口,我想请教下,大家一般是怎么做的?提供给其他系统调用的接口是另外一个单独的工程?是同一个工程的话,感觉比较混乱,而且接口访问量会比web端大很多 解决方案 同一个工程,弄个app模块 解决方案二: 解决方案三: 解决方案四: 我也是这样做的,想看看大家是怎么做的.有没有更好的方法.

《Microsoft.NET企业级应用架构设计(第2版)》——2.2 软件项目的机制

2.2 软件项目的机制 如果你问:"什么导致项目失败?",你得到的最常见的回答可能会把失败归咎到与业务有关的问题,比如说,缺少需求,项目管理不到位,成本估算不正确,缺少沟通,甚至各个团队的人员相互不配合.你很难看到坏代码可能导致问题这种情况. 有鉴于此,我们认为未被发现的BBM可以严重损害软件项目,但未能处理的BBM却可以真的毁了它. 最终,个体以及个体之间的实际互动才能真的决定软件项目的成功或失败.但是,组织结构及其整体文化也会影响最终结果. 2.2.1 组织文化 Apple公司的组