00:00
梳理了一下流处理或者说整个数据处理的发展演变,那接下来呢,我们再来看一下流处理它本身在架构上能够有哪些具体的应用啊,这个其实跟我们之前讲link的应用是有关的,这是link官网上给大家列举出的几种典型的。应用架构什么样应用架构呢?一种就叫事件驱动型应用,什么叫事件驱动型啊,其实简单来看的话,这就跟我们之前所说的事物处理这个是一样的吗?事物处理不就是有一个事件来了,然后我这里边结合这个数据库里边的信息做存储、存取,然后返回一个响应吗?诶那现在其实也是一样,你看传统事物是这样的啊,读写这个外部数据库,然后做一个操作,触发一个操作,现在这个流处理器是怎么样做呢?啊,那就是同样也是读取事件,只不过这个事件呢,我们是从不同的这个外部系统去做摄取的。也就是说我当前并不是一个web服务器了,不是直接去接收网络请求的,而是比方说我们可以从哪里去读呢?诶,大家看这个读事件日志,这明显就像一个消息队列一样,所以最常见的一个应用就是link直接连接一个消息队列,那当然。
01:17
典型的就是卡夫卡了啊,所以弗林可跟卡夫卡的连接是一个非常常见的整个这个架构的设计啊,比方说我们可以把这个事件的日志写入到卡夫卡里边,然后弗林就从卡卡里边去读取数据,摄取数据,然后呢,本地有这样的一个状态啊,我们这里边就取代了原先的关系数据库,然后这个状态进行读写,进行操作之后呢,就可以触发一个外部的操作,或者也可以把。计算的结果再次写入到啊卡夫卡或者说其他的一些外部系统当中,然后再由其他的应用去做一个读取啊,所以大家看就是当前这个flink这样的一个有状态流处理的应用啊,跟我们之前传统的。
02:06
关系数据库里边的这种事物型的应用啊,事物型的响应是非常非常的像的。那当然这里面还有一个持久化存储,这主要是为了故障恢复考虑。这是最常见的一个使用,另外还有呢,就是做数据分析,因为之前我们不是说也可以做o lap吗?哈杜op Spark啊,大数据处理引擎跟have结合起来做这个离线数仓,最典型的一个应用是什么呢?诶,那就是我们把这个事件先记录啊,先把它放在某一个存储介示里边,然后把它读取出来,定期的去跑一个CQL查询,查询出来的结果可以写入到数据库,也可以写入到这个文件系统,写入到hfs,或者直接就生成一个数据报告,这是大家比较熟悉的。离线处理,这是一个批处理,那现在如果我们用flink啊,有状态的流处理去处理这种分析应用,那会变成什么样呢?那自然就变成了一个实时的。
03:03
分析实时的查询啊,所以这里我们可以把实时的事件还是啊,比方说放在了卡夫卡里边,或者呢,比方说我们放在MYSQL里面,我们可以去获取它的changenchlo呀,可以用有一些其他的这些工具啊,我们可以用这个flink,有这个CDC啊,我们可以直接去连接对应的一些外部数据库,读取它的这个变化,然后呢,把它作为这样的一个实时事事件。输入给流处理器,输入给flink flink就进行这样的一个查询、计算、分析处理,然后呢就可以去更新数据库,也可以去生成实施报告。啊,这就是这个数据分析应用,所以大家看到就是这种分析型应用啊,有了这种flink这样的大数据处理框架之后,这就为我们做实时数仓提供了一种可能。啊,那么现在最常见的实时数仓搭建基于什么来搭呢?就是基于flink来搭建。
04:03
最后还有一个是数据管道,数据管道的话,这个就非常简单了,那就是一个管子嘛,呃,就相当于我们这里边就是。某一个。管道进来,然后这里边并可去做一个处理,然后再基于这样的一个管道出去。其实整体这个架构架构有点像我们前面就是只看。这一部分。内容,这不就是一个管道吗?哎,所以之前大家比较熟悉的这个操作,可能用这个数据管道是做这个ETL,我们数据来了之后,直接把它做一些清洗,做一些处理,然后直接就把它输出到另的一个存储截这里边了,或者把它输出到另外一个这个卡夫卡的这个topic下边啊,这样很容易能够实现这样的一个应用,用flink也可以实现类似的需求。这就是link的应用场景。
我来说两句