flink基础

flink介绍

flink概述

image-20220416192845297

flink中的批和流

****批处理的特点****是有界、持久、大量,非常适合需要访问全部记录才能完成的计算工作,一般用于离线统计。

****流处理的特点****是无界、实时, 无需针对整个数据集执行操作,而是对通过系统 传输的每个数据项执行操作,一般用于实时统计。

而在Flink中,一切都是由流组成的,Flink认为有界数据集是无界数据流的一种特例,离线数据是有界限的流,实时数据是一个没有界限的流,这就是所谓的有界流和无界流。

****无界流:****意思很明显,只有开始没有结束。必须连续的处理无界流数据,也即是在事件注入之后立即要对其进行处理。不能等待数据到达了再去全部处理,因为数据是无界的并且永远不会结束数据注入。处理无界流数据往往要求事件注入的时候有一定的顺序性,例如可以以事件产生的顺序注入,这样会使得处理结果完整。

****有界********数据集********:****也即是有明确的开始和结束的定义。有界流可以等待数据全部注入完成了再开始处理。注入的顺序不是必须的了,因为对于一个静态的数据集,我们是可以对其进行排序的。有界流的处理也可以称为批处理。

Flink流处理特性

  • 支持****高吞吐、低延迟、高性能****的流处理
  • 支持带有事件时间的****窗口(Window)****操作
  • 支持有状态计算的****Exactly-once****语义
  • 支持高度灵活的窗口(Window)操作,支持基于****time、count、session,以及data-driven****的窗口操作
  • 支持具有****Backpressure****功能的持续流模型(自动降速Source)
  • 支持基于轻量级****分布式快照(Snapshot)****实现的容错
  • 一个运行时同时支持****Batch on Streaming*处理和*Streaming****处理
  • Flink在JVM内部实现了自己的****内存管理****
  • 支持迭代计算
  • 支持程序自动优化:避免特定情况下Shuffle、排序等昂贵操作,中间结果有必要进行缓存

Flink的优势

  • 同时支持高吞吐、低延迟、高性能

  • 支持事件时间(Event Time)概念

  • 支持有状态计算

  • 支持高度灵活的窗口(Window)操作

  • 基于轻量级分布式快照(Snapshot)实现的容错

  • 基于 JVM 实现的独立的内存管理

  • Save Points 保存点

  • flink应用场景

image-20220416193203768

阿里在Flink的应用主要包含四个模块:

  • l 实时监控:
    • 用户行为预警、app crash 预警、服务器攻击预警
    • 对用户行为或者相关事件进行实时监测和分析,基于风控规则进行预警
  • l 实时报表:
    • 双11、双12等活动直播大屏
    • 对外数据产品:生意参谋等
    • 数据化运营
  • l 流数据分析:
    • 实时计算相关指标反馈及时调整决策
    • 内容投放、无线智能推送、实时个性化推荐等
  • l 实时仓库:
    • 数据实时清洗、归并、结构化
    • 数仓的补充和优化

性能比较

首先,我们可以通过下面的性能测试初步了解两个框架的性能区别,它们都可以基于内存计算框架进行实时计算,所以都拥有非常好的计算性能。经过测试,Flink计算性能上****略好****。

  • l 测试环境:

    • CPU:7000个;
    • 内存:单机128GB;
    • 版本:Hadoop 2.3.0,Spark 1.4,Flink 0.9
    • 数据:800MB,8GB,8TB;
    • 算法:K-means:以空间中K个点为中心进行聚类,对最靠近它们的对象归类。通过迭代的方法,逐次更新各聚类中心的值,直至得到最好的聚类结果。
    • 迭代:K=10,3组数据
  • 测试结果:

    纵坐标是秒,横坐标是次数

image-20220416193800678

:K=10,3组数据

  • 测试结果:

    纵坐标是秒,横坐标是次数

[外链图片转存中…(img-De3M6oet-1650109155992)]

Spark和Flink全部都运行在Hadoop YARN上,性能为Flink > Spark > Hadoop(MR),迭代次数越多越明显,性能上,Flink优于Spark和Hadoop

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值