CN104504030B - 一种面向电力调度自动化海量报文的索引方法 - Google Patents
一种面向电力调度自动化海量报文的索引方法 Download PDFInfo
- Publication number
- CN104504030B CN104504030B CN201410773275.9A CN201410773275A CN104504030B CN 104504030 B CN104504030 B CN 104504030B CN 201410773275 A CN201410773275 A CN 201410773275A CN 104504030 B CN104504030 B CN 104504030B
- Authority
- CN
- China
- Prior art keywords
- message
- index
- file
- various dimensions
- inquiry
- 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
Links
- 230000007246 mechanism Effects 0.000 claims abstract description 13
- 238000004458 analytical method Methods 0.000 claims abstract description 12
- 238000000034 method Methods 0.000 claims description 38
- 230000006870 function Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000013011 mating Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 12
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 239000002699 waste material Substances 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种面向电力调度自动化海量报文的索引方法,涉及一种索引方法。目前,电力系统不能兼顾存储海量数据和在取证分析时能高效查询有价值的信息。本发包括:建立索引机制的前序步骤及根据建立的索引机制进行的查询索引步骤,其中查询索引包括多维度联合点查询、多维度联合范围查询及电力调度自动化报文应用层内容和其它多维度查询。本技术方案支持基于语义的查询网络数据,查询范围广,查询效率高,空间占用小,时间短。
Description
技术领域
本发明涉及一种索引方法,尤其是一种一种面向电力调度自动化海量报文的索引方法。
背景技术
随着电网规模的快速发展和特高压交直流建设,电网形态、电网特征、运行特性都发生重大变化,电网调度运行和集中监控实施集约融合、统一管理,调度机构在承担电网调度运行工作的同时,还负责变电站集中监视和遥控、遥调操作等工作,因此,调度自动化系统功能、电网模型、自动化信息日益增多,其安全稳定运行和正确控制调节的重要性越来越突出。近两年来,调度自动化系统在运行中出现了较多异常现象,部分异常现象甚至影响了电网调度运行和集中监控。几年来的自动化运行分析报告显示,除常规功能性缺陷外,仍有大量异常现象难以确定具体原因,只能给出初步判断,不利于调度自动化系统异常的消除,成为提升调度自动化系统运行水平的瓶颈。因此为了能满足后续的问题回溯和数据分析等需求,需要有一套系统,既能存储海量数据,又能在取证分析时能高效查询有价值的信息。
为解决上述问题,现有的技术中有:
1、发明名称为“一种海量历史数据的存储及索引方法”,该发明公开了一种海量历史数据的存储及索引方法,属于实时历史数据库领域。该方法根据分布式文件系统将大文件进行分块存储的特点,给出了一种简单高效的海量历史数据文件的存储方法和一种高效的分布式索引机制,如图1所示,由测点n的元数据区和历史数据区构成一条测点n的数据。测点n的元数据包括测点数字标志、采集周期和第一个数据时间戳;测点n的数据表示每周期采集的数据。测点n的数据存储在历史数据文件块中。历史数据文件分布式存储在物理存储中,实现分布式存储的冗余。如图2表示,测点存储到分布式存储中,能够得到测点的文件块号FileBlockID、文件块中的数据偏移DataOffset、测点数据长度DataLength。依据测点数字标志更新日索引文件中的FileBlockID、DataOffset、DataLength。处理完一天的测点数据,将该天的日索引文件写入年索引文件。其索引结构是以时间和测点两个先后维度的二维度数组方式实现的,查询也是先时间维度,后测点数据维度方式展开的。
2、发明名称为“一种网络流量数据索引方法及系统”,该发明公开了一种网络流量数据索引方法及系统,方法包括:实时捕获网络流量数据;在内存中通过对所述网络流量数据的每个索引字段维护一棵位图-字典树来建立并存储所述网络流量数据的索引结构,进而更新所述索引字段的索引结构;根据用户的查询请求来查询所述网络流量数据的索引结构,从而获得网络流量数据的存储位置信息,将该存储位置信息返回给用户,用户根据该存储位置信息获取响应的数据。图3表示,内存索引结构的非叶子节点为带32字节位图的256叉树;叶子节点指向数据链表。32字节位图有利于判断是否有子节点:为1时表示有子节点,为0时表示没有子节点。256叉树中有许多没有子节点。图4表示内存中的的位图-字典树转换成在磁盘中的存储布局:将内存中的指针转换成磁盘中的位置偏移,即能够由当前节点找到子节点的位置偏移。
3、发明名称为“一种基于语义的海量数据处理方法”,该发明公开了一种基于语义的海量数据处理方法,其包括以下步骤:A、将所述云应用中的所有的海量数据进行语义处理,形成智能分布式的语义索引机制;B、对云应用中所有的元数据和数据按照所述语义索引机制进行语义存储到相应的云存储系统中;C、对存储于云存储系统中的云应用执行海量数据的MapReduce计算。图5表示了依据数据密集型应用的语义判断,即聚类或分类的统计方法将海量数据划分为基于社会网络的应用元数据及应用数据节点集群分配、基于分类的应用元数据及应用数据节点集群分配。
以上的方案都为了满足数据的存储或索引需求,但各有侧重点,因此都存在各自的缺点,如下:
1、名称为“一种海量历史数据的存储及索引方法”的发明方案,采用基于时间维度和测点维度的二维度数组索引方式;查询时,总是先查询时间维度,再查询测点维度,不能有效地扩展到更多维度的索引构建和变维查询,不支持基于语义查询网络数据。
2、名称为“一种网络流量数据索引方法及系统”的发明方案,实际结合了位图索引和多路搜索树(256叉树)的方法构建内存索引结构和磁盘存储索引结构,即位图-字典树索引结构,每个节点可能有256个子节点,实际上大多数没有子节点,这会造成内存索引结构时的内存浪费和磁盘存储索引结构的磁盘浪费。专利[2]支持多维度索引构建和查询:每个维度单独构建索引,将单个报文的存储信息添加到每个维度索引的叶节点的内存链表或磁盘存储的连续存储。当最大维度数为m时,若联合查询n(n<=m)维度的报文数据,需要从每个维度中查询出结果,然后作n-1次的交集处理,即作循环处理,当每个维度的结果r1,…,rn个数都很大时,查询效率极其低下。专利[2]的索引方法的弱点有:单维度索引结构浪费内存和磁盘存储,空间效率不高;多维度联合查询时,多维度结果的交集处理效率低下,时间效率不高;不支持基于语义查询网络数据。
3、名称为“一种基于语义的海量数据处理方法”的发明方案,“数据密集型应用的语义判断”没有给出明晰的索引构建和查询方法,只是采用聚类或分类方法的智能存储和智能索引。
对此,我们需要对存储的海量报文建立索引机制,以满足用户快速检索有价值数据的需求。
发明内容
本发明要解决的技术问题和提出的技术任务是对现有技术方案进行完善与改进,提供一种面向电力调度自动化海量报文的索引方法,以达到能高效查询数据,又能基于电力调度自动化的语义信息对历史数据进行快速查找目的。为此,本发明采取以下技术方案。
一种面向电力调度自动化海量报文的索引方法,其特征在于包括:建立索引机制的前序步骤及根据建立的索引机制进行的查询索引步骤,其中前序步骤包括:
101)对于电力调度自动化报文,首先按到达系统的时间先后顺序日志化存储到报文文件中,同时获得报文时戳、报文文件中的偏移和报文长度,写入报文索引文件,输出该报文在报文中的顺序报文id;
102)经过对电网流量各业务进行协议分析,得到各业务的特征码,从而建立语义模式库;识别引擎根据语义模式库对电力调度自动化报文进行识别,然后根据识别结果选择对应的业务插件进行深层次的语义匹配;业务插件负责匹配每个业务的语义信息;
103)依据业务的多维度定制化插件的需求分析报文,提取多层多维度信息,按各个单个维度使用skiplist进行排序;
104)构建多维度联合查询索引树,当多维度数为n时,多维度联合查询索引树的索引子树数最大为:(n为偶数时)或(n为奇数时);对于多维度联合查询索引树的每个索引子树在内存中构建时,采用skiplist进行排序插入;
105)当报文文件的大小、报文个数或时间范围阈值的任意一个条件满足时,将内存中的索引子树永久化为磁盘索引文件存储:
a)将单个维度的排序写入单维度排序文件;
b)依据单维度排序文件,为skiplist中的排序索引分别获取各个维度值的编码值,构建新的索引;
c)依据新的索引构建bloomfilter数组,写入索引文件;
d)对于新的索引使用bulkloading方法构建kdb树,叶子节点中按照自左而右的方式顺序存储,叶子节点中存储在索引文件中的偏移和报文id个数,在kdb索引树后存储报文id集;
查询索引包括多维度联合点查询、多维度联合范围查询及电力调度自动化报文应用层内容和多维度查询;
多维度联合点查询包括以下步骤:
201)首先打开单维度排序文件,分别获取各个维度值的编码值;
202)打开对应维度的索引文件将bloomfilter数组读入内存,确认索引文件中是否存在该索引,若不存在,则返回无查询结果;否则,转203);
203)将kdb索引树读入内存,遍历树查询获得该索引对应的结果在该索引文件中的偏移和报文id个数m,从该索引文件对应的偏移中获取m个报文id集;
204)打开报文索引文件,获得每一个报文id的报文文件中的偏移和报文长度的结果集,合并连续的报文偏移和报文长度,得到偏移和报文长度的合并集;
205)打开报文文件,依据报文文件中的偏移和报文长度的合并集,获取报文原始数据;
多维度联合范围查询包括以下步骤:
301)打开单维度排序文件,分别获取各个确定维度的编码值,获取非确定维度的编码最大值,由此构建范围查询的起始点和结束点,查询大于等于起始点、小于等于结束点之间的报文id集;
302)打开对应的索引文件,将kdb索引树读入内存,遍历树查询获得大于等于起始点的报文id集在该索引文件中的偏移;获得小于等于结束点的报文id集在该索引文件中的偏移,从该索引文件中获取从起始点的报文id集偏移到结束点的报文id集偏移之间的所有报文id集;
303)打开报文索引文件,获得每一个报文id的报文文件中的偏移和报文长度的结果集,依据报文偏移排序和合并,得到偏移和报文长度的合并集;
304)打开报文文件,依据报文文件中的偏移和报文长度的合并集,获取报文原始数据;
电力调度自动化报文应用层内容和多维度查询步骤,
401)对于输入的报文应用层内容,经过报文业务语义识别引擎,获得报文的业务类型;
402)结合对应的维度,使用多维度联合点查询方法作多维度联合点查询或多维度联合范围查询方法作多维度联合范围查询。
对于确定的多维度,维度最大为n时,不需要个索引子树,使用一次查询可以获得点查询或范围查询结果;当n过大时,可以使用二分降维的方法,使得索引子树分别为使用一次点查询或范围查询和一次交集的方法获得查询结果。
作为对上述技术方案的进一步完善和补充,本发明还包括以下附加技术特征。
在102步骤中,建立的语义模式库中语义包括帧类型、公共地址、传送原因、通道码中的一项或多项。
在102步骤中,维数与语义信息数量相对应。
在103步骤中,依据业务的多维度定制化插件的需求分析报文,提取二层、三层、四层和应用层的多维度信息。有益效果:
1、支持基于语义的查询网络数据:基于对电力调度自动化业务的分析,提取业务语义特征模式,构建业务语义插件,用于电力调度自动化业务网络报文的业务自动化分类和业务模糊查询,查询范围广。
2、提出了支持多维度联合查询索引树Md-tree算法:对于确定的多维度,使用一次查询可以获得点查询或范围查询结果;最多使用一次点查询或范围查询和一次交集的方法获得查询结果,查询效率高。
3、支持海量报文的多维度联合查询索引树Md-tree高效构建:高效地构建多维度内存索引和磁盘存储索引,空间占用小,时间短。
4、基于多维度联合查询索引树Md-tree的多维度联合高效查询:对于多维度联合查询,只需要做多维度的点查询或范围查询就可以直接获得查询结果,不需要作交集处理,查询效率高。
附图说明
图1是现有技术的历史数据文件组织结构示意图。
图2是现有技术的历史数据索引文件结构示意图。
图3是现有技术的内存索引结构示意图。
图4是现有技术的索引文件磁盘存储布局示意图。
图5是现有技术的基于语义的智能存储机制框图。
图6是本发明的电力调度自动化海量报文索引系统总流程图。
图7是本发明的文件组织结构图。
图8是本发明的多维度联合查询索引树Md-tree构建流程图。
图9是本发明的基于Md-tree的多维度联合点查询图。
图10是本发明的基于Md-tree的多维度联合范围查询图。
具体实施方式
以下结合说明书附图对本发明的技术方案做进一步的详细说明。
本发明包括:建立索引机制的前序步骤及根据建立的索引机制进行的查询索引步骤;其中查询索引包括多维度联合点查询、多维度联合范围查询及电力调度自动化报文应用层内容和多维度查询。以下具体说明:
一、多维度联合查询索引树Md-tree构建流程,如图6、7、8所示,
对于电力调度自动化报文,首先按到达系统的时间先后顺序日志化存储到报文文件中,同时获得报文时戳、报文文件中的偏移和报文长度,写入报文索引文件,输出该报文在报文中的顺序报文id;
经过对电网流量各业务进行协议分析,得到各业务的特征码,从而建立语义模式库。识别引擎根据语义模式库对电力调度自动化报文进行识别,然后根据识别结果选择不同的业务插件进行深层次的语义匹配。如104规约业务的语义包括但不局限于以下这些:帧类型、公共地址、传送原因、通道码等。业务插件就负责匹配每个业务的语义信息。
识别引擎中的业务插件支持定制化,即根据用户需求增加业务插件,从而丰富了识别规则。
依据业务的多维度定制化插件的需求分析报文,提取二层、三层、四层和应用层的多维度信息,按各个单个维度使用skiplist进行排序。
对于确定的多维度为n时,多维度联合查询索引树Md-tree的索引子树数最大为:(n为偶数时)或(n为奇数时)。
对于多维度联合查询索引树Md-tree的每个索引子树在内存中构建时,采用skiplist进行排序插入。
当报文文件的大小、报文个数或时间范围阈值由任意一个条件满足时,将内存中的索引子树永久化为磁盘索引文件存储:
a)将单个维度的排序写入单维度排序文件;
b)依据单维度排序文件,为skiplist中的排序索引分别获取各个维度值的编码值,构建新的索引;
c)依据新的索引构建bloomfilter数组,写入索引文件;
d)对于新的索引使用bulkloading方法构建kdb树,叶子节点中按照自左而右的方式顺序存储,叶子节点中存储在索引文件中的偏移和报文id个数,在kdb索引树后存储报文id集;
二、基于多维度联合查询索引树Md-tree的查询流程,
1、基于Md-tree的多维度联合点查询,如图9所示,
首先首先打开单维度排序文件,分别获取各个维度值的编码值;
打开对应维度的索引文件将bloomfilter数组读入内存,确认索引文件中是否存在该索引,若不存在,则返回无查询结果;否则,转c);
将kdb索引树读入内存,遍历树查询获得该索引对应的结果在该索引文件中的偏移和报文id个数m,从该索引文件对应的偏移中获取m个报文id集;
打开报文索引文件,获得每一个报文id的报文文件中的偏移和报文长度的结果集,合并连续的报文偏移和报文长度,得到偏移和报文长度的合并集;
打开报文文件,依据报文文件中的偏移和报文长度的合并集,获取报文原始数据。
2、基于Md-tree的多维度联合范围查询,如图10所示,
打开单维度排序文件,分别获取各个确定维度的编码值,获取非确定维度的编码最大值,由此构建范围查询的起始点和结束点,查询大于等于起始点、小于等于结束点之间的报文id集。
打开对应的索引文件,将kdb索引树读入内存,遍历树查询获得大于等于起始点的报文id集在该索引文件中的偏移;获得小于等于结束点的报文id集在该索引文件中的偏移,从该索引文件中获取从起始点的报文id集偏移到结束点的报文id集偏移之间的所有报文id集;
打开报文索引文件,获得每一个报文id的报文文件中的偏移和报文长度的结果集,依据报文偏移排序和合并,得到偏移和报文长度的合并集;
打开报文文件,依据报文文件中的偏移和报文长度的合并集,获取报文原始数据。
电力调度自动化报文应用层内容和多维度查询时,
对于输入的报文应用层内容,经过报文业务语义识别引擎,获得报文的业务类型。
结合对维度,使用上述1中的方法作基于Md-tree的多维度联合点查询或2中的方法作基于Md-tree的多维度联合范围查询。
三、多维度联合查询索引树Md-tree及其实例说明:
对于确定的多维度为n时,构建的索引子树数最大为:(n为偶数时)或(n为奇数时),而不需要个索引子树,使用一次查询可以获得点查询或范围查询结果;当n过大时,可以使用二分降维的方法,使得索引子树分别为使用一次点查询或范围查询和一次交集的方法获得查询结果。
多维度联合查询索引树Md-tree的索引子树的索引在内存中使用skiplist构建,由内存转化为磁盘存储时对于skiplist排序的索引采用bulkloading构建kdb树,使得kdb树的空间使用效率接近100%。
以源IP地址sip(A)、目的地址dip(B)、业务类型feature(C)、应用类型application(D)的4个维度数为例:对于4个维度ABCD的多维度联合查询组合数为即:A、B、C、D、AB、AC、AD、BC、BD,CD、ABC、ABD、ACD、BCD、ABCD。
本发明中,以上述ABCD的4个维度为例,多维度联合查询索引树Md-tree的索引子树数为具体为:ABCD、BCD、CDA、DAB、AC、BD。对于上述6个多维度联合查询索引树Md-tree的索引子树,作多维度联合查询的点查询的有6种:ABCD、BCD、CDA、DAB、AC、BD;作维度联合查询的范围查询的有9种:A、AB、ABC、B、BC、C、CD、D、DA。上述的6种点查询和9种范围查询能够完成4个维度ABCD的15种多维度联合查询,但不需要交集处理。
多维度联合查询索引树Md-tree的6个索引子树因为没有内存空间浪费或磁盘空间浪费,空间使用效率优于专利[2]一种网络流量数据索引方法及系统中的空间使用效率。当然,引入部分查询的交集处理,多维度联合查询索引树Md-tree的索引子树数采用二分降维方法可以从6降低为4:AB、CD、B、D,这是支持4个维度ABCD的15种多维度联合查询最少索引子树数。
对于上述多维度联合查询索引树Md-tree的4个索引子树,作多维度联合查询的1次点查询的有4种:AB、CD、B、D;作对维度联合查询的1次范围查询的有2种:A、C;多维度联合查询的2次点查询加上1次交集处理的有4种:ABCD、ABD、BCD、BD;多维度联合查询的1次点查询、1次范围查询加上1次交集处理的有4种:ACD、AD、ABC、BC;多维度联合查询的2次范围查询加上1次交集处理的有1种:AC。该种索引文件的设置,能够完成4个维度ABCD的15种多维度联合查询,即使有交集处理,最多只有1次,优于专利[2]一种网络流量数据索引方法及系统中的n-1次交集处理。
以上图6-10所示的一种面向电力调度自动化海量报文的索引方法是本发明的具体实施例,已经体现出本发明实质性特点和进步,可根据实际的使用需要,在本发明的启示下,对其进行形状、结构等方面的等同修改,均在本方案的保护范围之列。
Claims (4)
1.一种面向电力调度自动化海量报文的索引方法,其特征在于包括:建立索引机制的前序步骤及根据建立的索引机制进行的查询索引步骤,其中前序步骤包括:
101)对于电力调度自动化报文,首先按到达系统的时间先后顺序日志化存储到报文文件中,同时获得报文时戳、报文文件中的偏移和报文长度,写入报文索引文件,输出该报文在报文中的顺序报文id;
102)经过对电网流量各业务进行协议分析,得到各业务的特征码,从而建立语义模式库;识别引擎根据语义模式库对电力调度自动化报文进行识别,然后根据识别结果选择对应的业务插件进行深层次的语义匹配;业务插件负责匹配每个业务的语义信息;
103)依据业务的多维度定制化插件的需求分析报文,提取多层多维度信息,按各个单个维度使用skiplist进行排序;
104)构建多维度联合查询索引树,当多维度数为n时,多维度联合查询索引树的索引子树数最大为:(n为偶数时)或(n为奇数时);对于多维度联合查询索引树的每个索引子树在内存中构建时,采用skiplist进行排序插入;
105)当报文文件的大小、报文个数或时间范围阈值的任意一个条件满足时,将内存中的索引子树永久化为磁盘索引文件存储:
a)将单个维度的排序写入单维度排序文件;
b)依据单维度排序文件,为skiplist中的排序索引分别获取各个维度值的编码值,构建新的索引;
c)依据新的索引构建bloomfilter数组,写入索引文件;
d)对于新的索引使用bulkloading方法构建kdb树,叶子节点中按照自左而右的方式顺序存储,叶子节点中存储在索引文件中的偏移和报文id个数,在kdb索引树后存储报文id集;
查询索引包括多维度联合点查询、多维度联合范围查询及电力调度自动化报文应用层内容;
多维度联合点查询包括以下步骤:
201)首先打开单维度排序文件,分别获取各个维度值的编码值;
202)打开对应维度的索引文件将bloomfilter数组读入内存,确认索引文件中是否存在该索引,若不存在,则返回无查询结果;否则,转203);
203)将kdb索引树读入内存,遍历树查询获得该索引对应的结果在该索引文件中的偏移和报文id个数m,从该索引文件对应的偏移中获取m个报文id集;
204)打开报文索引文件,获得每一个报文id的报文文件中的偏移和报文长度的结果集,合并连续的报文偏移和报文长度,得到偏移和报文长度的合并集;
205)打开报文文件,依据报文文件中的偏移和报文长度的合并集,获取报文原始数据;
多维度联合范围查询包括以下步骤:
301)打开单维度排序文件,分别获取各个确定维度的编码值,获取非确定维度的编码最大值,由此构建范围查询的起始点和结束点,查询大于等于起始点、小于等于结束点之间的报文id集;
302)打开对应的索引文件,将kdb索引树读入内存,遍历树查询获得大于等于起始点的报文id集在该索引文件中的偏移;获得小于等于结束点的报文id集在该索引文件中的偏移,从该索引文件中获取从起始点的报文id集偏移到结束点的报文id集偏移之间的所有报文id集;
303)打开报文索引文件,获得每一个报文id的报文文件中的偏移和报文长度的结果集,依据报文偏移排序和合并,得到偏移和报文长度的合并集;
304)打开报文文件,依据报文文件中的偏移和报文长度的合并集,获取报文原始数据;
电力调度自动化报文应用层内容和多维度查询步骤,
401)对于输入的报文应用层内容,经过报文业务语义识别引擎,获得报文的业务类型;
402)结合对应的维度,使用多维度联合点查询方法作多维度联合点查询或多维度联合范围查询方法作多维度联合范围查询。
2.根据权利要求1所述的一种面向电力调度自动化海量报文的索引方法,其特征在于:在102步骤中,建立的语义模式库中语义包括帧类型、公共地址、传送原因、通道码中的一项或多项。
3.根据权利要求1所述的一种面向电力调度自动化海量报文的索引方法,其特征在于:在102步骤中,维数与语义信息数量相对应。
4.根据权利要求1所述的一种面向电力调度自动化海量报文的索引方法,其特征在于:在103步骤中,依据业务的多维度定制化插件的需求分析报文,提取二层、三层、四层和应用层的多维度信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410773275.9A CN104504030B (zh) | 2014-12-12 | 2014-12-12 | 一种面向电力调度自动化海量报文的索引方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410773275.9A CN104504030B (zh) | 2014-12-12 | 2014-12-12 | 一种面向电力调度自动化海量报文的索引方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104504030A CN104504030A (zh) | 2015-04-08 |
CN104504030B true CN104504030B (zh) | 2016-03-09 |
Family
ID=52945428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410773275.9A Active CN104504030B (zh) | 2014-12-12 | 2014-12-12 | 一种面向电力调度自动化海量报文的索引方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104504030B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107767010A (zh) * | 2017-08-04 | 2018-03-06 | 平安科技(深圳)有限公司 | 范围值数据统计方法、电子装置及计算机可读存储介质 |
CN107609190A (zh) * | 2017-10-11 | 2018-01-19 | 南京南瑞继保电气有限公司 | 一种海量电力设备快速检索服务的实现方法 |
CN109064126B (zh) * | 2018-07-18 | 2021-03-26 | 长江勘测规划设计研究有限责任公司 | 基于质量驱动的水电工程计量信息管理方法 |
CN110737747A (zh) * | 2019-09-12 | 2020-01-31 | 苏宁云计算有限公司 | 一种数据操作方法、装置及系统 |
CN113076334B (zh) * | 2020-01-06 | 2024-05-03 | 阿里巴巴集团控股有限公司 | 数据查询方法、索引生成方法、装置及电子设备 |
CN113938162B (zh) * | 2021-10-13 | 2023-01-24 | 广东电网有限责任公司江门供电局 | 一种基于电力传输线的索引时分多址接入方法及装置 |
CN114547380B (zh) * | 2022-01-25 | 2022-11-15 | 北京元年科技股份有限公司 | 数据遍历查询方法、装置、电子设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6859455B1 (en) * | 1999-12-29 | 2005-02-22 | Nasser Yazdani | Method and apparatus for building and using multi-dimensional index trees for multi-dimensional data objects |
CN101853283A (zh) * | 2010-05-21 | 2010-10-06 | 南京邮电大学 | 面向多维数据的语义索引对等网络的构建方法 |
CN102982103A (zh) * | 2012-11-06 | 2013-03-20 | 东南大学 | 一种olap海量多维数据维存储方法 |
-
2014
- 2014-12-12 CN CN201410773275.9A patent/CN104504030B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6859455B1 (en) * | 1999-12-29 | 2005-02-22 | Nasser Yazdani | Method and apparatus for building and using multi-dimensional index trees for multi-dimensional data objects |
CN101853283A (zh) * | 2010-05-21 | 2010-10-06 | 南京邮电大学 | 面向多维数据的语义索引对等网络的构建方法 |
CN102982103A (zh) * | 2012-11-06 | 2013-03-20 | 东南大学 | 一种olap海量多维数据维存储方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104504030A (zh) | 2015-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104504030B (zh) | 一种面向电力调度自动化海量报文的索引方法 | |
CN104820670B (zh) | 一种电力信息大数据的采集和存储方法 | |
AU2017243870B2 (en) | "Methods and systems for database optimisation" | |
CN103678494A (zh) | 客户端同步服务端数据的方法及装置 | |
CN103177094B (zh) | 一种物联网数据清洗方法 | |
CN102332030A (zh) | 用于分布式键-值存储系统的数据存储、管理和查询方法及系统 | |
CN102982103A (zh) | 一种olap海量多维数据维存储方法 | |
CN109213820A (zh) | 一种实现多种类型的数据库融合使用的方法 | |
CN104731945A (zh) | 一种基于HBase的全文检索方法及装置 | |
CN103678694A (zh) | 视频资源的倒排索引文件建立方法及其系统 | |
CN102426587A (zh) | 一种基于复杂产品异构bom的定制查询方法 | |
CN103793493A (zh) | 一种处理车载终端海量数据的方法和系统 | |
CN113986873A (zh) | 一种海量物联网数据模型化的处理、存储与共享方法 | |
CN101710336A (zh) | 一种利用关系中间件加速数据处理的方法 | |
CN106528641A (zh) | 一种数据存储方法、装置及通信网关机 | |
CN104615734B (zh) | 一种社区管理服务大数据处理系统及其处理方法 | |
CN109669975B (zh) | 一种工业大数据处理系统及方法 | |
CN101702219A (zh) | 一种物料信息生成方法和装置 | |
CN103207889A (zh) | 一种基于Hadoop的海量人脸图像的检索方法 | |
CN101710322A (zh) | 一种信息关联的方法和系统 | |
CN104915388A (zh) | 一种基于谱聚类和众包技术的图书标签推荐方法 | |
CN107273462A (zh) | 一种构建HBase集群全文索引方法,数据读取方法以及数据写入方法 | |
CN117056303B (zh) | 适用于军事行动大数据的数据存储方法及装置 | |
CN109165262A (zh) | 一种关系型大表的分片集群系统及其分片方法 | |
CN110019306A (zh) | 一种基于xml格式文件的sql语句查找方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |