CN104407879B - 一种电网时序大数据并行加载方法 - Google Patents

一种电网时序大数据并行加载方法 Download PDF

Info

Publication number
CN104407879B
CN104407879B CN201410566127.XA CN201410566127A CN104407879B CN 104407879 B CN104407879 B CN 104407879B CN 201410566127 A CN201410566127 A CN 201410566127A CN 104407879 B CN104407879 B CN 104407879B
Authority
CN
China
Prior art keywords
loaded
data
time series
parallel
series data
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.)
Active
Application number
CN201410566127.XA
Other languages
English (en)
Other versions
CN104407879A (zh
Inventor
王远
袁军
包建国
胡健
张珂珩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CHINA REALTIME DATABASE Co Ltd
Original Assignee
CHINA REALTIME DATABASE Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by CHINA REALTIME DATABASE Co Ltd filed Critical CHINA REALTIME DATABASE Co Ltd
Priority to CN201410566127.XA priority Critical patent/CN104407879B/zh
Publication of CN104407879A publication Critical patent/CN104407879A/zh
Application granted granted Critical
Publication of CN104407879B publication Critical patent/CN104407879B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种电网时序大数据并行加载方法,以解决多客户端并行加载海量历史时序数据时遇到的不能并行加载而产生等待现象的问题。本发明通过对索引映射表做分区处理、根据待加载的数据量的大小对历史时序数据存储表做分区预处理、根据各数据节点上所分配的历史时序数据存储表分区的范围,对待加载的海量历史时序数据做保持数据局部性的处理,经过上述处理后能够有效减少并行加载海量历史时序数据时多客户端读写索引映射表文件遇到的磁盘IO冲突和集群不同节点之间网络通信开销,避免单节点加载海量历史时序数据时负载过重带来的性能问题。本方法能充分利用分布式并行处理能力,大大减少海量历史时序数据加载的时间。

Description

一种电网时序大数据并行加载方法
技术领域
本发明涉及一种数据并行加载方法,属于大数据处理、分布式实时数据库领域,特别适用于智能电网、物联网中海量历史时序数据的并行加载方法。
背景技术
随着工业化、信息化的不断发展,大型流程工业企业在生产信息化过程中产生越来越多的海量历史时序数据。以电力系统为例,一方面是测点规模越来越大,预计将达到千万级甚至亿级以上;另一方面是历史时序数据量规模越来越大,预计将达到PB字节以上,这对实时数据库的处理规模、处理速度提出了更高的要求。
传统实时数据库受制于其传统的软件体系架构,在数据规模、处理能力、并行计算、负载均衡、动态自治等方面已无法满足实际应用需求。在实时数据库领域,引入大数据处理技术来解决上述问题是当前研究时序大数据处理的主要方法,而基于Hadoop+HBase的方法则是当前大数据处理事实上的标准(如图1所示)。
对以HBase为存储层的大数据处理系统,为了提高系统的查询性能,一般对数据存储表的索引做哈希处理生成固定长度的字节数组,即单独建立一张表来完成数据存储表索引的哈希映射,也称为索引映射表。生产系统运行时,随着时间的推移大量测点将产生海量的历史时序数据,而对于基于Hadoop+HBase的大数据处理系统的初次上线或运行时已经产生的海量历史时序数据的加载将成为一个亟待解决的问题。单客户端加载海量历史时序数据不能发挥分布式并发处理的能力,需要耗费大量的时间才能完成,而一般的多客户端并行加载在数据加载时又会遇到多客户端同时读写索引映射表文件产生大量的磁盘IO冲突和集群不同节点之间网络通信开销大而引起的不能并行加载及由此产生的等待现象的问题;经初步检索,暂未发现有解决上述技术问题的技术方案。
发明内容
为了解决上述问题,本发明提供了一种电网时序大数据并行加载方法,该方法可以有效减少并行加载时,多客户端读写索引映射表文件遇到的磁盘IO冲突,并且通过保持数据局部性的方法来减少集群节点之间的网络通信开销,这样能够充分利用分布式系统的并行处理能力进而高效的完成海量历史时序数据的加载。
为了实现上述目的,本发明采用了如下技术方案:
一、分区处理
多客户端并行加载海量历史时序数据,每条数据记录都会首先访问索引映射表文件来确定该条数据记录将要写到哪个数据存储表的分区,这样一来对于海量历史时序数据并行加载时,对索引映射表文件的读写将造成过多的磁盘IO冲突,进而成为影响海量历史时序数据并行加载性能的瓶颈。
因此,本发明对索引映射表做分区处理,利用HBase的分区管理能力,来使索引映射文件表的不同分区均衡地分布在不同的数据节点上,这样可以减少多客户端并行加载时遇到的磁盘IO冲突;
本发明还根据待加载的数据量的大小对历史时序数据存储表做分区预处理,以避免多客户端并行加载海量历史时序数据时过多的写数据请求集中到某个数据节点及“hotregion”问题。
二、保持待加载数据的数据局部性(Data Locality)
海量历史时序数据存储于单个数据节点进行数据加载将不能充分发挥分布式系统并行处理的能力,且会造成该机器节点负载过重。而将海量历史时序数据随意的按文件大小切分后分发到各数据节点,这样进行多客户端数据加载时将会使不同数据节点之间网络通信开销成为制约系统性能的瓶颈。
本发明方法通过读取每个数据节点所管理的历史数据存储表的分区及每个分区所对应的索引映射表的范围,对待加载的海量历史时序数据按分区进行切分处理,并把切分后的属于同一个数据节点的历史时序数据合并后分发到其所对应的数据节点。
经过上述处理即保持数据局部性后,再进行多客户端并行加载数据时,能够确保每个客户端会将待加载的历史时序数据存储在本客户端机器(数据节点)所管理的历史数据存储表的分区中。这样,避免了多客户端并行加载海量历史时序数据时网络带宽成为影响系统加载性能瓶颈的可能。
本发明方法对索引映射表文件和历史数据存储表做分区处理后能够减少并行加载海量历史时序数据时多客户端同时读写索引映射表遇到的磁盘IO冲突、过多的写数据请求集中到某一个数据节点及“hot region”问题,保持待加载数据的数据局部性能够避免多客户端并行加载海量历史时序数据时集群不同数据节点之间的网络通信开销成为影响系统加载性能瓶颈的可能性,进而能够最大限度的利用分布式并行处理能力,减少数据加载的时间,从而高效地完成海量历史时序数据的并行加载。
附图说明
图1是典型的Hadoop+HBase分布式系统集群架构图。
图2是本发明方法的流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。
本实施例以电网业务场景中某一应用实例来描述本发明。假设如下基于Hadoop、HBase的集群由5台机器构成并对该集群进行高可用HA配置,各机器的配置情况如下表1。在该应用场景中有60万测点,数据采集频率为60帧/min,采集到的每条数据记录大概为70字节,则这60万测点一天(24小时)将产生3.3T字节的数据。下面以将3.3T数据加载到大数据系统中为例描述本方法的实施方式。
表1集群各机器的配置
本发明方法的流程图如图2所示:
(1)分区处理
对索引映射表文件进行分区处理。将索引映射表文件根据该集群及测点规模的情况分为30个分区,利用HBase的分区管理功能,将这30个分区随机均衡的分配给三个datanode节点。
对历史数据存储表进行分区预处理,根据该集群datanode个数、待加载的数据量大小及集群分区配置文件的大小,将历史数据存储表预分为5000个分区,利用HBase的分区管理功能,将这5000个分区随机均衡分配给三个datanode节点。
(2)保持数据局部性及并行加载
将60万个测点名写入到索引映射表文件中;
读取各datanode节点所管理的历史数据存储表的分区及每个分区所对应的索引映射表的范围,对待加载的3.3T数据进行切分处理;
把属于同一个数据节点的历史数据的切分合并后分发到其所对应的数据节点(datanode);
在每个datanode上启动一个客户端并行加载这些历史时序数据。
本发明不限于上述实施例,一切采用等同替换或等效替换形成的技术方案均属于本发明要求保护的范围。

Claims (1)

1.一种电网时序大数据并行加载方法,其特征在于,包括如下步骤:
1)分区处理:
对索引映射表文件进行分区处理,将索引映射表文件根据集群及测点规模的情况分为多个分区,利用HBase的分区管理功能,将这多个分区随机均衡的分配给若干个数据节点;
对历史数据存储表进行分区预处理,根据集群数据节点个数、待加载的数据量大小及集群分区配置文件的大小,将历史数据存储表预分为多个分区,利用HBase的分区管理功能,将这多个分区随机均衡分配给集群数据节点;
2)保持数据局部性及并行加载:
将所有的测点名写入到索引映射表文件中;
读取各数据节点所管理的历史数据存储表的分区及每个分区所对应的索引映射表的范围,对待加载的数据进行切分处理;
把属于同一个数据节点的历史数据的切分合并后分发到其所对应的数据节点;
在每个数据节点上启动一个客户端并行加载这些历史时序数据。
CN201410566127.XA 2014-10-22 2014-10-22 一种电网时序大数据并行加载方法 Active CN104407879B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410566127.XA CN104407879B (zh) 2014-10-22 2014-10-22 一种电网时序大数据并行加载方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410566127.XA CN104407879B (zh) 2014-10-22 2014-10-22 一种电网时序大数据并行加载方法

