《基于B+树的电力大数据混合索引设计与实现.docx》由会员分享,可在线阅读,更多相关《基于B+树的电力大数据混合索引设计与实现.docx(5页珍藏版)》请在第一文库网上搜索。
1、基于B+树的电力大数据混合索引设计与实现随着电力行业数字化、信息化的发展,电网数据来源多元化、复杂化,各种智能电表、传感器、信息系统等分布式数据源在发电、输电、配电、用电及调度、营销等多个环节持续不断地产生大量数据,促使电力数据呈几何级数增长。这些数据是建设稳定、可靠、高效智能电网的支撑性元素之一,它在揭示电力行.业内部某些特有的规律的同时,反映着社会的经济发展状况,是未来电力发展的重要参考依据。考虑到电力数据中数据类型复杂多样,字符型和数值型属性并存,本文构建基于B+树以及倒排索引的双层混合索引,来完成对电力数据的检索需求。O前言随着社会的快速进步以及信息技术的迅猛发展,促使各行业数据量以惊
2、人的速度快速增长。据2016年IDC研究报告统计,到2023年全球数据总量预计会达到40ZB,相当于平均每人拥有5247GB的数据。由此可见数据浪潮澎湃来袭,社会各个行业也将开始进入“大数据时代”。中国电力工业作为社会根本能源支持体系也开始步入大数据浪潮之中。随着电力行业信息化的发展,以及全新的数据计算处理技术如云计算和物联网等技术在电力行业中的普遍应用,电力行业中数据量的增长也呈现出相似的态势并形成了一定的规模。智能电网、智能园区、智能楼宇、智能家居等都向智能化、信息化靠拢,未来将会产生大量的实时监控数据、各种用电信息的实时采集数据、地理信息数据等各种数据资源。除此之外,数据的采集的密度不断
3、增大,数据类型不胜枚举,对数据的精细化程度的要求也越来越严格,这使得电力系统中的数据急剧增长,中国的电力企业开启了全新的电力大数据时代。在电力信息化快速发展的背景下,电力大数据具有数据量规模巨大、数据类型种类繁多、计算速度快等特点,传统的数据分析处理方法在管理大数据时显得捉襟见肘,现今的数据形式对电力数据的管理、分析及展示技术提出了新的要求。在海量的数据中快速获得有价值的信息有助于提升电力公司数据资源价值利用的整体水平,为电网的安全稳定运行提供有效支撑。1电力大数据特点和检索方式1.1 电力大数据2013年3月,中国电机工程学会编制发布了中国电力大数据白皮书,重新定义了电力大数据的特征,即3V
4、和3E:3V指数量大(Vo1Ume)、类型多(Variety)和速度快(VeIoCity),3E指数据即能量(Energy)、数据即交互(Exchange)、数据即感知(Empathy)o提出了重新塑造电力企业核心竞争力和转变中国电力行业发展方向两条中心主线;为领导辅助决策划定了重点,为电力系统大数据发展指明了方向。1.2 数据检索方法在电力大数据中,用户的检索请求的目标数据可能来自多个数据。与传统搜索引擎不同的是,大数据服务的检索用户有两种,一种是单独普通用户,一种是针对行业内部人员以及应用程序。就普通的个人用户而言,他们不了解数据的基础模型、存储位置以及组织结构信息等,适合使用关键字检索;
5、对于专业人员和应用程序来说,他们对要检索的数据所在的系统相对了解,因此采用语义查询并且使用SPARQ1查询语言进行检索。因为数据规模较大,要采用分布式数据库存储,传统的串式检索方法便不再适用,这就要求在数据检索时也要采用同样的分布式信息检索方法来适应大数据的检索需求。1.3 关键技术索引是提高数据检索和查询效率的一种有效机制,即在信息检索过程中,把数据实际存储的地址与和它相关的关键码或多个辅码联系起来,让数据查询请求可以很快的找到相关数据。B树是一种适用于外查找的树形结构,它是一种平衡多叉树,支持多路查找。目前在大多数数据库系统及文件系统中最常用也是最基础的都是采用B树或其变形B+树作为其索引
6、结构,B+树是多叉树,数据信息存储在子节点中,而每个节点中还存储大量的子节点,以此来支持多路搜索树。作为树形索引结构B+树索引具有以下几点优势:(1)虽然B+树具有一定的存储开销,但其数据的检索效果较好,且在数据插入、删除操作时计算性能较好。(2) B+树不存在溢出页;(3) B+树的每个页中能够存储较多的搜索键,并且很少会出现节点分裂、节点合并的操作;(4)具有较小的I/O开销,如典型的按索引键值检索一条数据记录时,只需要23次的磁盘I/Oo2基于B+树的混合索引设计2.1基本原理随着电力信息化的发展,电力数据来源广泛,数据类型复杂多样,设备监测数据以及业务数据大多是浮点型、字符型,具有一定
7、的时序性和结构化的特点,在数据检索时可能是对不同类型数据的联合查询,提高查询效率的一种重要手段是建立索引,对此针对电力数据特点提出一种基于倒排索引和B+树的混合索引结构。B+树的叶子结点是有序的,这使得它在对数值型数据进行范围检索时具有明显的优势,能承受大量的工作负载,具有较为稳定的I/O开销。倒排索引不能对完成数值型数据的范围检索提供很好的支持,但因其实现相对简单、查询速度快,检索可以一次定位,对字符型数据的索引构建提供良好的支持。2.2 结构设计根据上述索引的构建思想,本文设计的双层电力大数据索引结构如图1所示:在该层索引中数据上层的树形索引结构是主要是针对数据集中所包含的属性建立的,的具
8、体属性全部存储在非叶子结点中。第2层索引是为第1层的属性所对应的数据值所构建的索引,包括为数值型数据建立的B+树索引结构和为字符型数据建立的倒排表索引。2.3 索引创建首先分析要为其建立索引的数据,如果已构建的索引中没有该数据,则在混合索引的第一层构建一个新的索引结点。判断新添数据的属性值类型,若是数值型数据,则为其创建B+树索引;若是字符型属性则为其建立倒排索引结构。重复执行,之前构建的索引中如果存在当前属性,则不再向索引第一层增加新的结点,只把该属性的数据添加到第二层相应的索引中。重复以上步骤,直到为所有的数据建立索引完成为止。2.4 查询算法首先分析查询条件得到关键词,把查询关键词转交给
9、索引词典,如果索引标志位为Fa1es,返回空值表示索引文件中不存在所要查询的数据,如果为TrUe则判断该查询词返回结果的数据类型,根据不同类型定位到不同索引,读取该词汇的编号以及包含词汇文档数目,通过这些得到查询条件的相关信息。再根据词汇编号读取B+树索引或倒排索引中的内容,整合得到的检索内容,最后与检索条件进行相关性比较,对查询结果排序得到最终结果返回给用户。3索引的并行化实现随着数据规模的不断扩大,使得对数据的检索查询也越来越复杂,分布式技术具有高效快速的数据处理能力。分布式索引是在分布式数据库环境下,将整个索引根据一定的划分规则分配部署到各个不同的计算机上进行分布式计算,它是一种结合分布
10、式数据处理技术,以便快速的锁定到位于不同地理位置的计算机结点上的数据而形成的一种快速数据检索方法。分布式索引在逻辑上看是一个相对的整体,在物理结构上看则是数据存储在不同的计算机结点上。通过不同计算机之间的网络通信,一个应用程序能够访问各个物理位置不同的索引。它的分布性表现在索引数据不是统一的存储在一个计算机节点上,而是分散存储的。分布式索引系统由多个结点机和它们之间可以相互通信的网络所构成,其中每个结点机即为一台配备齐全的计算机,拥有自己的处理器、存储器和输入和输出系统,如图2所示。V图2分布式索引物理结构这就是分布式索引与一般式索引的不同之处。链接计算节点的通信网络是一个高速局域网,所有的结点机都能接收每台计算机广播发出的消息,且各机器的处理速度很快,因此对需要处理大量数据的系统,分布式索引机制在大规模数据的处理分析处理方面具有很多的有利之处。4结语研究和设计大数据检索方法和索引技术己成为一个重要的课题,虽然目前针对大数据的检索技术己经有了很多研究工作,但是所取得的研究成果还不是十分成熟,未能得到广泛的应用,无论是理论研究还是实际应用都还有很广阔的发展空间。