基于并行计算模式的瓦片地图数据及服务更新方法与系统的制作方法_2

文档序号:8473050阅读:来源:国知局
据库实例名时,用":"分隔,格 式为:数据库地址:端口:数据库实例名;
[0063] 使用数据库服务名时,用分隔,格式为:数据库地址:端口 /数据库服 务名。
[0064] 如使用服务器10. 4. 6. 57上监听端口为1521,实例名orcl的数据库,其访问地址 为:
[0065] 10. 4. 6. 57:1521:orcl
[0066] (3)Http或Https在线服务:
[0067] 服务请求地址需要以Http或Https(不区分大小写)开头,如: http://127. 0. 0.l:7001/demowms/wms。地址中的协议名称需要和数据连接中定义的协议 类型保持一致。
[0068] (4)Access协议
[0069] 连接地址格式与File协议相同,但指向的是Access数据文件。
[0070] (5)SQLServer协议
[0071] SQLServer地址,使用":"分隔,格式为:数据库地址:端口 :数据库名。
[0072] 如使用服务器10. 4. 6. 57上监听端口为1433,名为mydb的数据库,其访问地址 为:
[0073] 10. 4. 6. 57:1521:mydb
[0074] (6)SQLite协议
[0075] 连接地址格式与File协议相同,指向的是SQLite文件所在的文件夹。
[0076] 如地图定义文件的地址为D:/demodata/map/mapl.GMAPX,使用存放在本地文件 夹D:/demodata/sqlitefiles文件夹内的数据文件,使用绝对路径时其访问地址为:
[0077] file:///D:/demodata/sqlitefiles
[0078] 使用相对路径时其访问地址为:
[0079] . ./sqlitefiles
[0080] 连接信息中存放连接使用的用户名和密码,为保证安全性,密码字段的内容可以 通过加密方式进行存储,并指明加密方式。加密方式为"PLAIN"时,表明存储的是原文,采 用加密方式存储密码时,统一使用"geostar"作为加密的密钥,并将加密结果进行BASE64 编码。
[0081] (7)MySQL协议
[0082] MySQL地址,使用":"分隔,格式为:数据库地址:端口 :数据库名。
[0083] 如使用服务器10. 4. 6. 57上监听端口为3306,名为mydb的数据库,其访问地址 为:
[0084] 10. 4. 6. 57:3306:mydb
[0085] 如图6所示,数据源定义包含数据源的名称(Name)、标题(Title)和描 述(Description),数据连接名称(Connection)、数据名称(DataName)、数据源格式 (GeoSourceType)和数据类型(GeoDataType) 〇
[0086] 数据源通过数据连接名称(Connection)与数据连接相关联,数据名称 (DataName)定义所使用的文件、数据库表或视图的名称。
[0087] 图7是本发明的地图文件中的样式组格式。样式资源部分定义了地图数据所需的 样式组。一个地图定义文件中可以包含一到多个样式组,每个样式组中包含多个样式。
[0088] 样式组具有名称(Name)、标题(Title)和描述(Description)等信息,并以名称作 为其标识,地图定义中包含使用的样式组名称,通过这个名称关联到指定的样式组。地图中 的图层使用同一个样式组中的样式,并通过样式名称关联到样式组中的样式。
[0089] 样式组和样式作为模板可以单独保存在样式定义文件中(参见2. 6节)。在进行 地图定义文件的配置时可以从样式定义文件中为地图选择合适的样式,选中的样式将被复 制并保存在地图定义文件中。地图中使用的样式组及样式均包含在当前的地图定义文件 中。
[0090] 本发明中的构件中的组成部分如下:
[0091] 数据源组件:对应JStorm中的spout组件,此处负责从数据库读取任务,拆分成子 任务并发送给执行单元;
[0092] 任务执行组件:消费后可能会排出新的元组数据到该数据流上,也可能会排到到 其他数据流,也或者根本不排。可并发。
[0093] 拓扑程序组件:是将数据源组件、任务环节执行单元组件整合起来的拓扑结构。并 定义了数据源组件和任务环节执行单元组件的结合关系、并发数量、配置等等。
[0094] 数据封装组件:抽象接口,本来应该是一个Key-Value的Map,由于各个组件间传 递的元组数据的字段名称已经事先定义好了,所以元组数据只需要按序填入各个Value,所 以就是一个ValueList。Value可以是任何类型的数据,但是必须要可序列化。
[0095] 下面详细介绍以上组件。
[0096] 1、数据源设计
[0097] 数据源:在构建框架中为spout组件。JDK为1. 6或更高版本
[0098] GeoFieldsGroupingSpout抽象类通过实现IComponent和ISpout接口,完成 GeoFieldsGroupingSoput抽象类的实现。其目的是为了解决用户开发的构件能被我们的并 行计算框架所识别管理,在此对storm中的spout组件API进行了封装,使用户通过扩展我 们提供的API无缝集成到我们的并行计算框架平台中被管理。
[0099] GeoFieldsGroupingSpout抽象类负责实现fieldsGrouping流分组方式,该类 负实现stormAPI中的nextTuple方法,在该方法中从数据库领取步骤mpp_step(状态 为就绪的),按步骤的优先级排序,每次最多领取10个,然后遍历步骤,回调抽象方法 splitStep2unit,该方法由具体子类实现,要求完成将step转换成一个或多个StepModel 对象(逻辑上的执行单元unit),转换fail和ack回调方法的操作,实现了执行单元的数据 的发送,开发者需要继承GeoFieldsGroupingSpout抽象类。
[0100] 需要实现以下抽象方法:
[0101]
【主权项】
1. 一种基于并行计算模式的瓦片地图数据及服务更新方法,其特征在于,包括: 以键值对形式定义一个可扩展的用于描述待处理的地图文件信息的地图定义文件,所 述地图文件信息包括金字塔层级范围、源文件地址、切图结果汇总介质; 定义一个运行于JStorm框架上的切图构件,所述切图构件用于根据地图定义文件中 的地图文件信息生成若干个并行执行的瓦片生产子任务,并将各个子任务的执行结果汇总 成最终的瓦片地图数据;其中金字塔的每一层级对应一个子任务。
2. 根据权利要求1所述的一种基于并行计算模式的瓦片地图数据及服务更新方法, 其特征在于,根据预先设置的阈值判断各计算节点的资源利用率是否超过上限及下限,并 且当节点的资源利用率起过上限时开启一个新的计算节点,当节点的资源利用率超过下限 时,贝 1J关闭该计算节点。
3. 根据权利要求1所述的一种基于并行计算模式的瓦片地图数据及服务更新方法,其 特征在于,所述切图构件包括: 数据源组件:继承Jstorm中的spout接口,用于从数据库读取任务,拆分成子任务并发 送给执行单元; 任务执行组件,继承Jstorm中的IRichBolt接口,接收数据源组件的子任务,根据子任 务执行结果修改子任务的数据流; 拓扑程序组件,继承并封装Jstrom中的Cofig组件和TopologyBuilder组件,从而能 够将数据源组件和任务执行组件进行组合,其定义了数据源组件和任务执行组件的结合关 系,并发数量、配置关系; 数据封装组件,用于以键值对方式封装各个组件间传递的可序列化的元组数据。
4. 根据权利要求3所述的一种基于并行计算模式的瓦片地图数据及服务更新方法,其 特征在于,数据源组件按规则读取并遍历任务表中的任务数据,将任务数据组织成元组数 据类型后发送至任务执行组件,任务执行组件处理所接收到的元组数据后并根据执行结果 更新任务执行日志。
5. -种基于并行计算模式的瓦片地图数据及服务更新系统,其特征在于,包括: 地图定义模块,用于以键值对形式定义一个可扩展的用于描述待处理的地图文件信 息的地图定义文件,所述地图文件信息包括金字塔层级范围、源文件地址、切图结果汇总介 质; 构件定义模块,用于定义一个运行于JStorm框架上的切图构件,所述切图构件用于根 据地图定义文件中的地图文件信息生成若干个并行执行的瓦片生产子任务,并将各个子任 务的执行结果汇总成最终的瓦片地图数据;其中金字塔的每一层级对应一个子任务。
6. 根据权利要求5所述的一种基于并行计算模式的瓦片地图数据及服务更新系统,其 特征在于,还包括监控模块,用于根据预先设置的阈值判断各计算节点的资源利用率是否 超过上限及下限,并且当节点的资源利用率起过上限时开启一个新的计算节点,当节点的 资源利用率超过下限时,则关闭该计算节点。
7. 根据权利要求5所述的一种基于并行计算模式的瓦片地图数据及服务更新系统,其 特征在于,所述切图构件包括: 数据源组件:继承Jstorm中的spout接口,用于从数据库读取任务,拆分成子任务并发 送给执行单元; 任务执行组件,继承Jstorm中的IRichBolt接口,接收数据源组件的子任务,根据子任 务执行结果修改子任务的数据流; 拓扑程序组件,继承并封装Jstrom中的Cofig组件和TopologyBuilder组件,从而能 够将数据源组件和任务执行组件进行组合,其定义了数据源组件和任务执行组件的结合关 系,并发数量、配置关系; 数据封装组件,用于以键值对方式封装各个组件间传递的可序列化的元组数据。
8.根据权利要求7所述的一种基于并行计算模式的瓦片地图数据及服务更新系统,其 特征在于,数据源组件按规则读取并遍历任务表中的任务数据,将任务数据组织成元组数 据类型后发送至任务执行组件,任务执行组件处理所接收到的元组数据后并根据执行结果 更新任务执行日志。
【专利摘要】本发明涉及一种基于并行计算模式的瓦片地图数据及服务更新方法与系统,属于地理信息更新方法领域。包括:以键值对形式定义一个可扩展的用于描述待处理的地图文件信息的地图定义文件,定义一个运行于JStorm框架上的切图构件,所述切图构件用于根据地图定义文件中的地图文件信息生成若干个并行执行的瓦片生产子任务,并将各个子任务的执行结果汇总成最终的瓦片地图数据;其中金字塔的每一层级对应一个子任务。因此,本发明具有如下优点:(1)能并行自动化的方式对矢量瓦片数据生产过程进行生产,全方位了解任务的进度、状态;(2)能自动的,以通知的形式向GIS服务管理系统推送消息,以便实现GIS服务完成使用数据的更新。
【IPC分类】G06F17-30
【公开号】CN104794217
【申请号】CN201510206292
【发明人】万恩, 刘勇, 张龙, 黄俊韬, 杨曦
【申请人】武大吉奥信息技术有限公司
【公开日】2015年7月22日
【申请日】2015年4月28日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1