周永吉 ,黄 博,孟祥龙
(1.黑龙江省气象数据中心,黑龙江 哈尔滨150030;2.呼兰区气象局,黑龙江 哈尔滨 150000)
CTS(China Telecommunication System)是全国综合气象信息共享平台中数据收集与分发系统的简称[1],平台运行承载了全国各类气象数据的通信传输业务,同时兼顾各类气象产品的共享发布等任务,其数据量巨大且内容全面,是覆盖从国家气象中心到各省气象中心再至所有基层观测站的庞大三级网络体系。考虑到整个系统中所涉及数据存储类型的特殊性,其数据库设计必须具备针对性,以文件存储为例,其存储容量的分析、库结构的设计必须适应气象数据业务系统的独立要求并具备较好的可扩展行,以满足飞速发展的气象现代化业务需求。
本文通过梳理新时代下气象数据业务的通信流程,结合CTS平台的数据逻辑,从整体角度对CTS平台系统的核心数据库在存储设计和容量评估两方面做出较为细致的分析,面向气象数据系统工程师进行较详尽的底层解读,从而满足CTS系统平台的部署、运行以及维护需求,保障新通信业务体系的顺利建设。
数据库的设计需要综合考量,尤其对于CTS这种覆盖全国的大型系统而言,通信业务的稳定性和连续性是首要因素,同时由于表单数量较多,调度过程中的延时也需要得到有效控制,这就对结构设计提出了较高要求,另外还要兼顾到扩展性和实现难度等多方面因素,从而尽最大可能排除隐患,保证长期稳定运行。总体来说,数据库的设计需要充分考量以下几点:
(1)综合评估平台整体需求。作为后台,数据库的意义就是为前台的数据传输应用来服务,因此气象数据的通信业务需求是平台整体的基础需求,除了主体报文数据以外的各类协调型数据如传输时效、台站元数据等表单信息也应得到良好的维护,从而使数据间呈现完整统一的互通关系[2]。
(2)建立严谨且逻辑性强的索引关系。在保证数据信息准确性的设计上,需要对复杂数据建立高效严谨的排查机制,避免在多环节的索引、调度、调用过程中出现讹误。同时在数据源方面要有一致性控制[3]。
(3)优化查询过程。查询过程的控制本质上就是保证系统效率,在这方面的优化方法有很多,如优化查询算法、优化表结构、优化存储等,而本文中重点分析的存储设计和容量估算其根本目的也是优化查询过程提高数据业务效率。
(4)充分考虑扩展性问题。随着气象现代化建设的稳步推进,气象通信业务的升级步伐加快,因此CTS的现有模式在不久的将来必然面临升级改革环节,数据库作为后台基础,必须在数据结构层面建立完善的可扩展性,以满足业务高速发展的需求。
(5)完善的字段设计。数据库中字段的设计牵扯到数据在业务应用过程中的一系列流程,如数据跟踪、数据加工、质量检测、产品评估等等,在传统设计中为避免查询算法过于复杂常常采用简洁字段的方式,但这不利于庞大数据源的调用,因此在个别具有代表性的字段中合理增加冗余,是有利于气象数据统筹发展的。
除上述所列举的几点需求以外,气象数据业务是一项全国各级联动,呈网状结构的庞大体系,尤其对于气象数据产品的共建共享上还有非常大的发展空间,因此作为整个平台的最前端设计,在CTS数据库中适当合理的预留冗余信息和可扩展表单是非常有必要的。
在CTS系统中,涉及到各种气象数据、系统和业务运行日志、CTS运行所需的配置信息、用户信息以及各种数据字典等,对文件存储区的设计,遵循《气象数据库系统存储及命名规范》、《服务器目录及存储资源规划》和《工作目录命名规范》,并方便文件的存储、查询和清除[3]。
平台中文件存储区涉及到的目录是“/space/cimiss_CCCC/run/azone/”和“/app/conf”。 前者是 CTS系统的主要目录,它包括内部数据和外部数据。内部数据是指CTS系统内部的处理数据以及临时数据,外部数据不仅包括CTS系统从CIMISS系统外部得到的数据,还包括与CIMISS系统内部交互的数据。所有这些数据都要在这个根目录下重新划分自己的子目录。后者放置的是CTS系统所需的配置文件以及升级文件。
根据数据收集与分发系统的业务特点,基于数据管理的安全性考虑,先将文件存储区划分为两大区域,一个是用于与外界交换数据的通信区,另一个是用于CTS内部数据处理的工作区。在通信区,其根目录是“/entry/”,它主要包括五个目录:入口目录、远程下载目录、CMACast补调目录、本地补调目录、数据流目录;在工作区,主要包括九个目录:收集目录、分发组织目录、数据编辑目录、数据定制目录、原始存档目录、数据存档目录、分发后存档目录、升级文件目录、配置文件目录。其中收集目录、分发组织目录、数据编辑目录、数据定制目录、原始存档目录、数据存档目录和分发后存档目录这七个目录的根目录都是“/wrk_c/”,升级文件目录和配置文件目录这两个目录的根目录是“/app/conf”。涉及到与CIMISS内部系统的交互的目录有三个:推送数据加工处理系统(DPC)的目录是“/input1”和“/input2”;从 DPC 接收的目录是“/ouput”;推送归档系统(SOD)的目录是“/ach_c”,目录结构参考数据来源的目录结构。
在国家级节点,CTS同时部署在双向DMZ区和核心业务区。在国家级的双向DMZ区CTS中,通信区有入口目录、远程下载目录、本地补调目录和数据流目录共四个目录;工作区有原始存档目录、收集目录、分发组织目录、数据编辑目录、数据定制目录、分发后存档目录、数据存档目录、配置文件目录和升级文件目录共九个目录。在国家级的核心区CTS中,通信区有入口目录、远程下载目录和数据流目录共三个目录;工作区有原始存档目录、收集目录、分发组织目录、分发后存档目录、数据存档目录、配置文件目录和升级文件目录共七个目录。在省级节点,CTS只部署在双向区,通信区有入口目录、远程下载目录、CMACast补调目录、本地补调目录和数据流目录共五个目录,工作区有原始存档目录、收集目录、分发组织目录、数据编辑目录、数据定制目录、分发后存档目录、数据存档目录、配置文件目录和升级文件目录共九个目录[4]。
通过《CTS-数据规格说明书(V3.1).doc》中关于数据量的分析,目前已知的在国家级CTS的收集与分发资料每天的数据量约为2 TB,再加上未来几年将要发射的FY3、FY4系列卫星的数据,每天通过CTS系统的数据可达4 TB。这些资料全部要进入通信区的入口目录。由于入口目录是个常空目录,在进行数据收集时实时将数据移盘到工作区的原始存档目录,因此在容量估算时这两个目录合并估算[5]。
根据以上分析,以国家级CTS入口目录为例,每天2 TB的容量应扩展一倍,在存储策略上作为24 h周期存储,同理分析下,远程下载目录为10 G容量,存储周期24 h,以此类推,其中分发组织目录的存储策略定为10 d,数据存档目录为3 d,升级文件和策略文件目录为永久存储。按照百分之三十的冗余量合计估算,国家级存储容量估算值约为27.2 TB。
综上所述,CTS系统的文件级存储区在内部数据和外部数据的基础上划分出存储区目录,而在功能区域的划分上分为对外通信区和内部工作区,并按功能组织出相应路径结构。在存储容量方面通过估算可以得出冗余百分之三十的容量约为27.2 TB。这样的冗余设计可以有效满足CTS系统平台的运行需求,保障数据通信业务的稳定高效。