一种基于键值模型的情境适配电网大数据存储方法

文档序号:9274421阅读:266来源:国知局
一种基于键值模型的情境适配电网大数据存储方法
【技术领域】
[0001] 本发明涉及一种电网大数据存储方法,属于实时数据库、实时数据分析处理技术 领域。
【背景技术】
[0002] 随着移动互联、物联网技术的不断发展,以智能电网为代表的大型流程工业应用 在生产信息化过程中产生越来越多的海量历史时序数据。以电网为例,一是遍布全网的传 感器越来越多,预计将达到千万级甚至亿级以上;二是实时数据采样频率要求越来越高,要 求分钟级甚至秒级;三是历史时序数据量规模越来越大,随着应用的丰富性和互动性不断 增强,对历史数据的访问需求越来越高,因此对实时数据的处理规模、处理速度提出了更高 的要求。

【发明内容】

[0003] 为了解决上述问题,本发明提供了一种基于键值模型的情境适配电网大数据存储 方法,以大幅提升实时数据的加载和查询性能。本发明中的电网大数据是指电网中传感器 所产生的实时数据。综合分析当前电网应用对于实时数据的访问需求,主要集中在两点:一 是快速的加载需求,二是快速的查询需求。更进一步,查询需求有两类:一是批量查询,即以 测点为对象,以时间为维度,查询一段时间内测点的量测值;另一类是断面查询,即以相关 联的测点集合为对象,以单个时间点为维度,查询一批测点在某一个时间点的量测值。测点 集合的规模在电网应用中,最大可达千万甚至上亿。
[0004] 本发明方法中,模型的键是根据批量查询和断面查询定义的不同应用情境,定制 不同键;模型的值采用聚簇的思想,在同一个值中存放一批相关联的测点值,一方面利于压 缩算法起作用,另一方面,大幅提高I/O操作效率,提升性能。同时,具体的数据存储,根据 键值进行排序,以提升数据定位的效率。
[0005] 本发明方法具体采用了如下的技术方案:
[0006] (1)根据不同的访问情境(包括批量查询和断面查询),定义键的构成;
[0007] (2)根据具体的硬件配置和具体的测点值类型,定义值数据的块大小;
[0008] (3)根据键的构成,对加载的数据进行处理,形成可存储的键值对;
[0009] (4)对值进行压缩,键保持不变;
[0010] (5)以值为参照,对所有的键值对进行排序,排序后的结果以固定的块大小为单 位,进行存储。
[0011] 进一步,本发明的步骤(1)中,键模式采用分段方式进行定义,不同的情境使用不 同的键模式:
[0012] 批量查询情境下,键模式记为模式A,具体为:〈测点ID,时间戳,采样频率〉,其中 测点ID代表唯一的测点,时间戳采用Unix时间戳,采样频率支持天、小时、分钟、秒以及自 定义4种模式。
[0013] 断面查询情境下,键模式记为模式B,具体为:〈时间戳,测点组ID,分组规模〉,时 间戳为Unix时间戳,测点组ID=Floor(测点ID/分组规模),分组规模为指定大小的整 数,决定了值块的大小。
[0014] 进一步,本发明数据的物理存放位置由键模式驱动,实际数据按照键顺序存储。键 模式规定了键的组成部分,但是组成部分的排列顺序可以根据需求灵活设定。以模式A为 例,如果将时间戳放在最前方,可以大幅提升全断面数据的查询效率。键模式的每一部分都 可以起到索引的作用。
[0015] 进一步,对于每一键值对,值部分不是单一的保存一条实时记录,而是以若干相关 的测点值为单元,组成一个完整的"值簇",并对其进行处理与存储,如:以值簇为单元的数 据压缩、调整值簇的块大小。这样不但能提升写入的速度,还能提高压缩算法的压缩比,从 而能节约磁盘存储空间以及提升数据存取效率,因为压缩率提升可提升单次I/O操作的效 率,故单个数据块中将包含更多的实时数据。
[0016] 进一步,在实际应用中,通过自定义策略选取键模式以及键模式各组成部分的排 列顺序,并基于策略提供统一的数据访问接口,为应用系统屏蔽数据存储方式的复杂性。
[0017] 通过采用上述技术方案,本发明方法在数据模型上,能够满足不同的应用对于实 时数据不同的访问需求。研宄具体应用中实时数据的关联模式,通过为特定的关联模式定 义不同的键模式来影响实时数据物理存储分布。在数据实际存储过程中,将数据依据键进 行字母序排列,确保关联使用的数据在物理上连续存储,降低其在访问过程中的I/O开销, 提升访问效率。同时,利用键模式各组成部分的排列组合,构建不同的索引,进一步精细化 的提升性能,并且基于值簇的存储能够节约磁盘,进一步提升存取效率。
【附图说明】
[0018] 图1是本发明的存储模型示意图。其中,①表示为该模型的键结构,该结构可分为 两种典型模式:批量查询模式(模式A)、断面查询模式(模式B);②表示为模型的键值结 构,ValueCluster的结构根据Key的模式,可组织为断面或者批量形式;③表示为模型的实 时数据物理存储结构。
[0019] 图2是本发明的实施运行结果图。
【具体实施方式】
[0020] 下面结合附图以电网业务场景中"断面查询模式"来描述本方法的【具体实施方式】。 本方法基于levelDB键值数据库实现了上述模型。
[0021] 所采用的服务器配置如下:
[0022]
[0023] 键模式使用了模式B,如图1所示。假设如下原始数据结构如下:
[0024]
[0025] 键模式为:〈时间戳,测点组ID,分组规模〉,如图1中的①部分,其中分组规模选 择为100,即单个值簇存放100个测点在某个特定时间点的实时值,如图1中的②部分。最 终,值簇的存储如图1中的③部分。
[0026] 具体levelDB配置参数如下:
[00271
[0028]~运行焱果如图2^示。由"行结果可知,1数据提交与查询的^率分别为7. 2万/ 秒、14. 9万/秒(由于值簇存储100条实时数据,换算后,单机数据提交效率与查询效率分 别为720万/秒、1490万/秒)。
[0029] 本发明不限于上述实施例,一切采用等同替换或等效替换形成的技术方案均属于 本发明要求保护的范围。
【主权项】
1. 一种基于键值模型的情境适配电网大数据存储方法,其特征在于,包括如下步骤: 根据不同的访问情境,定义键的构成; 根据硬件配置和测点值类型,定义值数据的块大小; 根据键的构成,对加载的数据进行处理,形成可存储的键值对; 对值进行压缩,键保持不变; 以值为参照,对所有的键值对进行排序,排序后的结果以固定的块大小为单位,进行存 储。2. 根据权利要求1所述的方法,其特征是,键模式采用分段方式进行定义,并根据访问 情境采用键模式: 批量查询情境,键模式记为模式A,具体为:〈测点ID,时间戳,采样频率〉; 断面查询情境,键模式记为模式B,具体为:〈时间戳,测点组ID,分组规模〉。3. 根据权利要求2所述的方法,其特征是,数据的物理存放位置由键模式驱动,实际数 据按照键顺序存储。4. 根据权利要求2或3所述的方法,其特征是,对于每一键值对,值部分是以若干相关 的测点值为单元,组成一个完整的值簇,并对其进行处理与存储。5. 根据权利要求2或3所述的方法,其特征是,通过自定义策略选取键模式以及其各组 成元素的排序,并基于策略提供统一的数据访问接口。
【专利摘要】本发明公开了一种基于键值模型的情境适配电网大数据存储方法,以大幅提升实时数据的加载和查询性能,本发明将批量查询和断面查询定义为不同应用情境,根据情境定制不同键。对于具体的数据存储,根据键值进行排序,以提升数据定位的效率;对于值的构成,采用聚簇的思想,在同一个值中存放一批相关联的测点值。本发明方法能够满足不同的应用对于实时数据不同的访问需求,有效提升访问效率,并且节约磁盘空间,大大提升了存取效率。
【IPC分类】G06F3/06
【公开号】CN104991741
【申请号】CN201510355540
【发明人】王远, 蒋英明, 袁军, 郑晓露, 粟勇, 陈立宇
【申请人】江苏瑞中数据股份有限公司
【公开日】2015年10月21日
【申请日】2015年6月24日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1