CN112636763B - 一种面向多数据流的分布式实时压缩方法 - Google Patents
一种面向多数据流的分布式实时压缩方法 Download PDFInfo
- Publication number
- CN112636763B CN112636763B CN202011546377.9A CN202011546377A CN112636763B CN 112636763 B CN112636763 B CN 112636763B CN 202011546377 A CN202011546377 A CN 202011546377A CN 112636763 B CN112636763 B CN 112636763B
- Authority
- CN
- China
- Prior art keywords
- data
- sequence
- time
- compression
- cluster
- 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
- 238000007906 compression Methods 0.000 title claims abstract description 45
- 230000006835 compression Effects 0.000 title claims abstract description 45
- 238000000034 method Methods 0.000 title claims abstract description 25
- 239000012634 fragment Substances 0.000 claims abstract description 12
- 238000005259 measurement Methods 0.000 claims description 3
- 238000000638 solvent extraction Methods 0.000 claims description 3
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000013467 fragmentation Methods 0.000 abstract description 5
- 238000006062 fragmentation reaction Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 abstract description 4
- 238000001514 detection method Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明涉及数据流压缩技术,具体涉及一种面向多数据流的分布式实时压缩方法,首先利用相关关系对数据流进行粗粒度的在线分片;使用贪心策略构建了粗粒度的时序数据流在线分片算法,一方面考虑了分片内时序数据流的相关关系,保证了压缩误差以及分组的动态性,另一方面保证了分片长度最大即考虑压缩率。接下来对分片内的数据流进行细粒度的聚类;针对分片内数据特征,从无监督学习角度出发,提出面向时间序列的段聚类算法,不仅可以对分片内读数接近的信号量进行细粒度的分组,还可以标记分组内的核心线段和噪声片段,加快了后期代表序列选择的过程。最后在聚簇中选择有代表性的数据流序列进行存储及压缩;提高了压缩效果和效率。
Description
技术领域
本发明属于数据流压缩技术领域,尤其涉及一种面向多数据流的分布式实时 压缩方法。
背景技术
随着传感器技术的蓬勃发展,越来越多的领域开始对系统内的数据进行监控 (例如空气质量检测,交通状态监控,气候变化检测等)。然而为了提供近乎实 时的监测,传感器必须以高频率进行采样,这就产生了前所未有的大规模流式时 序数据。越来越多的学者提出这些数据必须经过有效地汇总,存储和检索才能被 更好的挖掘、利用。直观看来,这些序列结构存在时间上的相关性或者序列间的 相关性,利用此特性进行时间序列的压缩一方面可以减少存储开销,另一方面也不会影响监控或者分析的性能。
因而面向多条时序数据流实时压缩的目的在于在一个拥有海量分布式数据 源(例如分布式传感器)、每个数据源都实时产生监测数据,但是数据间存在动 态关系的在线数据流压缩任务中,实时地在数据中划分时间间隔,并在该间隔中 依据数据流的相关性,进一步产生动态分组,并在分组中识别出有代表性的序列 来表示剩余的序列而不是存储全部序列值。通常情况下,该问题可以作如下定义: 给定K条规则时序数据TSi,...,TSk(实时产生),我们的目标是产生对应的代表信 号集合L={L1,L2,...,Ll}来代替其真实值,从而实现压缩。
发明内容
针对背景技术存在的问题,本发明提供一种面向多数据流的分布式实时压缩 方法。
为解决上述技术问题,本发明采用如下技术方案:一种面向多数据流的分布 式实时压缩方法,包括:
S1.利用相关关系对数据流进行粗粒度的在线分片;
S2.对分片内的数据流进行细粒度的聚类;
S3.在聚簇中选择有代表性的数据流序列进行存储及压缩。
在上述的面向多数据流的分布式实时压缩方法中,S1的实现具体包括:以 多条数据流为基础,在master节点上运行粗粒度的关系划分算法,识别缓冲区 内的时序数据相关关系改变的变更点,基于起始点和变更点形成微批;master 节点将微批内的全部数据点发送到worker节点。
在上述的面向多数据流的分布式实时压缩方法中,S2的实现具体包括: worker节点接收到分片内数据后,运行细粒度的聚类算法,分片内数据按照基于 段的距离度量,将相近的时序片段划分到一个簇内,保证每个簇内至少存在一条 代表序列,使其在压缩误差内代表此簇的剩余序列。
在上述的面向多数据流的分布式实时压缩方法中,S3的实现具体包括:每 个簇生成一条最优代表序列表示簇内的剩余序列,通过存储代表序列的时间序列 进行压缩。
与现有技术相比,本发明1、显著提高了数据流的压缩效果(压缩比例), 不同于依靠用户预定义的数据标签进行分组的在线多数据流压缩技术,本发明利 用无监督学习技术可以自动发掘多数据流间复杂的相关关系,提高了数据流的压 缩比例;2、本发明更适用于在在线环境下产生的时序数据流进行压缩,由于在线产生的数据规模大,且每个传感器监测发送读数的时间间隔较短,在基站汇总 所有传感器数据时势必面临着数据吞吐量巨大的困难,而在线处理任务又要求我 们在较低延迟下获得目标输出。本发明中利用分布式spark集群进行数据流的运 算很好地弥补了这个缺陷。解决了在线场景下的数据压缩问题,同时提高了压缩 效果和效率。
附图说明
图1为本发明实施例的流程图;
图2为本发明实施例的时序数据聚类算法流程图。
具体实施方式
下面将结合本发明实施例对本发明实施例中的技术方案进行清楚、完整地描 述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。 基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所 获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可 以相互组合。
下面结合具体实施例对本发明作进一步说明,但不作为本发明的限定。
本实施例提出了一种面向多数据流的分布式实时压缩方法,该方法首先基于 压缩问题本质,使用贪心策略构建了粗粒度的时序数据流在线分片算法,一方面 考虑了分片内时序数据流的相关关系(保证压缩误差以及分组的动态性),另一方面保证了分片长度最大(考虑压缩率);然后,针对分片内数据特征,从无监 督学习角度出发,提出新的面向时间序列的段聚类算法,该算法不仅可以对分片 内读数接近的信号量进行细粒度的分组,还可以标记分组内的核心线段和噪声片 段,从而加快了后期选择代表序列的进程;最后,在代表序列的选择上该方法使用最小集合覆盖问题的近似解法,该算法可以在logk(k是线段数量)时间内返回 代表序列的集合。通过存储代表序列的值而非原始的序列值可以实现对原始数据 的压缩,并且可以满足给定的压缩误差。相比于当前的多数据流压缩方法,本实 施例突破性地解决了如何在在线环境下高效挖掘多数据流的相关关系,并利用相 关关系进行压缩。
本实施例是通过以下技术方案来实现的:一种面向多数据流的分布式实时压 缩方法,在分布式环境下实时计算,包括以下步骤:
步骤1:利用相关关系对数据流进行粗粒度的在线分片;
步骤2:对分片内的数据流进行细粒度的聚类;
步骤3:在聚簇中选择有代表性的数据流序列进行存储及压缩。
本实施例面向多数据流的分布式实时压缩方法,以多条数据流为基础,首先 在master节点上运行粗粒度的关系划分算法,它可以识别缓冲区内的时序数据 相关关系改变的时间点,基于起始点和此时间点形成微批。然后,master节点 将微批内的全部数据点发送到worker节点;worker节点接收到分片内数据后, 运行细粒度的聚类算法,将分片内数据按照本实施例定义的基于段的距离度量, 将相近的时序片段划分到一个簇内,保证每个簇内都存在一(多)条代表序列使 其可以在压缩误差内代表此簇的剩余序列。最后,每个簇生成一条最优代表序列 对簇内的剩余序列进行表示,因此可以通过存储代表序列而非全部的时间序列进 行压缩。由于此聚类过程可以分布式运行在各个slave节点上,并且经过分片后的数据量明显较少,因此可以快速完成计算过程,满足在线场景。
具体实施时,如图1所示,一种面向多数据流的分布式实时压缩方法,包括 以下步骤:
步骤1:利用相关关系对数据流进行粗粒度的在线分片;
针对多条时序数据流压缩问题中检测算法以及变更点的特有特征,提出了新 的变更点检测算法;然后提出了基于这种变更点检测算法以及滑动窗口算法的在 线分片方法。
变更点是指时间序列数据中不同状态之间的发生过渡的时间点。而在本实施 例的问题设置中,它和以往定义主要有以下区别:(1)所有的时序数据点包括变 更点都是实时到来的,(2)变更点应该在多条时序数据之间的相关关系发生变化 时被识别。
因此,变更点发生在数据分组发生变化的时刻,而这往往伴随着数据值的“跃迁”,即数据点vi在i+1时刻自身的观察值vi+1相对其上一时刻有很大波动,这样 的数据点ti+1叫做值变更点(value-change point)。表示为通常参数 c是用户预先设置的值。
使用值变更点有助于更快的形成数据分片。具体做法是从初始点开始,遍历 所有的值变更点,统计其组成的各个窗口内时序线的密度。基于贪心策略,(1) 窗口大小越长越好,因为这样可以保证产生最少的时间片划分。由于每个时间片 划分内都采用最佳近似的代表序列进行代表,因此最少的时间片可以产生最高的 压缩率;(2)由于每个时间片内的相关关系同时也是会影响压缩效果,所以本实 施例同样需要关注相关关系,并且使用类似网格密度的思想来粗略考虑相关关系。假设在单位时间内,网格内的线密度大小可以衡量相关关系。网格是这样形 成的,由起始点到值变更点的时间间隔组成矩形的长,由用户指定的参数h作为 矩形的高,矩形的中线是上一个分片内对应矩形内的序列的最大值和最小值的均 值。对于初始分片,这一选择是随机的。对于正常情况来讲,该网格内的密度应 该是非单调递减的,而当不同网格内的密度出现递减的情况就认为发生了相关关 系变更点(correlation-change point)。
步骤2:对分片内的数据流进行细粒度的聚类。
由于数据量巨大,并且数据都是实时生成,采用有监督方式或者人工标注对 时序数据分类是不可能的。所以采用基于时序数据分片框架对时序数据自动分组 的无监督聚类技术。首先,使用针对时间片内时序数据的距离度量方式,然后采 用基于密度的时序数据流在线聚类算法(TSDBSCAN),这种算法不仅可以发现 任意形状的簇,有助于发现异常的读数值,还可以融合压缩误差。
时序数据聚类过程需要定义聚类时序线段中使用的距离函数,针对多个分片 内的时序数据特征,提出基于时序片段的距离定义,它由两部分组成:垂直距离 d⊥和角度距离dθ。这些定义由轨迹聚类中的相关概念演化而来,如图2所示。
通过定义1和2正式定义这两个组成部分。假设有两个时序数据片段Li=siei和Lj=sjej。在这里si,ei,sj和ej代表d维点。由于所产生的时序分片数据都是 一样长度,所以si,ei,sj和ej之间的时间间隔相等。
定义1:Li和Lj之间的垂直距离定义为公式(1)。
定义2:Li和Lj之间的角度距离定义为公式(2)。
这两个组件可以使用向量操作计算得到。让表示由两个点a和b构成的 向量。公式(2)中的θ可以使用公式(3)计算。
确定两个线段之间的距离如下:
dist(Li,Lj)=w⊥·d⊥(Li,Lj)+wθ·dθ(Li,Lj) (4)
公式(4)中的权重w⊥,wθ取决于具体应用。在这里,本实施例将这些权重均 等地设置为默认为1。通常,此默认值适用大多数数据集。
本实施例时序数据线段聚类算法,最初,所有线段均假定为未分类的。随着 算法的进行,它们被标记为属于某个簇或者噪声片段。该算法包括两个步骤:在 第一步中,该算法将计算每个未分类线段L的“邻域”。如果L被确定为核心线段,该算法将继续执行第二步扩展集群。到这一步为止,集群目前只包含Nε(L)。在 第二阶段,算法来计算核心线段的相连集合。函数ExpandCluster()计算直接 密度可达的线并将其添加到当前的簇。如果新标记的线段没有标记过,将其添加 到队列Q中以进行更多扩展,因为它可能是核心线段;否则不能添加到Q,因 为它不是核心线段。最终,形成各个簇并对簇内的核心片段和噪声片段进行标记。
步骤3:在聚簇中选择有代表性的数据流序列进行存储及压缩。
本实施例的目标是在每个分组内,识别出一些有代表性的时序片段(代表序 列),使得分组内的剩余序列可以由这些代表序列进行表示,这样就可以只存储 代表序列而不是全部数据,从而达到压缩目的。将这些数据片段聚类并且每个分 组中都会有一条/多条核心片段,并且对边缘的序列进行了噪声标记。然后寻找核心片段以及噪声片段的集合作为代表序列,来覆盖簇内剩余的全部片段。
其优化目标是寻找核心/噪声片段的集合,使其可以覆盖簇内全部的片段, 并且集合内片段的数量最少。可以抽象为经典集合覆盖(Set Cover)问题。通 常,经典的集合覆盖问题的定义如下:令X={1,2,...,n}表示由n个元素组成的全集,S表示一组X的子集构成的集合,S包含的元素个数为m个。一个覆盖就是 S中一些子集的组合使它们的并集是X,每一个组合都会有一个与之相关的代价, 问题目标是找到最小代价的子集组合。
以上仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范 围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书内容所作出 的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围 内。
Claims (1)
1.一种面向多数据流的分布式实时压缩方法,其特征是,包括:
S1.利用相关关系对数据流进行粗粒度的在线分片;
S2.对分片内的数据流进行细粒度的聚类;
S3.在聚簇中选择有代表性的数据流序列进行存储及压缩;
S1的实现具体包括:以多条数据流为基础,在master节点上运行粗粒度的关系划分算法,识别缓冲区内的时序数据相关关系改变的变更点,基于起始点和变更点形成微批;master节点将微批内的全部数据点发送到worker节点;
S2的实现具体包括:worker节点接收到分片内数据后,运行细粒度的聚类算法,分片内数据按照基于段的距离度量,将相近的时序片段划分到一个簇内,保证每个簇内至少存在一条代表序列,使其在压缩误差内代表此簇的剩余序列;
S3的实现具体包括:每个簇生成一条最优代表序列表示簇内的剩余序列,通过存储代表序列的时间序列进行压缩。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011546377.9A CN112636763B (zh) | 2020-12-24 | 2020-12-24 | 一种面向多数据流的分布式实时压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011546377.9A CN112636763B (zh) | 2020-12-24 | 2020-12-24 | 一种面向多数据流的分布式实时压缩方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112636763A CN112636763A (zh) | 2021-04-09 |
CN112636763B true CN112636763B (zh) | 2024-05-17 |
Family
ID=75324168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011546377.9A Active CN112636763B (zh) | 2020-12-24 | 2020-12-24 | 一种面向多数据流的分布式实时压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112636763B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113114266B (zh) * | 2021-04-30 | 2022-12-13 | 上海智大电子有限公司 | 一种综合监控系统实时数据化简压缩方法 |
CN113806374A (zh) * | 2021-09-30 | 2021-12-17 | 上海健交科技服务有限责任公司 | 一种面向大数据的数据流式缓存方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107067028A (zh) * | 2017-03-16 | 2017-08-18 | 华南理工大学 | 基于分布式聚类的网络流量时间序列预测方法 |
CN107480708A (zh) * | 2017-07-31 | 2017-12-15 | 微梦创科网络科技(中国)有限公司 | 一种复杂模型的聚类方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130031063A1 (en) * | 2011-07-26 | 2013-01-31 | International Business Machines Corporation | Compression of data partitioned into clusters |
US10042911B2 (en) * | 2013-07-30 | 2018-08-07 | International Business Machines Corporations | Discovery of related entities in a master data management system |
-
2020
- 2020-12-24 CN CN202011546377.9A patent/CN112636763B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107067028A (zh) * | 2017-03-16 | 2017-08-18 | 华南理工大学 | 基于分布式聚类的网络流量时间序列预测方法 |
CN107480708A (zh) * | 2017-07-31 | 2017-12-15 | 微梦创科网络科技(中国)有限公司 | 一种复杂模型的聚类方法及系统 |
Non-Patent Citations (1)
Title |
---|
Context-Aware Deep Feature Compression for High-Speed Visual Tracking;Jongwon Choi等;《IEEE》;20181216;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112636763A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107682319B (zh) | 一种基于增强型角度异常因子的数据流异常检测及多重验证的方法 | |
CN112636763B (zh) | 一种面向多数据流的分布式实时压缩方法 | |
US20210019557A1 (en) | System for distributed data processing using clustering | |
WO2022001918A1 (zh) | 构建预测模型的方法、装置、计算设备和存储介质 | |
CN115577275A (zh) | 一种基于lof和孤立森林的时序数据异常监测系统及方法 | |
CN106777093B (zh) | 基于空间时序数据流应用的Skyline查询系统 | |
CN111694879A (zh) | 一种多元时间序列异常模式预测方法及数据采集监控装置 | |
CN109542944B (zh) | 基于时序因果关系分析的智能家居用户操控行为推荐方法 | |
CN108667684B (zh) | 一种基于局部向量点积密度的数据流异常检测方法 | |
CN110276966B (zh) | 交叉口信号控制时段划分方法 | |
Meng et al. | A two-stage short-term traffic flow prediction method based on AVL and AKNN techniques | |
CN107181776B (zh) | 一种数据处理方法及相关设备、系统 | |
CN113344128B (zh) | 一种基于微簇的工业物联网自适应流聚类方法及装置 | |
CN109753591A (zh) | 业务流程预测性监控方法 | |
CN103699771B (zh) | 一种冷负荷预测的情景-聚类方法 | |
KR102090239B1 (ko) | 계층융합통계정보를 활용한 고속이상탐지방법 및 그 시스템 | |
CN109919234A (zh) | 一种基于系统聚类的加权马尔科夫滑坡预警方法 | |
CN106980874B (zh) | 一种面向配网大数据的多时态维度数据融合方法 | |
CN112633314A (zh) | 一种基于多层采样的主动学习溯源攻击方法 | |
CN112395608A (zh) | 网络安全威胁监测方法、装置和可读存储介质 | |
CN117149746B (zh) | 基于云原生和存算分离的数据仓库管理系统 | |
KR20130139547A (ko) | 데이터 샘플링 방법 및 장치 | |
Yang et al. | A self-adaptive sliding window technique for mining data streams | |
CN109800231A (zh) | 一种基于Flink的实时轨迹co-movement运动模式检测方法 | |
Zhang et al. | An Algorithm for Mining Gradual Moving Object Clusters Pattern From Trajectory Streams. |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |