本发明专利技术提供一种对版本化的电网模型数据库进行快速加载的方法,所述方法包括下述步骤:将电网模型沿时间轴的变动划分为若干个连续的状态断面,在每个状态断面中以增量的形式记录该断面中新建、修改和删除的电网模型的图形拓扑和属性;定期为经常访问的状态断面创建电网模型数据记录的基线主键索引表;动态创建从最近基线状态断面到待加载状态断面的增量主键索引表;在加载时扫描基线索引表和增量索引表合并后的主键集合,加载从起始断面到结束断面的电网模型数据。本发明专利技术实施例使用通用关系数据库、以标准SQL语言形式快速读取版本化的电网拓扑模型数据库表的方法,尤其是在基线主键索引表基础上,过滤后续版本状态、动态生成增量主键值索引表,从而缩小索引表的搜索范围、减少I/O量、缩短加载数据时间的方法。
【技术实现步骤摘要】
本专利技术属于电网地理信息系统领域,尤其涉及一种电网拓扑在关系数据库中的物理存储和优化方法。
技术介绍
电网地理信息系统(电网GIS系统),是采用地理信息(GIS)技术管理输电、变电、 配电和低压电网的专业信息系统,主要应用于国家电网和南方电网下属的省、地、县等各级供电局、电力局或者电力公司,实现输、变、配、低压电网的图形管理、档案维护、自动成图和拓扑分析等业务功能。电网GIS系统利用通用GIS系统的技术,把土地、河流、道路等电子地图作为背景, 主体功能是实现对电网中的线路、杆塔、变电所、配电站所、线路上设备的图形化的维护、查询和分析。电网GIS系统主要处理的是具有电网拓扑连接的电网设备,而不是土地、河流、 道路等地物对象,因此具有电网相关的突出特点。电网GIS系统支持电网数据时间维度的版本管理、历史版本回溯。通过记录每次变更的时间和变更数据,电网GIS系统提供根据实际时间查询版本数据,可以查询设备变更数据,也可回溯出指定时间的电网状态,为电网运行、分析业务提供支撑和参考。本专利技术提供了完全基于通用关系数据库、不使用商用GIS系统平台的电网模型数据库的版本化存储和加载优化方法。该方法提供了基于预先生成的基线主键记录集和动态生成的增量主键记录集结合的方法,实现快速版本化的电网模型数据。
技术实现思路
本专利技术的目的是实现对存储于通用关系数据库中的版本化电网模型数据进行快速加载的方法。本专利技术提供,所述方法包括下述步骤将电网模型沿时间轴的变动划分为若干个连续的状态断面(即状态断面链),在每个状态断面中以增量的形式记录该断面中新建、修改和删除的电网模型的图形拓扑和属性;定期为经常访问的状态断面(即基线状态断面)创建电网模型数据记录的主键索引表(即基线索引表),在加载时用对该索引表的单次遍历扫描取代对从初始状态断面到待访问断面的多次遍历扫描;对于最后一个基线状态断面之后的数据加载,以及相邻基线状态断面间的数据加载,动态创建从最近基线状态断面到待加载状态断面的增量形式的主键索引表(即增量索引表),在加载时扫描基线索引表和增量索引表合并后的主键集合;根据主键集合对图形拓扑表和属性表进行联合,根据记录的修改标志和状态断面标识过滤出需要加载的记录,抛弃陈旧的记录。本专利技术涉及电网地理信息系统(电网GIQ的数据库存储的
,特别是涉及了一种使用通用关系数据库、以标准SQL语言形式快速读取版本化的电网拓扑模型数据库表的方法,尤其是采用存储过程在基线主键索引表基础上,过滤后续版本状态、动态生成增量主键值索引表,从而缩小索引表的搜索范围、减少I/O量、缩短加载数据时间的方法。附图说明图1是本专利技术方法的总体流程图;图2是本专利技术实施例以状态断面方式记录电网模型修改过程的原理图;图3是本专利技术实施例数据库表设计的原理图;图4是本专利技术实施例状态断面方式存储的示意图;图5是本专利技术实施例基线索引表和增量索引表的原理图;图6是本专利技术实施例从基线索引表和增量索引表加载图形拓扑表和属性表的流程图;图7是本专利技术实施例构造基线索引表的流程图。 具体实施例方式为了使本
的人员更好地理解本专利技术实施例的方案,下面结合附图和实施方式对本专利技术实施例作进一步的详细说明。参照图1是本专利技术方法的总体流程图,包括如下步骤步骤101,将电网模型沿时间轴的变动划分为若干个连续的状态断面(即状态断面链),在每个状态断面中以增量的形式记录该断面中新建、修改和删除的电网模型的图形拓扑和属性。状态断面可以是每次对电网模型的修改(例如新建一档线路或者拆除一个杆塔),也可以是每个工程投产(包含多个设备的新建、修改或者删除),还可以是以天、周或者月等时间为单位、累计该时间范围内的所有修改。1、电网状态断面的定义电网状态断面的划分,参照图2是本专利技术实施例以状态断面方式记录电网模型修改过程的原理图,其中图2a)所示,电网模型的修改历史过程从初始状态断面1开始,每次对电网模型的修改都被记录在一个状态断面中,依次为状态断面2、3。。。n-3、n-2、n-l、n、 n+l、n+2。例如在状态断面n-1的基础上,电网模型修改集合η就保存在状态断面η中。图 2b)所示,电网模型的修改是采用增量记录的形式保存在电网模型数据表中。例如修改集合 η的各条记录是记录在状态断面η中。2、版本化电网模型的数据库表设计参照图3本专利技术实施例数据库表设计的原理图,将电网模型对象划分为图形拓扑对象和属性对象两部分,分别存储于图形拓扑表和属性表。其中图形拓扑表存储电网模型的图形位置、图形属性和拓扑连接属性,属性表存储其他属性信息。对于每个电网模型对象的一次编辑操作,图形拓扑表和属性表中各保存了一条记录,分别记录对图形拓扑和属性的修改,两条记录的状态断面内码相同。状态断面表记录了每个电网状态断面的状态断面内码、名称、前一状态断面内码, 即图2中的状态1、状态η-2、状态n-1、状态η等分别对应于该表的一条记录。状态断面内码唯一标识了该状态断面,是表的主键,也是图形拓扑表和属性表的外键。图形拓扑表的各个字段定义如下图形表内码是电网模型的图形对象的唯一编码,状态断面内码是该电网模型对象发生新建、修改或者删除操作所处的状态断面的唯一编码。一个电网对象在几个状态断面中被修改,这个表中就存在对应的几条记录。图形表内码和状态断面内码组成联合主键,用于唯一表示本次修改。属性表内码是指向关联的属性表记录的外键。属性表的各个字段定义如下属性表内码是电网模型的属性对象的唯一编码,状态断面内码是该电网模型对象发生新建、修改或者删除操作所处的状态断面的唯一编码。 一个电网对象在几个状态断面中被修改,这个表中就存在对应的几条记录。属性表内码和状态断面内码组成联合主键,用于唯一表示本次修改。修改字段表示该条记录在状态断面中的修改方式,具体含义如下表所示。其中共有6种不同的状态值,用数值来区分,也可以用字符串来表示,用数值表示的系统性能比字符串尚。权利要求1.,其特征在于,所述方法包括下述步骤将电网模型沿时间轴的变动划分为若干个连续的状态断面,在每个状态断面中以增量的形式记录该断面中新建、修改和删除的电网模型的图形拓扑和属性;定期为经常访问的状态断面创建电网模型数据记录的主键索引表,在加载时用对该索引表的单次遍历扫描取代对从初始状态断面到待访问断面的多次遍历扫描;对于最后一个基线状态断面之后的数据加载,以及相邻基线状态断面间的数据加载, 动态创建从最近基线状态断面到待加载状态断面的增量形式的主键索引表,在加载时扫描基线索引表和增量索引表合并后的主键集合;根据主键集合对图形拓扑表和属性表进行联合,根据记录的修改标志和状态断面标识过滤出需要加载的记录,抛弃陈旧的记录。2.根据权利要求1所述的方法,其特征在于,所述创建电网模型数据记录的主键索引表的方法,在加载时用对该索引表的单次遍历扫描取代对从初始状态断面到待访问断面的多次遍历扫描,使扫描时间基本等于常量。3.根据权利要求1所述的方法,其特征在于,所述方法还包括对于在查找对于最后一个基线状态断面之后的数据加载,以及相邻基线状态断面间的数据加载,动态创建从最近基线状态断面到待加载状态断面的增量形式的主键索引表。4.根据权利要求1所述的方法,其特征在于,所述方法还包括采用基线索引和增量索引合并的方式本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:不公告发明人,
申请(专利权)人:北京国科恒通电气自动化科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。