Publications (2)

Publication Number Publication Date
CN104407879A CN104407879A (zh) 2015-03-11
CN104407879B true CN104407879B (zh) 2018-02-02

Family

ID=52645512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410566127.XA Active CN104407879B (zh) 2014-10-22 2014-10-22 一种电网时序大数据并行加载方法

Country Status (1)

Country Link
CN (1) CN104407879B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354320A (zh) * 2015-11-16 2016-02-24 天津南大通用数据技术股份有限公司 一种快速加载多个数据文件的方法及装置
CN105718561A (zh) * 2016-01-20 2016-06-29 中国科学院计算技术研究所 一种特定分布式数据存储文件结构去冗余构造方法及系统
CN106383846A (zh) * 2016-08-31 2017-02-08 天津南大通用数据技术股份有限公司 一种分布式数据库系统数据的加载方法及装置
CN106528819A (zh) * 2016-11-16 2017-03-22 北京集奥聚合科技有限公司 一种HBase读写时序性数据的方法及系统
CN106570193B (zh) * 2016-11-17 2020-07-07 深圳市康拓普信息技术有限公司 一种时序大数据的加载方法
CN107329692B (zh) * 2017-06-07 2020-02-28 杭州宏杉科技股份有限公司 一种数据重删的方法及存储设备
CN110020305B (zh) * 2017-11-29 2023-12-12 深圳市雅阅科技有限公司 网页加载方法、装置、计算机设备和存储介质
CN108959596B (zh) * 2018-07-12 2020-07-24 成都智达万应科技有限公司 一种公交阶梯票价预测方法
CN110580253B (zh) * 2019-09-10 2022-05-31 网易(杭州)网络有限公司 时序数据组的加载方法、装置、存储介质及电子设备
CN111948967B (zh) * 2020-08-18 2021-07-09 太仓韬信信息科技有限公司 一种基于大数据的电力数据采集方法及系统
CN112269670B (zh) * 2020-10-30 2023-08-25 重庆紫光华山智安科技有限公司 数据入库方法、装置、系统及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101567003A (zh) * 2009-05-27 2009-10-28 清华大学 并行文件系统中资源的管理和分配方法
CN101930404A (zh) * 2010-08-27 2010-12-29 威盛电子股份有限公司 存储装置及其操作方法
CN101957863A (zh) * 2010-10-14 2011-01-26 广州从兴电子开发有限公司 数据并行处理方法、装置及系统
CN103942253A (zh) * 2014-03-18 2014-07-23 深圳市房地产评估发展中心 一种负载均衡的空间数据处理方法和系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100162230A1 (en) * 2008-12-24 2010-06-24 Yahoo! Inc. Distributed computing system for large-scale data handling

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101567003A (zh) * 2009-05-27 2009-10-28 清华大学 并行文件系统中资源的管理和分配方法
CN101930404A (zh) * 2010-08-27 2010-12-29 威盛电子股份有限公司 存储装置及其操作方法
CN101957863A (zh) * 2010-10-14 2011-01-26 广州从兴电子开发有限公司 数据并行处理方法、装置及系统
CN103942253A (zh) * 2014-03-18 2014-07-23 深圳市房地产评估发展中心 一种负载均衡的空间数据处理方法和系统

