CN108647243A - 基于时间序列的工业大数据存储方法 - Google Patents
基于时间序列的工业大数据存储方法 Download PDFInfo
- Publication number
- CN108647243A CN108647243A CN201810331014.XA CN201810331014A CN108647243A CN 108647243 A CN108647243 A CN 108647243A CN 201810331014 A CN201810331014 A CN 201810331014A CN 108647243 A CN108647243 A CN 108647243A
- Authority
- CN
- China
- Prior art keywords
- big data
- industrial big
- time series
- measuring point
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及大数据技术领域,公开了一种基于时间序列的工业大数据存储方法,该方法包括:获取所述工业大数据的测点名称及测点时间;根据所述测点名称及所述测点时间,分别获取相应的测点ID及时间序列;以及根据所述测点ID及所述时间序列将所述工业大数据按行进行存储。本发明可使业务逻辑上具有时间相关性、测点相关性的数据在物理存储上按行相邻排列,同时优化读写性能,实现查询效率和写入效率的平衡。
Description
技术领域
本发明涉及大数据技术领域,具体地涉及一种基于时间序列的工业大数据存储方法。
背景技术
随着消费互联网的崛起,大数据分析与云计算技术的发展壮大,“工业大数据”时代应运而生。
工业大数据和传统的互联网大数据相比,具有更强的专业性、关联性、流程性,尤其是时序性。工业大数据平台主要面临两方面的挑战:一方面,随着智能化、信息化的不断深入,工业过程中的数据规模越来越大,数据量越来越多,海量大数据的采集、存储面临巨大压力;另一方面,大数据的分析、预测、推荐等应用需要对工业过程中所有的数据进行建模处理、分布式并行计算,传统的关系型数据库或实时数据库已经无法满足工业大数据的应用需求。
HBase***近年来已经发展成为一个实用的、成熟的大数据***,已成功应用于互联网众多领域、多个行业的在线式数据分析处理,能够在合理的时间范围内处理PB级的海量数据,是一个面向列存储的、持久的、多维排序映射的分布式存储***。
如何有效、合理地在HBase***中存储海量数据,并能高效检索和更新,是工业大数据存储设计面临的主要问题。
发明内容
本发明的目的是提供一种基于时间序列的工业大数据存储方法,其可使业务逻辑上具有时间相关性、测点相关性的数据在物理存储上按行相邻排列,同时优化读写性能,实现查询效率和写入效率的平衡。
为了实现上述目的,本发明提供一种基于时间序列的工业大数据存储方法,该方法包括:获取所述工业大数据的测点名称及测点时间;根据所述测点名称及所述测点时间,分别获取相应的测点ID及时间序列;以及根据所述测点ID及所述时间序列将所述工业大数据按行进行存储。
可选的,所述根据所述测点时间获取相应的时间序列包括:将所述测点时间的字符串转化为日期时间;以及获取所述测点时间与预设时间的时间间隔,该时间间隔所对应的小时数为所述时间序列。
可选的,该存储方法还包括:根据所述时间间隔与所述时间序列相差的秒数对所述来自同一测点ID的工业大数据按列进行存储。
可选的,所述根据所述测点ID及所述时间序列将所述工业大数据按行进行存储包括:根据所述时间序列将来自同一测点ID的工业大数据按行进行存储。
可选的,该存储方法还包括:对来自同一测点ID及同一测点时间的工业大数据进行自动过滤,若该工业大数据未被存储,则进行存储;若该工业大数据已被存储,则舍弃。
可选的,该存储方法还包括:将来自同一测点ID的工业大数据合并到同一数据区域中;以及将所述同一数据区域中来自同一时间序列的工业大数据合并到同一数据文件中。
可选的,该存储方法还包括:根据数据来源将所述工业大数据按照不同的列族进行存储。
可选的,所述将所述工业大数据按行进行存储包括:将所述工业大数据以数据结构体的格式按行进行存储。
可选的,所述数据结构体采用哈希表的key-value方式对所述工业大数据按行进行存储。
可选的,所述采用哈希表的key-value方式对所述工业大数据按行进行存储包括:采用Protocol Buffer格式以二进制的方式对所述工业大数据进行存储。
相应的,本发明还提供一种机器可读存储介质,其特征在于,所述机器可读存储介质上存储有指令,该指令用于使得机器执行上述权利要求中任一项所述的基于时间序列的工业大数据存储方法。
通过上述技术方案,本发明创造性地通过设计测点ID及时间序列组成的行键将工业大数据按行进行存储,从而使业务逻辑上具有时间相关性、测点相关性的数据在物理存储上按行相邻排列,同时优化读写性能,实现查询效率和写入效率的平衡。
附图说明
图1是本发明一种实施方式提供的基于时间序列的工业大数据存储方法的流程图;
图2是本发明一种实施方式提供的HBase***的行键的结构图;
图3是本发明一种实施方式提供的数据结构体S的结构图。
图4本发明一种实施方式提供的数据表的结构图;以及
图5是本发明一种实施方式提供的将所述工业大数据划分至不同数据区域及数据文件的结构图;以及
图6是本发明一种实施方式提供的三个列族的数据表的结构示意图。
附图标记说明
10 行键 100 测点ID
101 时间序列
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
图1是本发明一实施例提供的基于时间序列的工业大数据存储方法的流程图。如图1所示,本发明提供的基于时间序列的工业大数据存储方法可包括:获取所述工业大数据的测点名称及测点时间;根据所述测点名称及所述测点时间,分别获取相应的测点ID及时间序列;以及根据所述测点ID及所述时间序列将所述工业大数据按行进行存储。该方法通过测点名称及测点时间组合获取相应的测点ID及时间序列组合,并将该组合作为行键将工业大数据按行进行存储,即依据时间序列对工业大数据按行进行存储,从而使业务逻辑上具有时间相关性、测点相关性的数据在物理存储上按行相邻排列,同时优化读写性能,实现查询效率和写入效率的平衡。
所述根据所述测点名称获取相应的测点ID可包括:通过测点列表获取所述测点名称与所述测点ID的对应关系。该测点列表主要包括测点名称、测点ID、测点KKS编码、测点所属电厂等测点基本信息的对应关系表,用于提供测点信息的转换关系。例如,以所述测点名称的8位顺序号作为测点ID,若该顺序号不足8位,则在其前以数字0补齐8位。所述测点ID是所获取的所有测点的唯一标识。
所述根据所述测点时间获取相应的时间序列可包括:将所述测点时间的字符串转化为日期时间;以及获取所述测点时间与预设时间的时间间隔,该时间间隔所对应的小时数为所述时间序列。其中,该时间间隔所对应的小时数可通过以下方式获取:计算所述时间间隔所对应的秒数;将所获得的秒数除以3600并取整,该取整所得的数值为所述时间序列的基本值;以及判断该基本值是否为8位数,若不足8位,则在该基本值前以数字0补齐8位。例如,以预设时间为1970年01月01日8点为例,若来自同一个测点ID0的两个数据所对应的测点时间分别为2010年01月01日10点00分01秒及2010年01月01日10点00分03秒,则两个测点时间所对应的时间序列均为00262800。
如图2所示,以HBase***为例,将所述测点ID100及所述时间序列T101设计为行键10。所述根据所述测点ID100及所述时间序列T101组成的行键10将所述工业大数据按行进行存储可包括:根据所述时间序列将来自同一测点ID的工业大数据按行进行存储,如图3所示。每相邻两行的时间序列之差为1小时,因而可以方便用户按行检索同一个测点在1小时内的数据。例如,对于上述来自同一个测点ID0的两个数据而言,两个测点时间所对应的时间序列T2均为00262800,则需要依据其所对应的行键ID0:T2将其存储该行键所在的行,其中T1、T3满足T1<00262800<T3。
如图3所示,所述工业大数据可以数据结构体S的格式按行进行存储。当然,本发明的数据结构体S并不限于图3所列的属性,其他属性构成也是可行的。所述数据结构体S可采用哈希表的key-value方式对所述工业大数据按行进行存储,该方法可用于处理大量数据的高访问负载,适合基于时间序列的工业大数据的有序存取。其中所述key-value可采用Google公司的Protocol Buffer。当数据结构体S的某个属性值是默认值或为空时,在Protocol Buffer中不占用字节数。与传统的字符格式相比较,Protocol Buffer是一种体积小占用空间少,数据交换效率高的结构化数据存储格式,以及本身二进制的特点决定了其非常好的加密性,满足工业大数据的安全保密性的需求。当然,本发明的key-value也不限于采用Protocol Buffer的方式进行存储,其它可实现减少存储空间、保证数据完整和安全的格式也是可行的。
依据行键确定所述工业大数据所在的行之后,再根据所述时间间隔与所述时间序列相差的秒数对所述来自同一测点ID的工业大数据按列进行存储,如图4所示,其中,每行设置3600列。例如,对于上述来自同一个测点ID0的两个数据而言,所述时间间隔与所述时间序列相差的秒数分别为1及3,则需要将其分别存储在所述行键ID0:T2所在行的第1及第3列。
对于电力测点而言,采集数据的时间一般为毫秒,所以数据结构体S的测点时间仅为毫秒数,因此,对行键、列、数据结构体S的测点时间进行加和可以还原电力测点的完整采集时间。
以上依据测点名称及测点时间按行、按列的存储方式,可使得数据能以散列且连续的方式进行有效存储,也可使得用户按行进行快速扫描,从而实现大量数据的有效存储、高效检索和更新。
将来自不同测点ID的数据依据上述方法按行按列进行存储,随着数据量的不断增大,本发明提供的基于时间序列的工业大数据存储方法可通过自动过滤及合并将数据存储至不同的数据区域和数据文件中,其可包括以下内容:首先,对来自同一测点ID及同一测点时间的工业大数据进行自动过滤,若该工业大数据未被存储,则进行存储;若该工业大数据已被存储,则舍弃,也就是说,对同一测点ID及同一测点时间的工业大数据仅存储一次,以实现对工业大数据的有效存储,并且还能够节约存储空间。接着,将来自同一测点ID的工业大数据合并到同一数据区域中,如图5所示。例如,可将来自于测点ID0、测点ID1及测点ID2的数据(包括所有时间序列T1、T2、T3……等的数据)分别合并存储至数据区域1、数据区域2及数据区域3中。最后,将所述同一数据区域中来自同一时间序列的工业大数据合并到同一数据文件中,如图5所示。例如,可将同一数据区域(如数据区域1)中来自时间序列T1、T2……等的数据分别合并存储至数据文件1、2……等。由于HBase的数据组织方式,工业大数据都会被有序地存储到一个有特定起始键和停止键的数据区域中,因而很容易产生集中在一个数据区域的读写热点,导致整个数据存储***的性能下降。然而,本发明通过地自动过滤及合并将工业大数据存储至成为不同的数据区域、数据文件的方法,使得不同测点ID的数据分散在不同的物理机中,一个测点ID的数据全部存储在一台物理机的一个表里,而且每个测点ID相邻时间点的数据会存储在相同的数据文件中。这样可以很方便地为用户在用户界面(UI)中提供按时间顺序显示一个或多个用户选择的监控指标的最近结果,能效地减少查询特定行和/或行范围的时间;同时在写入大量数据时,可以写入的压力分散到多个服务器,提高写入性能,从而实现较好的读取性能和写入性能,达到读写的平衡点。
在上述依据测点名称及测点时间按行、按列对所述工业大数据进行存储的基础上,本发明提供的基于时间序列的工业大数据存储方法还可包括:根据数据来源将所述工业大数据按照不同的列族进行存储,如图6所示。其中,所述数据来源可包括设备、电厂及公司等。例如,可以设置三个不同的设备(锅炉1、锅炉2及汽机1)为三个列族存储相应的数据。通过在同一个数据表中设计不同列族,可使得HBase***高效地管理存储空间的数据,从而大幅提高查询的处理速度。
综上所述,本发明创造性地依据时间序列对工业大数据按行进行存储,从而使业务逻辑上具有时间相关性、测点相关性的数据在物理存储上按行相邻排列,同时优化读写性能,实现查询效率和写入效率的平衡。
相应地,本发明还提供一种机器可读存储介质,所述机器可读存储介质上存储有指令,该指令用于使得机器执行上述基于时间序列的工业大数据存储方法。
以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合。为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
Claims (11)
1.一种基于时间序列的工业大数据存储方法,其特征在于,该存储方法包括:
获取所述工业大数据的测点名称及测点时间;
根据所述测点名称及所述测点时间,分别获取相应的测点ID及时间序列;以及
根据所述测点ID及所述时间序列将所述工业大数据按行进行存储。
2.根据权利要求1所述的基于时间序列的工业大数据存储方法,其特征在于,所述根据所述测点时间获取相应的时间序列包括:
将所述测点时间的字符串转化为日期时间;以及
获取所述测点时间与预设时间的时间间隔,该时间间隔所对应的小时数为所述时间序列。
3.根据权利要求2所述的基于时间序列的工业大数据存储方法,其特征在于,该存储方法还包括:根据所述时间间隔与所述时间序列相差的秒数对所述来自同一测点ID的工业大数据按列进行存储。
4.根据权利要求1所述的基于时间序列的工业大数据存储方法,其特征在于,所述根据所述测点ID及所述时间序列将所述工业大数据按行进行存储包括:根据所述时间序列将来自同一测点ID的工业大数据按行进行存储。
5.根据权利要求1所述的基于时间序列的工业大数据存储方法,其特征在于,该存储方法还包括:
将来自同一测点ID的工业大数据合并到同一数据区域中;以及
将所述同一数据区域中来自同一时间序列的工业大数据合并到同一数据文件中。
6.根据权利要求1所述的基于时间序列的工业大数据存储方法,其特征在于,该存储方法还包括:对来自同一测点ID及同一测点时间的工业大数据进行自动过滤,若该工业大数据未被存储,则进行存储;若该工业大数据已被存储,则舍弃。
7.根据权利要求1所述的基于时间序列的工业大数据存储方法,其特征在于,该存储方法还包括:根据数据来源将所述工业大数据按照不同的列族进行存储。
8.根据权利要求1所述的基于时间序列的工业大数据存储方法,其特征在于,所述将所述工业大数据按行进行存储包括:将所述工业大数据以数据结构体的格式按行进行存储。
9.根据权利要求8所述的基于时间序列的工业大数据存储方法,其特征在于,所述数据结构体采用哈希表的key-value方式对所述工业大数据按行进行存储。
10.根据权利要求9所述的基于时间序列的工业大数据存储方法,其特征在于,所述采用哈希表的key-value方式对所述工业大数据按行进行存储包括:采用Protocol Buffer格式以二进制的方式对所述工业大数据进行存储。
11.一种机器可读存储介质,其特征在于,所述机器可读存储介质上存储有指令,该指令用于使得机器执行上述权利要求1-10中任一项所述的基于时间序列的工业大数据存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810331014.XA CN108647243B (zh) | 2018-04-13 | 2018-04-13 | 基于时间序列的工业大数据存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810331014.XA CN108647243B (zh) | 2018-04-13 | 2018-04-13 | 基于时间序列的工业大数据存储方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108647243A true CN108647243A (zh) | 2018-10-12 |
CN108647243B CN108647243B (zh) | 2021-11-23 |
Family
ID=63746033
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810331014.XA Active CN108647243B (zh) | 2018-04-13 | 2018-04-13 | 基于时间序列的工业大数据存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108647243B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107948089A (zh) * | 2018-01-10 | 2018-04-20 | 合肥小龟快跑信息科技有限公司 | 基于NB‑IoT网络计量设备数据上传的负载均衡方法 |
CN111897295A (zh) * | 2020-07-03 | 2020-11-06 | 物耀安全科技(杭州)有限公司 | 一种工业控制***数据采集方法和*** |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456076A (zh) * | 2011-11-23 | 2012-05-16 | 北京安天电子设备有限公司 | 海量片段数据汇聚的***和方法 |
CN104035956A (zh) * | 2014-04-11 | 2014-09-10 | 江苏瑞中数据股份有限公司 | 一种基于分布式列存储的时间序列数据存储方法 |
CN104077405A (zh) * | 2014-07-08 | 2014-10-01 | 国家电网公司 | 时序类型数据存取方法 |
CN104090835A (zh) * | 2014-06-27 | 2014-10-08 | 中国人民解放军国防科学技术大学 | 基于eID和谱理论的跨平台虚拟资产交易审计方法 |
CN104331432A (zh) * | 2014-10-22 | 2015-02-04 | 江苏瑞中数据股份有限公司 | 一种适用于截面访问模式的电网海量时序数据存取方法 |
CN105005617A (zh) * | 2015-07-21 | 2015-10-28 | 领航动力信息***有限公司 | 一种时间序列数据的存储方法及装置 |
CN106156258A (zh) * | 2015-04-28 | 2016-11-23 | 腾讯科技(深圳)有限公司 | 一种在分布式存储***中统计数据的方法、装置及*** |
CN106682077A (zh) * | 2016-11-18 | 2017-05-17 | 山东鲁能软件技术有限公司 | 一种基于Hadoop技术的海量时序数据存储实现方法 |
US20180121408A1 (en) * | 2016-10-31 | 2018-05-03 | Ca, Inc. | Rendering time series metric data associated with multi-dimensional element id information |
-
2018
- 2018-04-13 CN CN201810331014.XA patent/CN108647243B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456076A (zh) * | 2011-11-23 | 2012-05-16 | 北京安天电子设备有限公司 | 海量片段数据汇聚的***和方法 |
CN104035956A (zh) * | 2014-04-11 | 2014-09-10 | 江苏瑞中数据股份有限公司 | 一种基于分布式列存储的时间序列数据存储方法 |
CN104090835A (zh) * | 2014-06-27 | 2014-10-08 | 中国人民解放军国防科学技术大学 | 基于eID和谱理论的跨平台虚拟资产交易审计方法 |
CN104077405A (zh) * | 2014-07-08 | 2014-10-01 | 国家电网公司 | 时序类型数据存取方法 |
CN104331432A (zh) * | 2014-10-22 | 2015-02-04 | 江苏瑞中数据股份有限公司 | 一种适用于截面访问模式的电网海量时序数据存取方法 |
CN106156258A (zh) * | 2015-04-28 | 2016-11-23 | 腾讯科技(深圳)有限公司 | 一种在分布式存储***中统计数据的方法、装置及*** |
CN105005617A (zh) * | 2015-07-21 | 2015-10-28 | 领航动力信息***有限公司 | 一种时间序列数据的存储方法及装置 |
US20180121408A1 (en) * | 2016-10-31 | 2018-05-03 | Ca, Inc. | Rendering time series metric data associated with multi-dimensional element id information |
CN106682077A (zh) * | 2016-11-18 | 2017-05-17 | 山东鲁能软件技术有限公司 | 一种基于Hadoop技术的海量时序数据存储实现方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107948089A (zh) * | 2018-01-10 | 2018-04-20 | 合肥小龟快跑信息科技有限公司 | 基于NB‑IoT网络计量设备数据上传的负载均衡方法 |
CN111897295A (zh) * | 2020-07-03 | 2020-11-06 | 物耀安全科技(杭州)有限公司 | 一种工业控制***数据采集方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN108647243B (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100498785C (zh) | 一种联机分析处理***中多维数据读写的方法和装置 | |
CN105677683B (zh) | 批量数据查询方法和装置 | |
CN108205577B (zh) | 一种数组构建、数组查询的方法、装置及电子设备 | |
CN104408163B (zh) | 一种数据分级存储方法和装置 | |
CN109166615B (zh) | 一种随机森林哈希的医学ct图像存储与检索方法 | |
CN107807932B (zh) | 一种基于路径枚举的层级数据管理方法和*** | |
CN103002061A (zh) | 一种长域名与短域名互相转化的方法及装置 | |
CN108647243A (zh) | 基于时间序列的工业大数据存储方法 | |
CN108205562A (zh) | 地理信息***的定位数据存储、检索方法及其装置 | |
Azri et al. | Dendrogram clustering for 3D data analytics in smart city | |
CN100578499C (zh) | 一种联机分析处理***中多维数据读写的方法和装置 | |
CN101963993A (zh) | 一种数据库单表记录快速查找的方法 | |
CN111159192B (zh) | 基于大数据的数据入库方法、装置、存储介质和处理器 | |
CN110851758B (zh) | 一种网页访客数量统计方法及装置 | |
CN112540987A (zh) | 一种基于数据集市的配用电大数据管理*** | |
Li et al. | Cluster-based distributed dynamic cuckoo filter system for Redis | |
CN110825747B (zh) | 一种信息存取方法、装置和介质 | |
Cao et al. | Analysis of One Dynamic Multi-Keyword Ranked Search Scheme over Encrypted Cloud Data. | |
Fagin et al. | Efficient implementation of large-scale multi-structural databases | |
CN111026759A (zh) | 基于Hbase的报表生成方法及装置 | |
JP4306281B2 (ja) | リレーショナルデータベースにおける階層型データのマッピングプログラム、装置、および方法 | |
CN116049190B (zh) | 基于Kafka的数据处理方法、装置、计算机设备和存储介质 | |
Mao et al. | A semantic segmentation algorithm for distributed energy data storage optimization based on neural networks | |
TW448386B (en) | Method and apparatus for managing electronic data with variable length | |
CN112486992B (zh) | 一种数据存储方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100011 Shenhua building, 22 West Binhe Road, Dongcheng District, Beijing Applicant after: China Shenhua Energy Co.,Ltd. Applicant after: Guoneng Information Technology Co.,Ltd. Address before: 100011 Shenhua building, 22 West Binhe Road, Dongcheng District, Beijing Applicant before: China Shenhua Energy Co.,Ltd. Applicant before: SHENHUA INFORMATION TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |