流处理开源框架Flink原理简介和使用(2)

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 流处理开源框架Flink原理简介和使用(2)

Flink特点



  • 事件驱动型(Event-driven)


事件驱动型应用是一类具有状态的应用 他从一个或多个事件流提取数据  
并根据到来的事件触发计算、状态更新或其他的外部动作



以kafka为代表的消息队列几乎都是事件驱动型应用


image.png


无界数据流:
有一个开始但没有结束 不会在生成时终止并提供数据
必须连续处理无界流即必须在获取后立即处理
对于无界流无法等待所有数据都到达
因为输入是无界的 并且在任何时间点都不会完成 
处理无界数据通常要求以特定顺序(例如事件发生的顺序)获取event
以便能够推断结果完整性


有界数据流:
有明确的开始和结束
可以在执行任何计算之前通过获取所有数据来处理有界流
处理有界流不需要有序获取
因为可以始终对有界数据集进行排序
有界流的处理也被成为批处理


分层API


  • 越顶层越抽象 表达含义越简明 使用越方便


  • 越底层越具体 表达能力越丰富 使用越灵活


image.png


flink其他特点


  • 支持事件时间(event-time)和处理时间(processing-time)


  • 状态一致性


  • 低延迟 每秒处理数百万 毫秒级延迟


  • 众多常用存储系统连接


  • 高可用 动态扩展


Flink和Spark Streaming比较


  • 流(stream)和微批(micro-batching)


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


  • 批处理
    有界、持久、大量 非常适合访问全套记录才能完成计算工作 一般用于离线统计



image.png


  • 数据模型


  • spark采用RDD模型 spark streaming的Dstream实际上也就是一组组小批数据RDD的集合 在spark的数据观 一切都是由批次组成 离线数据是一个大批次 而实时数据是由一个一个无限的小批次组成


  • flink基本数据模型是数据流以及事件(event)序列


  • 运行时架构


  • spark是批计算 将DAG划分为不同的stage 一个完成后才能计算下一个


  • flink是标准的流执行模式 一个事件在一个节点处理完之后可以直接发往下一个节点进行处理
相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
2月前
|
SQL 消息中间件 分布式计算
大数据-124 - Flink State 01篇 状态原理和原理剖析:状态类型 执行分析
大数据-124 - Flink State 01篇 状态原理和原理剖析:状态类型 执行分析
72 5
|
2月前
|
消息中间件 监控 Java
大数据-109 Flink 体系结构 运行架构 ResourceManager JobManager 组件关系与原理剖析
大数据-109 Flink 体系结构 运行架构 ResourceManager JobManager 组件关系与原理剖析
75 1
|
2月前
|
存储 SQL 分布式计算
大数据-127 - Flink State 04篇 状态原理和原理剖析:状态存储 Part2
大数据-127 - Flink State 04篇 状态原理和原理剖析:状态存储 Part2
21 0
|
2月前
|
存储 消息中间件 大数据
大数据-126 - Flink State 03篇 状态原理和原理剖析:状态存储 Part1
大数据-126 - Flink State 03篇 状态原理和原理剖析:状态存储 Part1
67 0
|
2月前
|
存储 SQL 分布式计算
大数据-125 - Flink State 02篇 状态原理和原理剖析:广播状态
大数据-125 - Flink State 02篇 状态原理和原理剖析:广播状态
46 0
|
2月前
|
消息中间件 NoSQL Kafka
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
大数据-116 - Flink DataStream Sink 原理、概念、常见Sink类型 配置与使用 附带案例1:消费Kafka写到Redis
178 0
|
4月前
|
Java Spring 安全
Spring 框架邂逅 OAuth2:解锁现代应用安全认证的秘密武器,你准备好迎接变革了吗?
【8月更文挑战第31天】现代化应用的安全性至关重要,OAuth2 作为实现认证和授权的标准协议之一,被广泛采用。Spring 框架通过 Spring Security 提供了强大的 OAuth2 支持,简化了集成过程。本文将通过问答形式详细介绍如何在 Spring 应用中集成 OAuth2,包括 OAuth2 的基本概念、集成步骤及资源服务器保护方法。首先,需要在项目中添加 `spring-security-oauth2-client` 和 `spring-security-oauth2-resource-server` 依赖。
57 0
|
4月前
|
消息中间件 数据挖掘 Kafka
揭秘大数据时代的极速王者!Flink:颠覆性流处理引擎,让实时数据分析燃爆你的想象力!
【8月更文挑战第29天】Apache Flink 是一个高性能的分布式流处理框架,适用于高吞吐量和低延迟的实时数据处理。它采用统一执行引擎处理有界和无界数据流,具备精确状态管理和灵活窗口操作等特性。Flink 支持毫秒级处理和广泛生态集成,但学习曲线较陡峭,社区相对较小。通过实时日志分析示例,我们展示了如何利用 Flink 从 Kafka 中读取数据并进行词频统计,体现了其强大功能和灵活性。
83 0
|
4月前
|
监控 搜索推荐 数据挖掘
Flink流处理与批处理大揭秘:实时与离线,一文让你彻底解锁!
【8月更文挑战第24天】Apache Flink 是一款开源框架,擅长流处理与批处理。流处理专攻实时数据流,支持无限数据流及事件驱动应用,实现数据的连续输入与实时处理。批处理则聚焦于静态数据集,进行一次性处理。两者差异体现在处理方式与应用场景:流处理适合实时性要求高的场景(例如实时监控),而批处理更适用于离线数据分析任务(如数据挖掘)。通过提供的示例代码,读者可以直观理解两种模式的不同之处及其实际应用。
274 0
|
3月前
|
运维 数据处理 数据安全/隐私保护
阿里云实时计算Flink版测评报告
该测评报告详细介绍了阿里云实时计算Flink版在用户行为分析与标签画像中的应用实践,展示了其毫秒级的数据处理能力和高效的开发流程。报告还全面评测了该服务在稳定性、性能、开发运维及安全性方面的卓越表现,并对比自建Flink集群的优势。最后,报告评估了其成本效益,强调了其灵活扩展性和高投资回报率,适合各类实时数据处理需求。