Also Published As

Publication number Publication date
CN104407879A (zh) 2015-03-11

Similar Documents

Publication Publication Date Title
CN104407879B (zh) 一种电网时序大数据并行加载方法
CN103345514B (zh) 大数据环境下的流式数据处理方法
CN104679778B (zh) 一种搜索结果的生成方法及装置
CN103390038B (zh) 一种基于HBase的构建和检索增量索引的方法
CN104572727B (zh) 一种数据查询方法及装置
CN103544285B (zh) 一种数据加载方法及装置
CN108469988A (zh) 一种基于异构Hadoop集群的任务调度方法
CN106406987A (zh) 一种集群中的任务执行方法及装置
CN100458784C (zh) 在数字图书馆中所采用的检索系统和检索方法
CN103984761A (zh) 海量异构数据的存储方法及系统
CN103399945A (zh) 一种基于云计算数据库系统的数据结构
CN106960020B (zh) 一种创建索引表的方法及设备
CN104572505A (zh) 一种保证海量数据缓存最终一致性的系统及方法
CN106649687A (zh) 大数据联机分析处理方法及装置
CN105681414B (zh) 一种避免Hbase数据热点的方法及系统
CN105630810A (zh) 一种对于海量小文件在分布式存储系统中上载的方法
CN102946429A (zh) 一种基于云存储的高效资源动态调度方法
CN112947860A (zh) 一种分布式数据副本的分级存储与调度方法
CN108153759B (zh) 一种分布式数据库的数据传输方法、中间层服务器及系统
Sawyer et al. Understanding query performance in Accumulo
CN106897458A (zh) 一种面向机电设备数据的存储及检索方法
JP6696062B2 (ja) Hadoopに基づいて、複数の2MB以下のファイルをキャッシュする方法
CN105554069B (zh) 一种大数据处理分布式缓存系统及其方法
CN112000703B (zh) 数据入库处理方法、装置、计算机设备和存储介质
CN104158902A (zh) 一种基于请求数的Hbase数据块分配方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP02 Change in the address of a patent holder

Address after: 210012 No. 180 Software Avenue, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee after: CHINA REALTIME DATABASE Co.,Ltd.

Address before: 210003, 5 new model street, Gulou District, Jiangsu, Nanjing

Patentee before: CHINA REALTIME DATABASE Co.,Ltd.

CP02 Change in the address of a patent holder