Flink入门(一)

整体框架

  1. Flink概述
  2. Flink上手部署
  3. Flink架构
  4. DataStream API(算子)
  5. Flink中的时间和窗口:窗口就是范围
  6. 处理函数:底层函数
  7. 状态管理:
  8. 容错机制:报错重启后能够从出错的位置继续执行
  9. FlinkSQL:功能逐步完善

基于数据流的有状态计算

  1. 正确性保证
    • 精确一次(Exactly-once)状态一致性
    • 事件时间处理
    • 成熟的迟到数据处理
  2. 分层API:底层处理函数、java API、Flink SQL
  3. 聚焦运维:灵活部署、高可用、保存点
  4. 大规模计算:水平扩展架构、支持超大状态、增量检查点机制
  5. 性能卓越:低延迟(毫秒级的计算)、高吞吐(每秒数百万事件处理)、内存计算
  6. 可以连接到常用的存储系统:Kafka, Hive, JDBC, HDFS, Redis等

流式场景

  1. 事件驱动应用:事件驱动型应用是一类具有状态的应用,它从一个或多个事件流提取数据,并根据到来的事件触发计算、状态更新或其他外部动作。
  2. 流批分析:既支持流处理、也支持批处理
  3. 数据管道&ETL:提取-转换-加载(ETL)是一种在存储系统之间进行数据转换和迁移的常用方法。

状态

把流处理需要使用到的额外数据保存为一个"状态",状态会跟着流动的数据动态的变化。

Flink分层API

  1. SQL
  2. Table API
  3. DataStream
  4. 有状态流处理(底层 API 处理函数)

集群剖析

  1. JobManager:协调Flink程序的分布式执行,对完成的task或执行失败做出反应,协调检查点,恢复还原状态。一般集群中只有一个。
  2. TaskManager: 执行作业流的Task, 并且缓存和交换数据流。存在一个或者多个。

部署模式

  1. 会话模式:多个任务共享一个任务管理器,适合多个执行时间短、使用资源少的任务。先起集群再提交作业

  2. 单作业模式:一个作业,专用的任务管理器,程序运行在客户端机器上。

  3. 应用模式:一个作业,专用的任务管理器,程序运行在集群机器上。

Standalone模式

  1. 配置集群参数
  2. 使用./jobmanager.sh start | ./taskmanager.sh start 单点启动
  3. 使用bin/start-cluster.sh | bin/stop-cluster 群起群关

YARN运行模式

后续补充

相关推荐
大任视点9 小时前
科技赋能健康未来,守护生命青春活力
大数据·人工智能·科技
hans汉斯9 小时前
基于改进YOLOv11n的无人机红外目标检测算法
大数据·数据库·人工智能·算法·yolo·目标检测·无人机
励志成为糕手10 小时前
Flume架构深度解析:构建高可用大数据采集系统
大数据·架构·flume·日志·大数据采集
武子康10 小时前
大数据-161 Apache Kylin Cube 实战:建模、构建与查询加速完整指南
大数据·后端·apache kylin
金融小师妹10 小时前
基于机器学习与深度强化学习:非农数据触发AI多因子模型预警!12月降息预期骤降的货币政策预测
大数据·人工智能·深度学习·1024程序员节
Q264336502311 小时前
【有源码】spark与hadoop-情感挖掘+画像建模的携程酒店评价数据分析可视化系统-基于机器学习的携程酒店评价情感分析与竞争态势可视化
大数据·hadoop·python·机器学习·数据分析·spark·毕业设计
2021_fc13 小时前
Flink批处理实战:使用DataSet API进行高效的批处理
大数据·flink
Dream Algorithm16 小时前
MACD负很多说明什么
大数据
原神启动120 小时前
云计算大数据——shell教程(三剑客之awk)
大数据·开发语言·perl