CN115051936A - 一种基于多图的连通分量增量计算方法 - Google Patents
一种基于多图的连通分量增量计算方法 Download PDFInfo
- Publication number
- CN115051936A CN115051936A CN202210357034.0A CN202210357034A CN115051936A CN 115051936 A CN115051936 A CN 115051936A CN 202210357034 A CN202210357034 A CN 202210357034A CN 115051936 A CN115051936 A CN 115051936A
- Authority
- CN
- China
- Prior art keywords
- graph
- connected component
- new
- data
- component
- 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.)
- Pending
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 38
- 238000000034 method Methods 0.000 claims description 17
- 230000002776 aggregation Effects 0.000 claims description 5
- 238000004220 aggregation Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 3
- 102100029768 Histone-lysine N-methyltransferase SETD1A Human genes 0.000 description 2
- 101000865038 Homo sapiens Histone-lysine N-methyltransferase SETD1A Proteins 0.000 description 2
- 101150117538 Set2 gene Proteins 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000005206 flow analysis Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008521 reorganization Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Environmental & Geological Engineering (AREA)
- Quality & Reliability (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于多图的连通分量增量计算方法,通过对连通分量进行重新编号,连接形成一张图,再进行计算得到新的连通分量,实现合并含有相同点的不同图后再进行连通分量的计算,解决了在合并图时,需要重新计算连通分量,导致计算时间长、效率低的问题。
Description
技术领域
本发明属于计算机网络流量分析技术领域,具体涉及一种基于多图的连通分量增量计算方法。
背景技术
在网络流量分析过程中,依据大规模流量数据分析网络数据时,在解决不同来源的网络数据的网络归属判断问题以及由网络实效性带来的节点变化问题时,往往需要重新计算连通分量。
在分析网络数据时,对于不同渠道、不同设备获取的网络数据,在需要判断其是否属于同一网络时间时需要经过详细的数据分析,计算连通性时往往无法获得完备的网络归属,所以当判断两组网络数据属于同一物理网络时,需要重新计算连通分量。此时,通常采用的方法是获取所有符合条件的协议数据重新进行计算,然而重新计算会极大地耗费空间和时间资源。
此外,由于网络连通性具有时效性,当原网络数据中的某些节点发生改变时,连通性往往会随之改变,尤其是发生了网络地址重新分配时连通性也会改变。此时,如果需要获取新的连通数据,往往需要去除掉网络状况更改之前的数据,对于这种情况,通常采用的方法是获取所有符合条件的协议数据重新进行计算,同样会耗费大量的时间,造成了资源的浪费。
综上所述,针对上述两种场景,现有技术均是通过获取所有符合条件的协议数据再重新进行计算的方式得到连通性,且此类计算都属于全量计算,这会极大的耗费空间和时间资源。
发明内容
有鉴于此,本发明提供了一种基于多图的连通分量增量计算方法,实现了将现有的连通分量数据进行合并得到新图后再计算得到新的连通分量。
本发明提供的一种基于多图的连通分量增量计算方法,包括以下步骤:
收集现有的连通分量ID形成连通分量集合,且不同图ID所包含的连通分量的ID均不相同;对所述连通分量集合进行聚合操作,将所有连通分量ID对应的图ID收集起来,形成(compontID,Set(图ID));令Set(图ID)中只有一条数据的节点与自身连接形成自连接的边,令Set(图ID)中具有多条数据的节点彼此互联形成互联的边,由此形成新图;对所述新图进行连通分量计算得到Ip与新连通分量ID的数据对。
进一步地,所述对所述连通分量集合进行聚合操作的方式为采用大数据处理框架Spark的reduceByKey方法实现。
进一步地,在所述对所述新图进行连通分量计算得到Ip与新连通分量ID的数据对后,将Ip与新连通分量ID的数据对存储为(IP,新连通分量ID,新图ID)。
进一步地,所述将Ip与新连通分量ID的数据对存储为(IP,新连通分量ID,新图ID)的过程为分成时间阶段进行存储,即先计算所述时间阶段内的连通分量,再对连通分量进行合并后计算全部数据的连通分量。
进一步地,所述时间阶段为一周。
有益效果:
1、本发明通过对连通分量进行重新编号,连接形成一张图,再进行计算得到新的连通分量,实现合并含有相同点的不同图后再进行连通分量的计算,解决了在合并图时,需要重新计算连通分量,导致计算时间长、效率低的问题。
2、本发明通过记录设定时间内的连通分量数据,实现在需要去除某些冗余数据时,将其时间的数据进行合并计算,避免了重新获取所有边再计算,减小了单次计算的时间以及空间占用,使得在去除冗余数据时更加方便、效率。
具体实施方式
下面列举实施例,对本发明进行详细描述。
本发明涉及以下定义及方法:
图ID:用来标记图的索引,所有包含同一图ID的数据,都属于这张图,可在此图上进行图论相关算法的计算,数据类型为整型。
连通分量ID(componentID):用于标记图中的每一连通分量(connectedcomponent)唯一性的索引值,同一连通分量ID内的所有节点都属于同一张图,并且是相互连通的,数据类型为整型。
reduceByKey:为Spark中的聚合方法,使用关联和交换归约函数合并每个键的值。
本发明提供的一种基于多图的连通分量增量计算方法的技术原理是:
假设两个节点n1、n2在合并之前的某张图中互相连通,那么这两个节点在合并后的图中依旧互相连通;假设两个节点n1、n2在图G1中不能连通且分别属于连通分量c1、c2,且存在图Gk,图Gk中存在连通分量c3包含这两个节点,那么合并之后c1、c2、c3中包含的所有节点都是互相连通的;将图中的连通分量化简为节点,节点与节点之间的边化简为连通分量的自连边,合并时不会导致计算连通分量时的信息丢失,可将多个图中的大量点和边化简为连通分量,以及连通分量之间的边。本发明的处理逻辑满足大规模数据的拆分计算的基本思路,因此实现方式采用基于大数据框架思想,实现过程中包含部分大数据处理框架Spark的操作方法以简化难度。
本发明提供的一种基于多图的连通分量增量计算方法,具体包括以下步骤:
步骤1、收集现有的连通分量ID,且保证不同的图ID所包含的连通分量的ID不同。
收集现有的连通分量ID(componentID),并对不同的图ID下的componentID重新编号,使得其不会重复。具体来说,对现有的连通分量集合,将所有(componentID,图ID)转化为(componentID,Set(图ID)),此时每个Set只有一个值。
步骤2、对于现有的连通分量集合,进行reduceBykey操作找出出现在多个图中的IP,得到得到一组(compontID,Set(图ID))。
具体来说,通过执行reduceByKey(fun(set1,set2)=>set1+set2)收集操作,得到一组(compontID,Set(图ID)),实现将所有componentID对应的图ID收集起来。reduceByKey方法聚合componentID相同的所有数据,并通过规约函数将两个集合合并起来。例如((Ip1,(1))、(Ip1,(2))合并之后得到((Ip,(1,2))。
即对于由现有连通分量(IP,set(componentID,图ID))组成的键值(key-value)对,进行reduceByKey操作,将在多个图中出现的IP都找出来,此时reduceByKey的结果为同一IP对应的所有(componentID,图ID)的集合。对于数据中的任何一个IP,对应的集合中包含所有出现过此IP的连通分量ID以及图ID。
然后,将所有图中的componentID取数值上的最大值,记为Cmax,再将不同图下重复的componentID重新编号,由于当前连通分量的最大值为Cmax,那么重新编号时大于Cmax的值都可保证其唯一性,将重新编号后的词典广播到所有计算节点上,在整个分布式集群上应用。
经过上述操作后,得到一组(IP,componentID,图ID),此时不同的图ID对应的componentID都各不相同。
步骤3、将Set中只有一条数据的所有节点与自身连接,形成一条自连接的边。将Set中具有多条数据的节点,flatmap成多个(componentID,图ID)彼此互联的边,由此形成了一张新图。
具体来说,对连通分量重新编号后,对现有的连通分量集合中的图进行重新计算,得到新的连通分量,并将其存储。对于每一条IP而言,将value集合中的所有节点连接一下自身,形成一条自连接的边。将value集合中有多条数据的节点,展开成多个(componentID,图ID)彼此互联的边。这样做的意义是,由于集合中的所有componentID都代表了一个连通分量,那么连通分量内的IP之间互联关系表现出来的情况就是一个自连边。而不属于同一componentID之间的IP的连接关系,则表现为两个componentID之间的互联边。经过此变换形成了一张新图。
例如,一条("192.168.1.100",((5,"图1"),(8,"图2"),(10100,"图3"))的数据,重组之后的edge就是((5->5),(8->8),(10100->10100),(5->8),(5->10100))此时5条边即可保证此图的连通性变换正确,此时新图的连接关系可以完整表现所有IP节点的连接关系。
步骤4、将这张新图进行连通分量计算,可以得到(Ip,新的连通分量ID),更新数据库,存储为(IP,新的连通分量ID,新图ID)。
此外,之前保存的(IP,componentID,图ID)数据保留一段时间,当需要回滚操作时删除(IP,新的连通分量ID,新图ID)即可还原,当确认更新时删除所有旧的图ID对应的数据即可。更新数据库,存储为(IP,新的连通分量ID,新图ID)。此时合并后的连通分量已经计算完成。
合并后的图ID对于计算并没有影响,只是用来标识整张图的索引,具有唯一性,所有包含这一个图ID的IP数据,都属于这张图。例如:(图1,图2)合并为图3,那么对于数据来讲,原始数据应该是一组(IP,连通分量id1,"图1")和一组(IP,连通分量id2,"图2"),最后的结果数据就是一组(IP,连通分量id3,"图3"),"图3"加上IP两个字段构成"唯一索引"。
此外,为了进一步提高存储效率,本发明采用分层存储的方式。
分层存储的方法建立在连通分量合并的基础上,通过分阶段对连通分量进行存储计算,以应对数据的时效性,避免了数据更新删除带来的连通分量全量计算,较好的提高了计算效率。具体步骤如下:计算设定时间内的连通分量,通过合并连通分量后计算全部的连通分量,当需要去除一部分冗余数据时,取出正确的数据进行合并,相比重新计算极大的提升了性能。
例如,当分层存储的方法建立在连通分量合并的基础上,将数据按周划分阶段,对连通分量进行存储计算,以应对数据的时效性,避免了数据更新删除带来的连通分量全量计算,较好的提高了计算效率。具体步骤如下:
S1、计算一周的连通分量;
S2、通过上述合并连通分量后,计算全部的连通分量;
S3、当需要去除一部分冗余数据,那么取出正确的数据,进行合并即可。
综上,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于多图的连通分量增量计算方法,其特征在于,包括以下步骤:
收集现有的连通分量ID形成连通分量集合,且不同图ID所包含的连通分量的ID均不相同;对所述连通分量集合进行聚合操作,将所有连通分量ID对应的图ID收集起来,形成(compontID,Set(图ID));令Set(图ID)中只有一条数据的节点与自身连接形成自连接的边,令Set(图ID)中具有多条数据的节点彼此互联形成互联的边,由此形成新图;对所述新图进行连通分量计算得到Ip与新连通分量ID的数据对。
2.根据权利要求1所述的连通分量增量计算方法,其特征在于,所述对所述连通分量集合进行聚合操作的方式为采用大数据处理框架Spark的reduceByKey方法实现。
3.根据权利要求1所述的连通分量增量计算方法,其特征在于,在所述对所述新图进行连通分量计算得到Ip与新连通分量ID的数据对后,将Ip与新连通分量ID的数据对存储为(IP,新连通分量ID,新图ID)。
4.根据权利要求3所述的连通分量增量计算方法,其特征在于,所述将Ip与新连通分量ID的数据对存储为(IP,新连通分量ID,新图ID)的过程为分成时间阶段进行存储,即先计算所述时间阶段内的连通分量,再对连通分量进行合并后计算全部数据的连通分量。
5.根据权利要求4所述的连通分量增量计算方法,其特征在于,所述时间阶段为一周。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210357034.0A CN115051936A (zh) | 2022-03-31 | 2022-03-31 | 一种基于多图的连通分量增量计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210357034.0A CN115051936A (zh) | 2022-03-31 | 2022-03-31 | 一种基于多图的连通分量增量计算方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115051936A true CN115051936A (zh) | 2022-09-13 |
Family
ID=83157588
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210357034.0A Pending CN115051936A (zh) | 2022-03-31 | 2022-03-31 | 一种基于多图的连通分量增量计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115051936A (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105631210A (zh) * | 2015-12-28 | 2016-06-01 | 南京邮电大学 | 一种基于MapReduce的有向图强连通分量分析方法 |
US20160154800A1 (en) * | 2014-11-28 | 2016-06-02 | International Business Machines Corporation | Text representation method and apparatus |
CN107193899A (zh) * | 2017-05-10 | 2017-09-22 | 华中科技大学 | 一种图算法友善的强连通图划分方法 |
US20180060038A1 (en) * | 2016-08-24 | 2018-03-01 | International Business Machines Corporation | Switching matrix representation for an incremental algorithm computing connected components |
CN110599278A (zh) * | 2018-06-12 | 2019-12-20 | 百度在线网络技术(北京)有限公司 | 聚合设备标识符的方法、装置和计算机存储介质 |
CN110622156A (zh) * | 2017-05-12 | 2019-12-27 | 华为技术有限公司 | 用于查询大图的增量图计算 |
CN111899117A (zh) * | 2020-07-29 | 2020-11-06 | 之江实验室 | 应用于社交网络的k边连通分量挖掘系统及挖掘方法 |
CN112114984A (zh) * | 2020-09-17 | 2020-12-22 | 清华大学 | 图数据处理方法及装置 |
CN112883241A (zh) * | 2021-03-19 | 2021-06-01 | 中国人民解放军国防科技大学 | 基于连通分量生成优化的超级计算机基准测试加速方法 |
KR20210146709A (ko) * | 2020-05-27 | 2021-12-06 | 주식회사 일루넥스 | 데이터 시각화 제공을 위한 그래프 관계망 제공 방법 및 이를 수행하는 시스템 |
CN113849947A (zh) * | 2021-10-15 | 2021-12-28 | 北京航空航天大学 | 一种支持增量更新的时态网络模体计算方法及系统 |
CN114090831A (zh) * | 2020-08-24 | 2022-02-25 | 中关村海华信息技术前沿研究院 | 节点连通性的查询方法、系统、计算机设备及存储介质 |
-
2022
- 2022-03-31 CN CN202210357034.0A patent/CN115051936A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160154800A1 (en) * | 2014-11-28 | 2016-06-02 | International Business Machines Corporation | Text representation method and apparatus |
CN105631210A (zh) * | 2015-12-28 | 2016-06-01 | 南京邮电大学 | 一种基于MapReduce的有向图强连通分量分析方法 |
US20180060038A1 (en) * | 2016-08-24 | 2018-03-01 | International Business Machines Corporation | Switching matrix representation for an incremental algorithm computing connected components |
CN107193899A (zh) * | 2017-05-10 | 2017-09-22 | 华中科技大学 | 一种图算法友善的强连通图划分方法 |
CN110622156A (zh) * | 2017-05-12 | 2019-12-27 | 华为技术有限公司 | 用于查询大图的增量图计算 |
CN110599278A (zh) * | 2018-06-12 | 2019-12-20 | 百度在线网络技术(北京)有限公司 | 聚合设备标识符的方法、装置和计算机存储介质 |
KR20210146709A (ko) * | 2020-05-27 | 2021-12-06 | 주식회사 일루넥스 | 데이터 시각화 제공을 위한 그래프 관계망 제공 방법 및 이를 수행하는 시스템 |
CN111899117A (zh) * | 2020-07-29 | 2020-11-06 | 之江实验室 | 应用于社交网络的k边连通分量挖掘系统及挖掘方法 |
CN114090831A (zh) * | 2020-08-24 | 2022-02-25 | 中关村海华信息技术前沿研究院 | 节点连通性的查询方法、系统、计算机设备及存储介质 |
CN112114984A (zh) * | 2020-09-17 | 2020-12-22 | 清华大学 | 图数据处理方法及装置 |
CN112883241A (zh) * | 2021-03-19 | 2021-06-01 | 中国人民解放军国防科技大学 | 基于连通分量生成优化的超级计算机基准测试加速方法 |
CN113849947A (zh) * | 2021-10-15 | 2021-12-28 | 北京航空航天大学 | 一种支持增量更新的时态网络模体计算方法及系统 |
Non-Patent Citations (2)
Title |
---|
周应华;蔡雪梅;: "无线传感器网络增配节点实现双连通并优化中继路径", 重庆邮电大学学报(自然科学版), no. 03, 15 June 2009 (2009-06-15) * |
李云鹏;艾中良;刘忠麟;高泽;潘爽;: "基于混合流量数据的连通分量计算技术", 信息技术, no. 01, 17 January 2020 (2020-01-17) * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11487772B2 (en) | Multi-party data joint query method, device, server and storage medium | |
CN104123288A (zh) | 一种数据查询方法及装置 | |
CN110389950B (zh) | 一种快速运行的大数据清洗方法 | |
CN106777163A (zh) | 基于红黑树的ip地址所属地查询方法及系统 | |
CN106383830B (zh) | 一种数据检索方法及设备 | |
Cheng et al. | Efficient event correlation over distributed systems | |
CN108205569A (zh) | 用于更新配置管理数据库的方法和装置 | |
CN111737483A (zh) | 智能电网大数据知识图谱的构建方法 | |
CN104408067A (zh) | 一种多树结构的数据库设计方法及装置 | |
CN105302915A (zh) | 基于内存计算的高性能数据处理系统 | |
WO2018082320A1 (zh) | 数据流连接方法及装置 | |
CN115051936A (zh) | 一种基于多图的连通分量增量计算方法 | |
CN109257457B (zh) | 一种基于数据分析进行idc信安系统状态监测的方法 | |
CN111259062A (zh) | 一种能够保证分布式数据库全表查询语句结果集顺序的方法和装置 | |
CN115982177A (zh) | 一种基于树形维度的数据归集的方法、装置、设备及介质 | |
CN115242716A (zh) | 一种基于bgp前缀树的ip地址路由可达性识别方法 | |
CN111369052B (zh) | 简化路网ksp优化算法 | |
CN110866083B (zh) | 一种电力标准结构化地址库的地址稽核方法 | |
US11501020B2 (en) | Method for anonymizing personal information in big data and combining anonymized data | |
EP3793171B1 (en) | Message processing method, apparatus, and system | |
CN109189743B (zh) | 一种面向大流量实时图数据的低资源消耗的超级节点识别过滤方法和系统 | |
CN109828972B (zh) | 一种基于有向图结构的数据集成方法 | |
CN118277456B (zh) | 一种mpp分布式系统中的发起节点输出方法 | |
CN113821896B (zh) | 一种配电网拓扑数据动态加载方法及系统 | |
CN114817262A (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 |