时间:2024-05-30
王程程,王丽伟,吴天亭
(吉林省气象信息网络中心,吉林长春130062)
气候整编资料是以气象学、概率论和数理统计学理论为基础,把气象台站的各种观测记录加工统计成平均值、合计值、极端值、频率和变率等各种气候标准值。世界气象组织认为30年长度已经足够来消除年变化影响,建议各国以30年为标准,为政府部门提供气候标准值。中国30年气候整编资料每十年发布一次整编版本,目前在用版本为中国30年(1981年~2010年)气候整编资料。作为重要气候资料的一种,不仅在很多天气、气候、模式计算等方面使用,也广泛用于农业、环境、能源利用、交通、旅游以及国防、科研等。本文以正在使用的中国30年(1981年~2010年)气候整编资料为例,探讨整编数据库的设计。
中国30年(1981年~2010年)地面气候整编资料,基于中国基本、基准地面气象观测站1981年~2010年地面月报信息化文件,按照《气候资料统计整编方法(1981年~2010)(修改版)》进行整编统计而得。要素包括气压、气温、空气湿度、云、降水、天气现象、能见度、蒸发、积雪、风、地温、冻土、日照等13个。统计值包括平均值、总量、频率、平均初终日、初终日间日数等。累年值统计频次为年、月、旬、候、日,历年值统计频次为年、月。统计精度一般精确到小数点后一位。主要数据集包括:
中国地面累年值年值数据集(1981年~2010年);
中国地面累年值月值数据集(1981年~2010年);
中国地面累年值旬值数据集(1981年~2010年);
中国地面累年值候值数据集(1981年~2010年);
中国地面累年值日值数据集(1981年~2010年);
中国地面气候标准值年值数据集(1981年~2010年);
中国地面气候标准值月值数据集(1981年~2010年)。
30年(1981年~2010年)地面气候整编资料的使用查询,往往会以特定台站、行政区域和时间为限定查询条件。使用最多的为单一要素特定统计值指定台站和时间或时间段的直接查询,以特定统计值为限定条件的复合查询和对查询结果的二次统计也有需求。综上所述,30年(1981年~2010年)地面气候整编资料的业务特点可以概括为:
以累年值、历年值为主,数据总量不是特别庞大;业务数据中要素、统计值繁多,并且存在种类变动的可能性;业务数据为一次性写入,后期基本没有数据更新;时间和台站及行政区域是主要的查询限定条件。
以中国地面累年值数据集为例,范式化设计的表结构可以为单一表,包括站号、时间及各类要素与统计值的组合,约70余列。其优势是符合范式化设计及其带来的便利,查询效率在数据量不大的前提下有一定保障。其问题通过数据库表的列扩展实现后续业务统计值的变动,其可扩展的成本和兼容性较低。
本文中采用了反范式化设计的表垂直拆分化列为表的方法进行了业务表的设计,即将属性较多,一行数据较大的业务表,按不同的属性拆分到不同的表中。垂直拆分后,每个表的表结构和索引结构一致;每个表仅保存单一的实体数据,如累年各月平均气温、累年各旬的平均气温、累年各月极端最高气温、累年各月极端最高气温出现日期是四个独立的表,表名称按相关规则命名。这样设计的主要优势是将列的维护转换为对表的维护,提高了数据表的可扩展性和数据库的易维护性;单一实体数据的查询效率有所提高;所有业务数据表结构一致,实现了底层数据库的统一设计,便于后期编程及升级维护;减小了单个表的长度,劣势是查询多个要素值需要使用join关联;以特定统计值为限定条件的复合查询需要多条查询语句,联合多个表进行查询。
针对业务数据为一次性写入的特点,业务数据表将建立多重复合索引以提高查询效率。并且为了满足对查询结果的二次统计需求,将建立业务统计值的复合索引。
为与实体数据集相对应,日照相关资料采用真太阳时,其他为北京时。
数据库逻辑上划分为元数据表和业务数据表。元数据表包括台站、业务数据种类,用户、共享分级、查询监控信息等元数据信息。业务数据表为整编实体数据集。
通过业务数据种类表,定义不同时效、不同要素、不同统计值与业务数据表的对应。
为了便于以各级行政区划为条件进行统计查询,将建立气象台站与国标行政区划代码的索引,行政区划代码一般由6位阿拉伯数字组成,第一、第二位表示省(自治区、直辖市、特别行政区)。第三、第四位表示市(地区、自治州、盟及国家直辖市所属市辖区和县的汇总码)。第五、第六位表示县(市辖区、县级市、旗)。
为保证统计精度并提高效率,所有类型的业务数据以0.01为单位转换为整数进行存储。
保存相关台站沿革信息,见表1。
表1 台站信息表
行政代码字典,见表2。
表2 行政代码字典表
定义业务数据库表的名称、要素、统计值、时效等信息,见表3。
表3 业务数据种类表
业务表名称由业务数据种类表定义,其结构完全一致,见表4。
表4 业务类别表
索引:站号、日期;
站号、日期排序;
站号、数值;
日期、数值;
日期排序、数值。
用于记录数据库表更新查询等信息,见表5。
表5 数据记录表
30年气候整编资料数据库设计是气象信息化的基础工作,其功能与性能对后续系统的研发有重要影响。本文提出的垂直拆分化列为表的反范式设计方式,是否是较优化的解决方案,需要在实际工作中不断验证与完善。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!