美文网首页
流计算(二):流计算解决的问题

流计算(二):流计算解决的问题

作者: longLiveData | 来源:发表于2020-03-03 18:16 被阅读0次

流数据操作

流计算系统是针对数据流的转化或转移处理,所以实现流数据操作更加直观。

流数据操作的内容主要包括了三类:
-对数据进行清洗、规整和结构化
-对不同来源的数据进行关联及合并
-在不同系统之间搬运数据。

这三类操作通过一些常用的流式API就可以实现。

单点特征计算

单点特征是指要么可以通过黑白名单,要么能够通过特定的规则计算而得到答案,同时实现起来相对简单的问题。比如:

-一个事件中包含的用户是否在黑名单中?
-发生事件的设备是否是模拟器?
-温度传感器传来的温度事件是否已经超出正常温度范围?
-发送消息设备的IP是否是代理?
-一次交易的金额是否属于大额交易?

时间维度聚合特征计算

这类特征的特点是它们均需要在时间维度对数据进行聚合运算。此类特征在诸如风控、预警、监控等各种场景都非常广泛的应用。比如:

-相同设备的1小时内注册事件次数
-相同银行卡号的7天交易事件次数
-过去30天内同一IP段上交易金额
-过去1分钟高温事件的次数
-过去5分钟日志告警事件的次数等

关联图谱特征计算

除了时间维度的聚合分析外,还经常进行“空间”维度的聚合分析。这种分析又被称为“关联图谱”分析。

比如在一些风控场景中,我们需要计算用户账户使用IP的个数、同一手机号码发生在不同城市的个数、同一设备上关联用户的数目、同一用户关联设备的数目、同一推荐人推荐的用户数等特征。

以设备关联用户数为例,如果某个设备上注册的用户很多,那么它的风险就比较高,毕竟正常情况下我们都只会用自己的手机注册自己的账号,而不会是帮其他几十、上百人注册账号的。

事件序列分析

数据流中的数据不是单纯在时间上有着先来后到的关系,而是在数据和数据之间也有着联系。

考虑用户在手机上安装新APP的过程,它可能是先点击了某个广告链接,然后下载并安装了APP,最后成功注册了账号。从“点击”到“下载”,再到“安装”和“注册”,这就完成了一次将广告转化为用户的过程。

再比如在网络欺诈识别场景中,如果用户在新建账号后,立马发生大量交易行为。那么这种“新建账号”到“10分钟内5次交易”的行为就是种非常可疑的行为了。

诸如此类从数据流表示的事件流中,检测并筛选出符合特定模式或行为的事件序列的过程,称之为复杂事件处理(Complex Event Processing,简称为CEP)。CEP也是流计算经常被用来解决的问题。

模型学习和预测

随着流计算越来越流行和普及,越来越多的原本主要针对离线批式数据的统计和机器学习模型也被用于流数据。

比如在风控系统中,当我们计算好特征后,还需要把这些特征输入评分模型进行风险评分。根据不同的使用场景,使用的评分模型可能是基于规则的模型,也可能是基于机器学习的模型。传统的机器学习模型主要通过离线训练而来,但现在越来越多的模型会直接基于流数据在线训练和更新。

再比如在异常检测应用中,我们会在线统计并估计变量的分布参数,然后根据训练出的分布模型判断变量之后的取值是否属于异常。这种同时在线更新和预测的做法,在流计算应用中也越来越常见。

相关文章

  • 流计算(二):流计算解决的问题

    流数据操作 流计算系统是针对数据流的转化或转移处理,所以实现流数据操作更加直观。 流数据操作的内容主要包括了三类:...

  • 流计算(四):流计算框架

    目前的开源流计算框架有许多,比如Apache Storm、Spark Streaming、Apache Samza...

  • 流计算

    什么是流计算: 在当下这个数据容量呈几何倍暴增的时代背景下,数据的价值在其产生之后,将随着时间的流逝,逐渐降低。因...

  • Flink流式计算里的时间和watermark机制

    一 流计算对“批计算”的优势: “流计算”是相对于“批计算”来的,MapReduce,Spark底层的计算方式...

  • iOS开发float出现nan情况

    问题: 在开发某个视频流计算的时候,计算在线视频为float类型,出现了值为nan的情况。 解决: 由于数据越界产...

  • 流计算(一):流计算与其优势

    流计算模式 传统的数据处理流程为:先收集数据,然后将数据放到数据库中,通过查询数据库中的数据,得到信息或进行下一步...

  • Apache Flink 漫谈系列 - 持续查询(Continu

    实际问题 我们知道在流计算场景中,数据是源源不断的流入的,数据流永远不会结束,那么计算就永远不会结束,如果计算永远...

  • Flink window机制

    问题 window是解决流计算中的什么问题? 怎么划分window?有哪几种window?window与时间属性之...

  • 大数据开发:Flink框架的State状态简介

    Flink的出现,主攻流计算场景,提供有状态的流计算,尤其是在面对大规模实时流计算上,性能值得称赞。而Flink的...

  • flink sql

    SQL的很多概念无法直接映射到流计算,这就是在流计算上定义SQL的难点。 为了在流计算上定义SQL,我们需要引入几...

网友评论

      本文标题:流计算(二):流计算解决的问题

      本文链接:https://www.haomeiwen.com/subject/yjcklhtx.html