一种历史数据的存取方法和装置制造方法及图纸

技术编号:3477656 阅读:197 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种历史数据的存取方法,该方法包括建立原始表,将采集到的每一条历史数据记录按照采集时间划分到所述原始表中,得到原始分表;为所述原始分表设定标识ID号字段,并在所述ID号字段上创建一个非聚簇索引;依据所述原始分表中的历史数据记录和所述ID号字段,生成与所述原始分表对应的信息表;依据输入的查询条件、所述原始分表和所述信息表选择原始分表扫描或信息表预扫描的查询方式,进行查询操作;依据所述原始分表扫描或信息表预扫描的查询方式进行查询操作后,得到符合查询条件的历史数据记录;本发明专利技术还公开了一种历史数据的存取装置,基于该方法和装置能够提高对历史数据的查询效率。

【技术实现步骤摘要】

本专利技术涉及数据库
,特别是指在电信网络管理系统中 一种海量历 史数据的存取方法。
技术介绍
在基于数据库的通信系统中,数据的存取效率对系统的整体运行有着重要影响,尤其是在电信领域中,无论是业务操作支撑(BOSS, Business & Operation Support System)系统还是网络管理系统,都属于海量数据的应用环境。海量数 据的应用环境,对于数据的存取效率有着较高的要求。以传输网络管理为例, 其重要功能之一是对网络设备运行状态进行监控, 一般采用15分钟或24小时 为一个采集周期,对网络设备的运行性能数据进行采集。数据的采集是依据系 统中各个工作端点、即性能数据采集点的不同性能进行的,对于一台拥有上百 个工作端点的复杂设备,如典型的波分设备,在每个采集周期内,可能有上千 条运行状态记录产生;如果是由若干类似复杂设备构成的传送网络,那么,每 天的设备运行状态记录的数量可以达到千万条数量级。 一般情况下,网络管理 系统需要在内部的数据库中保存一定时间内的设备运行状态记录,可以称为历 史记录,并提供对这些记录的查阅、统计、才艮表等功能,如此,对这么大数据 量的设备运行状态记录进行数据运算,成为网络管理软件面临的一道难题。现有的对海量数据的管理, 一种可行方案是采用数据仓库技术,但对于电 信网络管理系统采集的历史数据,从它的实时性、变化性以及定时转储要求等 方面来说,电信网络管理系统对于历史数据的采集都不适合采用数据仓库技术。 所以目前主要的电信网络管理方案都使用传统的关系数据库作为运行数据的存 储媒介,方式如下定义单张表格存储某一运行数据的所有记录,如当前告警表、历史性能表等;对于记录的查询、统计、报表等功能,均通过在该表上执行普通的选择 (select)语句来实现。但是,这种处理方式的突出缺点是,并未考虑到电信网络运行过程中产生的海量监控数据量及查询条件复杂等特性,而是将其等同于普通的数据进行存储,如此会存在以下的问题1 、网络管理的界面操作指定的查询数据命令长时间无法返回;2、查询运算期间数据库占用过多的中央处理器(CPU, Central ProcessingUnit)和内存等系统资源,导致整个系统的其它操作受到严重干扰。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种历史数据的存取方法和装置, 以提高对历史数据的查询效率。为达到上述目的,本专利技术的技术方案是这样实现的 本专利技术提供了一种历史数据的存取方法,该方法包括a、 建立原始表,将采集到的每一条历史数据记录按照采集时间划分到所述 原始表中,得到原始分表;b、 为所述原始分表设定标识ID号字段,并在所述ID号字段上创建一个 非聚蔟索引;c、 依据所述原始分表中的历史数据记录和所述ID号字段,生成与所述原 始分表对应的信息表;d、 依据输入的查询条件、所述原始分表和所述信息表选择原始分表扫描或 信息表预扫描的查询方式,进行查询操作;e、 依据所述原始分表扫描或信息表预扫描的查询方式进行查询操作后,得 到符合查询条件的历史数据记录。步骤a中所述一个原始分表包含设定时间段的多条历史数据记录。步骤c所述信息分表包含多个记录,所述记录是所述ID号字段信息和常用查询字段信息的组合;依据所述原始分表中的历史数据记录,得到对该条历史 数据执行查询操作时所涉及的最常用的查询字段信息。步骤c所述信息表中的记录与所述原始分表中的历史数据记录——对应。步骤d之前,该方法还包括判断所述输入的查询条件中是否包含釆集时 间信息,如果包含采集时间,则按采集时间确定查询的部分原始分表的集合; 如果不包含釆集时间,则对全部原始分表进行查询。步骤d所述选择原始分表扫描或信息表预扫描的查询方式的方法包括确定全部原始分表或者部分原始分表集合所包含的历史数据的记录数,如 果所述记录数小于预设的门卩艮值,则选择原始分表扫描的查询方式,否则,选 择信息表预扫描的查询方式;确定所述输入的查询条件所包含的查询字段和信息表中包含的常用查询字 段的重合数,如果重合数小于预设的门卩艮值,则选择原始分表扫描的查询方式, 否则,选择信息表预扫描的查询方式。步骤d所述选择信息表预扫描的查询方式,进行查询操作的方法包括依据所述查询条件,将查询条件中的查询字^a与所述信息表中的常用查询 字段重合部分的信息进行组合,得到预查询语句;依据所述预查询语句,对信息表进行查询,得到所述信息表中ID号字段 的集合;依据所述ID号字段的集合对所述全部原始分表或者部分原始分表的集合 进行查询。步骤d所述选择原始分表扫描的查询方式,进行查询操作,具体包括依 据所述原始分表扫描的查询方式,对所述全部原始分表或者部分原始分表的集 合进行查询操作。本专利技术还提供了一种历史数据的存取装置,该装置包括原始表建立模块,用于建立原始表,将采集到的每一条历史数据记录按照 采集时间划分到所述原始表中,得到原始分表;设置模块,用于为所述原始表建立模块的原始分表设定唯一标识的ID号字段,并在所述ID号字段上创建一个非聚蔟索引;信息表生成模块,用于依据所述原始表建立模块的原始分表中的历史数据 记录和所述通过设置模块设置的ID号字段,生成与所述原始分表对应的信息 表;查询模块,用于依据输入的查询条件、所述原始表建立模块的原始分表和 所述信息表生成模块的信息表,选择原始分表扫描或信息表预扫描的查询方式,进行查询操作;历史数据获取模块,用于依据所述查询模块中原始分表扫描或信息表预扫 描的查询方式进行查询操作后,得到符合查询条件的历史数据记录。 该装置还包括存储模块,用于存储原始表建立模块的原始分表、信息表生成模块的信息 表和输入的查询条件;判断模块,用于依据所述存储模块中的查询条件,判断所述查询条件中是 否包含采集时间信息,并根据结果,按采集时间确定参与查询的部分原始分表 的集合,或者对全部原始分表进行查询。所述查询模块进一步包括查询方式选择子模块,用于依据所述存储模块中的查询条件、原始分表、 信息表选择原始分表扫描或信息表预扫描的查询方式;原始分表查询子模块,用于依据查询方式选择子模块选择的原始分表扫描 的查询方式,对所述判断模块的全部原始分表或者部分原始分表的集合进行查 询操作;信息表预查询子模块,用于依据查询方式选择子模块选择的信息表预扫描 的查询方式,对所述判断模块的全部原始分表或者部分原始分表的集合,执行 查询操作。本专利技术将历史数据按照其采集时间进行原始分表存储,且在原始分表写入 数据库的同时为其生成相应的信息表,信息表中包含历史数据的常用查询字段, 在此基础之上,本专利技术提出了原始分表扫描和信息表预扫描两种查询方式,在执行查询方式之前,4艮据输入的查询条件和历史数据的具体信息,需要先判断 哪种查询方式的代价小,即选择合适的查询方式,如此,在不同的情况下,系统会选择代价最小的查询方式,这样,减少了系统的占用资源;另外由于信息表中历史数据的常用查询字段的使用,在查询时,先对信息表中每一条记录的 常用查询字段进行查询,得到与查询条件相符的信息表记录后,再找到对应的历史数据就可以了,如此缩小了查询的范围,提高了查询的效率;另外,由于 可以对信息表中每条记录的常用查询字段值进行了压缩,与对应的历史数据记 录相比,信息表本文档来自技高网
...

【技术保护点】
一种历史数据的存取方法,其特征在于,该方法包括: a、建立原始表,将采集到的每一条历史数据记录按照采集时间划分到所述原始表中,得到原始分表; b、为所述原始分表设定标识ID号字段,并在所述ID号字段上创建一个非聚簇索引; c、依据所述原始分表中的历史数据记录和所述ID号字段,生成与所述原始分表对应的信息表; d、依据输入的查询条件、所述原始分表和所述信息表选择原始分表扫描或信息表预扫描的查询方式,进行查询操作; e、依据所述原始分表扫描或信息表预扫描的查询方式进行查询操作后,得到符合查询条件的历史数据记录。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈明
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利