软件设计说明书
PON 北向接口数据项目
1 概要
本模块将 5529 SDC 提供性能数据转换成移动 2016 北向规范定义的文件要求。
2 需求简述
2.1 输入数据
输入数据位于本地 FTP 路径下(即,不涉及任何网络或远程读取操作),是来自 5529 SDC 的性能数据,一般每 15 分钟提供 1 批(由第三方负责通过 ftp 协议上传至本地 FTP 路径下) 。每个 OLT 两个 tar.gz 包,分别是历史性能数据和当前性能数据。文件名格式类似下图:
每个 tar 包文件中,是一系列以逗号作为字段分隔的 csv 文件:
其内容类似如下图:
2.2 输出数据
输出数据也放入本地 ftp 的指定路径下。输出数据的格式即为移动统一的规范,采用 CSV 格式(竖线分隔)。
每个 tar 包(即一个 OLT)对应的输出文件有 10 种,每种的输出文件的字段定义参见文档: 输出文件的样子.xlsx,样子如下图:
2.3 接口数据
接口数据含公共信息和业务数据。业务数据字段参见相关数据规范。公共信息如下: No 1. 2. 3. 字段名称 数据生成时间 时区 统计周期 英文名称 TimeStamp TimeZone Period 数据类型 时间 字符串 数字 取值或说明 开始生成数据文件的时间戳。 时区信息,如:北京时间为“UTC+8”。 测量统计周期的分钟数,如 5、15、60 等 2.4 数据格式
传输、IP 专业 OMC 性能测量文件必须采用 CSV 格式(竖线分隔)。
无线、核心网 OMC 性能测量文件优先采用 CSV 格式(竖线分隔),可以采用 XML 格式。要求同一个空间粒度的测量项必须在同一数据文件中。
CSV 格式(竖线分隔)要求: 1、第一行数据是公共信息。
2、第二行数据是字段名称信息,每个字段用 ASCII 字符竖线“|”进行分隔。
3、第三行开始是具体数据,每条记录一行,每个数据项用 ASCII 字符竖线“|”分隔。 4、在每行的行尾不加分隔符“|”
数据样例:
TimeStamp=2015-06-11 05:08:00|TimeZone=UTC+8|Period=15 UID|UserLabel|startTime|ConnEstabAtt|ConnEstabSucc
1301HWWX2CELA12ZA1|589832|2015-06-11 05:00:00|18|17 1301HWWX2CELA12Z45|589833|2015-06-11 05:00:00|259|258
性能测量文件中如果含有“测量-子测量”嵌套格式,对于可规范、可枚举的子测量 (如“分失败原因统计”)应直接扩展为测量;对于不可规范、不可枚举的子测量(如 “分 TA 测量”)应单独形成测量文件。
2.5 技术指标
No 1. 2. 指标名称 必选字段完整性 记录完整性 指标含义 接口必选字段个数/OMC 系统内必选字段总个数*100% 接口记录数/OMC 系统内记录数*100% 指标值 ≥99.5% ≥99% 3. 4.
性能数据时延 数据存储时长 性能测量文件生成时延=文件完成生成的时间-网元侧 文件开始生成的时间 性能接口数据文件保存时长 ≤10 分钟 ≥7 天 3 软件架构
本软件采用 java 语言开发,应用定时器技术、文件系统技术、线程技术、内存数据库和外部数据库技术。整个业务流程可以分为三个较为独立和并行的子过程:核心流程,输出流程和数据同步流程。
3.1 模块关系
核心流程参与模块:
定时器 扫描 生成核心任务 输入数据目录 核心线程池 计算 分析 解包 查询 每 LOT 由一个 独立线程处理 形成结果 批量入外部库 Redis 0 区 第三方 jar 包 外部数据库
图: 核心流程中的模块关系
输出流程参与模块:
定时器 生成输出任务 读出内存数据 外部数据库 Redis 1 区 清理缓存
入外部数据库 输出数据文件十个 图: 输出流程中的模块关系
数据同步流程参与模块:
定时器 数据同步 外部数据库 内存
图: 数据同步流程中的模块关系
公共模块:
包括 配置、日志和清理模块。