论文部分内容阅读
摘要:详细阐述了HydrInfo1.0与SHDP2.0文本数据文件的加工方法及格式,为数据整体迁移提供基础。
关键词:数据迁移
中图分类号:C37 文献标识码:A 文章编号:
1 概述
HydrInfo1.0—江苏省水文测验信息管理系统由江苏省水文水资源勘测局组织开发,实现了基于Windows操作系统包括水位、流量、泥沙、降水量、蒸发量、潮水位、引排水、实测表等人工水文测验信息的水文资料的整编目标,由“水流沙”、“引排水”、“实测表”、”等子模块组成。
SHDP2.0—南方片《水文资料整汇编软件》由长江中游水文水资源勘测局开发,在SHDP1.0版的基础上,采用《基础水文数据库表结构及标识符标准》(SL324-2005)的数据库结构,各模块功能得到加强,操作简便,符合《水文资料整编规范》。
2 系统功能及特点
HydrInfo1.0实现了水文资料的整编目标,计算后自动生成满足《水文资料整编规范》(SL247-1999)要求的各类整编成果表、数据库转储文件,并将整编成果打印输出。它是基于文件的,主要的文件有G、K、L三类,它的特点是源代码可读,修改比较容易,原始数据录入简单,对整编数据的查询功能、错误提示功能、成果文件合理性检查功能及汇编功能都较弱,并且没有成图功能。
SHDP2.0系统的主要具有GIS管理、水文资料数据录入、水文资料整编、图形处理、成果合理性检查等功能。
SHDP2.0系统特点有:
(1)功能强、满足长江流域及南方水文要素特点;
(2)引入数据库技术,自动化程度高;
(3)完整而全面的资料管理,对功能结构合理地进行集成和区分,功能特点清楚、逻辑清晰、设计合理;
(4)层次分明的资料分类,便于用户录入输出各种整编表项;
(5)独立的专业模块设计,各自具备一套独立的处理功能,且功能相对独立,重复度最小,维护方便;
(6)建立了完整的水位流量关系图形处理平台,实现多种图形数据输出格式(图形打印、图形转成CAD文件格式及图形转文本);
(7)整编成果表齐全,摘录表可以连排;整编成果除保存文本文件外,还转换成Excel表格文件,存储到水文数据库中;
(8)整编成果输出能转换为年鉴刊印要求的格式。
SHDP2.0运行稳定,界面清晰,简单易行,使资料录入简单化,计算成果输出更加规范,体现的数字水文、现代水文的特征,目前成为水文资料整汇编工作中不可或缺的重要方法和手段。
3 文本数据加工方法及格式
3.1 HydrInfo1.0原始数据加工方法
以水位数据加工为例,HydrInfo1.0水位原始数据以8位站码为文件名,扩展名为“.Y0G”,文件的首行控制信息为:
NF,ZH,ZA,DM,LX,LBZ,LT,KSW,ISDS,ZHQ,ZS,L15,IU,IL,IQ,IR,IK,IW,LQB,IHS,MQW,HC
分别表示年份、站号、测站类(闸)型标志、测流断面位置标志、闸下水位观测标志、坝闸水位关系标志、流态判别方法标志、水位精度标志、推沙时段数、水库(堰闸洪水)水文要素摘录段数、洪水含沙量摘录段数、打印摘录表空行标志、闸上水位、闸下水位、流量、输沙率、坝上水位、来蓄水量打印流量表表类标志、合成方式标志、调查水量信息标志、水位常数。
在两行“*”号之间是时间、水位数据,如有附注内容,则最后一行以$0:开头,后跟说明文字。
逐日平均水位的扩展名为“.ZAK”,格式为站码,年份月份,逐日平均水位,每个月占据一行,共12行。
3.2 SHDP2.0原始数据加工方法
SHDP2.0以站码年份为文件名,扩展名为“.Z0G”,文件存于相应年份的原始数据子目录(SRCdata)下。
SHDP2.0将观测资料按整编项目分为若干数据段,各数据段以标识符及“={”开头,以“}”结束。在数据段标识的“{”后可接着输入数据;结束符可视为一个数据紧接在其数据段的最后一个数据后录入。各数据以空格、逗号或水平制表符分隔。对于水位仅使用Z0G01、Z0G09、Z0G10三个数据段。
格式为Z0G01={4位年份,8位站码,水位小数位标志,汛期流量月份,上游引排水量,资料不全月年统计标志,水位日表停滞符号标志,洪水要素摘录表摘录方式};
Z0G09={时间,水位,……,时间,水位};Z0G10={水位日表附注}。
相应的涉及到的数据库表有:
BA_Z0G01_B、BA_Z0G09_B、BA_Z0G10_B、HY_DZ_C、HY_MTZ_E、HY_YRZ_F、FZ_TABLE_ID分别表示控制信息表、水位数据表、逐日水位表附注、日平均水位表、月水位表、年水位表、表类ID号。表结构的详细定义参见《基础水文数据库表结构及标识符标准》。
3.3 数据格式转换
数据转换主要有两种方法,一种是将HydrInfo1.0的G文件转换成SHDP2.0的原始数据文件格式,然后再用SHDP2.0提供的“导入数据”功能导入后重新运行一遍;另一种方法是将HydrInfo1.0的G文件直接导入到SHDP2.0数据库相应表中,然后用SHDP2.0批量计算一遍。
方法一:Y0G转成Z0G
以苏州吴溇站63201600.Y0G为例,HydrInfo1.0格式的文件内容为:
2011,5,7,1,0,0,0,0,0,0,0,0,63201600,0,0,0,0,0,0,0,0,0.0
****
10100,3.43
10108,3.35
10114,3.34
$0:表内水位采用人工观测资料整编。
按SHDP2.0原始数据加工方法,转成SHDP2.0数据文件的格式后的内容为:
Z0G01={ 201163201600 0 $$TrueTrue0$ }。
Z0G10={表内水位采用人工观测资料整编。}
由以上数据格式可知,HydrInfo1.0的Y0G文件与SHDP2.0的Z0G文件只是同一数据的两种不同表现方式,两者的数据格式是有规律可循的。但这种转换有个缺点,由于SHDP2.0不能批量导入数据,一次只能导入一个数据文件,这种方法适合于对SHDP2.0软件的试算熟悉过程,并不适合往年已有数据的批量导入。
方法二:直接导入数据库
以63201600.Y0G为例,将HydrInfo1.0的Y0G文件直接导入到SHDP2.0的数据库表中。在只有水位数据的情况下,导入Y0G文件后受到影响的数据库表有BA_Z0G01_B、BA_Z0G09_B、BA_Z0G10_B、FZ_TABLE_ID,导入后数据库表的内容如图1
图1控制信息表
图2水位数据表
由图可知,在分析SHDP2.0涉及到水位的数据库表及与HydrInfo1.0的Y0G文件相应的关系后,直接将HydrInfo1.0的G文件导入是方便快捷的,而且用这种方法更适用于历年已有数据的批量导入。
4 结束语
本文以苏州吴溇站为例,详细阐述了HydrInfo1.0與SHDP2.0文本数据文件的加工方法及格式,在深入了解两者数据文件格式的基础上,提出了HydrInfo1.0格式的数据文件转换成SHDP2.0格式的数据文件的两种方法,并对两种方法的优缺点作了简要的概括。因此,在深入了解SHDP2.0的数据库表的结构及完善了SHDP2.0的功能后,编写相应的转换程序,为HydrInfo1.0的数据向SHDP2.0整体迁移提供基础。
关键词:数据迁移
中图分类号:C37 文献标识码:A 文章编号:
1 概述
HydrInfo1.0—江苏省水文测验信息管理系统由江苏省水文水资源勘测局组织开发,实现了基于Windows操作系统包括水位、流量、泥沙、降水量、蒸发量、潮水位、引排水、实测表等人工水文测验信息的水文资料的整编目标,由“水流沙”、“引排水”、“实测表”、”等子模块组成。
SHDP2.0—南方片《水文资料整汇编软件》由长江中游水文水资源勘测局开发,在SHDP1.0版的基础上,采用《基础水文数据库表结构及标识符标准》(SL324-2005)的数据库结构,各模块功能得到加强,操作简便,符合《水文资料整编规范》。
2 系统功能及特点
HydrInfo1.0实现了水文资料的整编目标,计算后自动生成满足《水文资料整编规范》(SL247-1999)要求的各类整编成果表、数据库转储文件,并将整编成果打印输出。它是基于文件的,主要的文件有G、K、L三类,它的特点是源代码可读,修改比较容易,原始数据录入简单,对整编数据的查询功能、错误提示功能、成果文件合理性检查功能及汇编功能都较弱,并且没有成图功能。
SHDP2.0系统的主要具有GIS管理、水文资料数据录入、水文资料整编、图形处理、成果合理性检查等功能。
SHDP2.0系统特点有:
(1)功能强、满足长江流域及南方水文要素特点;
(2)引入数据库技术,自动化程度高;
(3)完整而全面的资料管理,对功能结构合理地进行集成和区分,功能特点清楚、逻辑清晰、设计合理;
(4)层次分明的资料分类,便于用户录入输出各种整编表项;
(5)独立的专业模块设计,各自具备一套独立的处理功能,且功能相对独立,重复度最小,维护方便;
(6)建立了完整的水位流量关系图形处理平台,实现多种图形数据输出格式(图形打印、图形转成CAD文件格式及图形转文本);
(7)整编成果表齐全,摘录表可以连排;整编成果除保存文本文件外,还转换成Excel表格文件,存储到水文数据库中;
(8)整编成果输出能转换为年鉴刊印要求的格式。
SHDP2.0运行稳定,界面清晰,简单易行,使资料录入简单化,计算成果输出更加规范,体现的数字水文、现代水文的特征,目前成为水文资料整汇编工作中不可或缺的重要方法和手段。
3 文本数据加工方法及格式
3.1 HydrInfo1.0原始数据加工方法
以水位数据加工为例,HydrInfo1.0水位原始数据以8位站码为文件名,扩展名为“.Y0G”,文件的首行控制信息为:
NF,ZH,ZA,DM,LX,LBZ,LT,KSW,ISDS,ZHQ,ZS,L15,IU,IL,IQ,IR,IK,IW,LQB,IHS,MQW,HC
分别表示年份、站号、测站类(闸)型标志、测流断面位置标志、闸下水位观测标志、坝闸水位关系标志、流态判别方法标志、水位精度标志、推沙时段数、水库(堰闸洪水)水文要素摘录段数、洪水含沙量摘录段数、打印摘录表空行标志、闸上水位、闸下水位、流量、输沙率、坝上水位、来蓄水量打印流量表表类标志、合成方式标志、调查水量信息标志、水位常数。
在两行“*”号之间是时间、水位数据,如有附注内容,则最后一行以$0:开头,后跟说明文字。
逐日平均水位的扩展名为“.ZAK”,格式为站码,年份月份,逐日平均水位,每个月占据一行,共12行。
3.2 SHDP2.0原始数据加工方法
SHDP2.0以站码年份为文件名,扩展名为“.Z0G”,文件存于相应年份的原始数据子目录(SRCdata)下。
SHDP2.0将观测资料按整编项目分为若干数据段,各数据段以标识符及“={”开头,以“}”结束。在数据段标识的“{”后可接着输入数据;结束符可视为一个数据紧接在其数据段的最后一个数据后录入。各数据以空格、逗号或水平制表符分隔。对于水位仅使用Z0G01、Z0G09、Z0G10三个数据段。
格式为Z0G01={4位年份,8位站码,水位小数位标志,汛期流量月份,上游引排水量,资料不全月年统计标志,水位日表停滞符号标志,洪水要素摘录表摘录方式};
Z0G09={时间,水位,……,时间,水位};Z0G10={水位日表附注}。
相应的涉及到的数据库表有:
BA_Z0G01_B、BA_Z0G09_B、BA_Z0G10_B、HY_DZ_C、HY_MTZ_E、HY_YRZ_F、FZ_TABLE_ID分别表示控制信息表、水位数据表、逐日水位表附注、日平均水位表、月水位表、年水位表、表类ID号。表结构的详细定义参见《基础水文数据库表结构及标识符标准》。
3.3 数据格式转换
数据转换主要有两种方法,一种是将HydrInfo1.0的G文件转换成SHDP2.0的原始数据文件格式,然后再用SHDP2.0提供的“导入数据”功能导入后重新运行一遍;另一种方法是将HydrInfo1.0的G文件直接导入到SHDP2.0数据库相应表中,然后用SHDP2.0批量计算一遍。
方法一:Y0G转成Z0G
以苏州吴溇站63201600.Y0G为例,HydrInfo1.0格式的文件内容为:
2011,5,7,1,0,0,0,0,0,0,0,0,63201600,0,0,0,0,0,0,0,0,0.0
****
10100,3.43
10108,3.35
10114,3.34
$0:表内水位采用人工观测资料整编。
按SHDP2.0原始数据加工方法,转成SHDP2.0数据文件的格式后的内容为:
Z0G01={ 201163201600 0 $$TrueTrue0$ }。
Z0G10={表内水位采用人工观测资料整编。}
由以上数据格式可知,HydrInfo1.0的Y0G文件与SHDP2.0的Z0G文件只是同一数据的两种不同表现方式,两者的数据格式是有规律可循的。但这种转换有个缺点,由于SHDP2.0不能批量导入数据,一次只能导入一个数据文件,这种方法适合于对SHDP2.0软件的试算熟悉过程,并不适合往年已有数据的批量导入。
方法二:直接导入数据库
以63201600.Y0G为例,将HydrInfo1.0的Y0G文件直接导入到SHDP2.0的数据库表中。在只有水位数据的情况下,导入Y0G文件后受到影响的数据库表有BA_Z0G01_B、BA_Z0G09_B、BA_Z0G10_B、FZ_TABLE_ID,导入后数据库表的内容如图1
图1控制信息表
图2水位数据表
由图可知,在分析SHDP2.0涉及到水位的数据库表及与HydrInfo1.0的Y0G文件相应的关系后,直接将HydrInfo1.0的G文件导入是方便快捷的,而且用这种方法更适用于历年已有数据的批量导入。
4 结束语
本文以苏州吴溇站为例,详细阐述了HydrInfo1.0與SHDP2.0文本数据文件的加工方法及格式,在深入了解两者数据文件格式的基础上,提出了HydrInfo1.0格式的数据文件转换成SHDP2.0格式的数据文件的两种方法,并对两种方法的优缺点作了简要的概括。因此,在深入了解SHDP2.0的数据库表的结构及完善了SHDP2.0的功能后,编写相应的转换程序,为HydrInfo1.0的数据向SHDP2.0整体迁移提供基础。