Link入门

Filk概述

概念介绍

Apache Flink® --- Stateful Computations over Data Streams | Apache Flink

大致意思:Filk是一个

  1. 框架
  2. 分布式处引擎
  3. 支持有界和无界状态计算。
  • 有界数据指的是有开始的标志也有结束的标志
  • 这里的分布式强调的是不同的节点能进行不同的任务
  • 状态计算指的是在进行计算的时候能保留计算的中间结果

离线数仓和实时数仓对比

离线数仓 实时数仓
处理方式 批处理 流处理
数据稳定性 数据固定 数据变化
数据量
处理时间
划分依据 T+1 T

T+1表示的是现在一个单位时间之前,这里的单位时间可以说一天也可以一年;

Flink特点

处理数据的目标:

  • 低延迟
  • 高吞吐:每毫秒处理百万个数据
  • 准确性:提供了事件时间和处理时间
  • 容错性:状态基本一致
  • 可以连接到常用的外部系统:如Kfka,Hive,JDBC
  • 高可用:从故障中快速恢复,借助于Yarn

Flink和SparkStreaming对比

Spark是一个微批次数据的框架(他有一个'攒'批操作)

Flink Streaming
计算模型 流计算 微批处理
时间语义 事件时间+处理时间 处理时间
窗口 多、灵活 少、不灵活
状态 没有
流式SQL 没有

窗口

  • SparkStreaming窗口:滚动窗口、滑动窗口(必须是采集周期的整数倍)
  • FLink窗口:基于时间窗口,基于事件的窗口等;

Flink分层API

  1. 最高层语言:SQL

  2. 声明式领域专用语言:Table API

  3. 核心API:DataStream(无界数据)

    ​ DateSet(有界无界数据)

  4. 底层API:有状态流处理(基础数据操作map,flatMap)

相关推荐
sunnyday04262 小时前
Nginx与Spring Cloud Gateway QPS统计全攻略
java·spring boot·后端·nginx
海南java第二人2 小时前
Spring Boot全局异常处理终极指南:打造优雅的API错误响应体系
java·spring boot·后端
小楼v3 小时前
消息队列的核心概念与应用(RabbitMQ快速入门)
java·后端·消息队列·rabbitmq·死信队列·交换机·安装步骤
小北方城市网3 小时前
接口性能优化实战:从秒级到毫秒级
java·spring boot·redis·后端·python·性能优化
鸡蛋豆腐仙子3 小时前
Spring的AOP失效场景
java·后端·spring
小北方城市网3 小时前
SpringBoot 全局异常处理最佳实践:从混乱到规范
java·spring boot·后端·spring·rabbitmq·mybatis·java-rabbitmq
qq_256247053 小时前
如何系统性打造高浏览量视频号内容
后端
码界奇点3 小时前
基于Spring Boot与Vue.js的连锁餐饮点餐系统设计与实现
vue.js·spring boot·后端·毕业设计·源代码管理
Knight_AL3 小时前
RabbitMQ + Flink 为什么必然会重复?以及如何用 seq 做稳定去重
flink·rabbitmq·ruby