首页
学习
活动
专区
工具
TVP
发布

SmartSi

专栏作者
270
文章
582748
阅读量
53
订阅数
Flink DataStream 类型系统 TypeInformation
Flink DataStream 应用程序所处理的事件以数据对象的形式存在。函数调用时会传入数据对象,同时也可以输出数据对象。因此,Flink 在内部需要能够处理这些对象。当通过网络传输或者读写状态后端、检查点以及保存点时,需要对它们进行序列化和反序列化。为了能够更高效的做到这一点,Flink 需要详细了解应用程序处理的数据类型。Flink 使用类型信息的概念来表示数据类型,并为每种数据类型生成特定的序列化器、反序列化器以及比较器。
smartsi
2022-04-23
3.6K0
Flink SourceFunction 初了解
SourceFunction 是 Flink 中所有流数据 Source 的基本接口。SourceFunction 接口继承了 Function 接口,并在内部定义了数据读取使用的 run() 方法、取消运行的 cancel() 方法以及 SourceContext 内部接口:
smartsi
2022-03-08
1.9K0
State Processor API:如何读写和修改 Flink 应用程序的状态
无论是在生产环境中运行 Apache Flink 还是在调研 Apache Flink,总会遇到一个问题:如何读写以及更新 Flink Savepoint 中的状态?为了解决这个问题,在 Apache Flink 1.9.0 版本引入了 State Processor API,扩展 DataSet API 实现读写以及修改 Flink Savepoint 和 Checkpoint 中状态。
smartsi
2022-03-07
1.4K0
Flink State TTL 详解
在某些场景下 Flink 用户状态一直在无限增长,一些用例需要能够自动清理旧的状态。例如,作业中定义了超长的时间窗口,或者在动态表上应用了无限范围的 GROUP BY 语句。此外,目前开发人员需要自己完成 TTL 的临时实现,例如使用可能不节省存储空间的计时器服务。还有一个比较重要的点是一些法律法规也要求必须在有限时间内访问数据。
smartsi
2022-03-02
3K0
Flink 1.13 StateBackend 与 CheckpointStorage 拆分
Apache Flink 的持久化对许多用户来说都是一个谜。用户最常见反复提问的问题就是不理解 State、StateBackend 以及快照之间的关系。通过学习可以解答我们的一些困惑,但是这个问题如此常见,我们认为 Flink 的用户 API 应该设计的更友好一些。在过去几年中,我们经常会听到如下误解:
smartsi
2022-02-22
2.5K0
对流处理的误解
我们花了很多时间来思考流处理。更酷的是:我们也花了很多时间帮助其他人思考流处理以及如何使用流应用解决他们的数据问题。这个过程的第一步是纠正对现代流处理的误解(作为一个快速变化的领域,这里有很多误见值得我们思考)。在这篇文章中,我们选择了其中的 6 个进行讲解,由于 Apache Flink 是我们最熟悉的开源流处理框架,所以我们会基于 Flink 来讲解这些例子。
smartsi
2022-02-04
3650
Flink 如何现实新的流处理应用第一部分:事件时间与无序处理
流数据处理正处于蓬勃发展中,可以提供更实时的数据以实现更好的数据洞察,同时从数据中进行分析的流程更加简化。在现实世界中数据生产是一个连续不断的过程(例如,Web服务器日志,移动应用程序中的用户活跃,数据库事务或者传感器读取的数据)。正如其他人所指出的,到目前为止,大部分数据架构都是建立在数据是有限的、静态的这样的基本假设之上。为了缩减连续数据生产和旧”批处理”系统局限性之间的这一根本差距,引入了复杂而脆弱(fragile)的端到端管道。现代流处理技术通过以现实世界事件产生的形式对数据进行建模和处理,从而减轻了对复杂解决方案的依赖。
smartsi
2022-01-18
8130
Flink SQL 如何定义时间属性
本文将解释如何在 Flink 的 Table API 和 SQL 中为基于时间的操作定义时间属性。
smartsi
2021-10-08
1.7K0
Flink 窗口剔除器 Evictor
除了 WindowAssigner 和 Trigger 之外,Flink 的窗口模型还允许指定一个可选的 Evictor。Evictor 提供了在使用 WindowFunction 之前或者之后从窗口中删除元素的能力。为此,Evictor 接口提供了两个方法:
smartsi
2021-09-08
2.1K0
Flink 管理大型状态之增量 Checkpoint
Apache Flink 是一个有状态的流处理框架。什么是流处理应用程序的状态呢?你可以理解状态为应用程序算子中的内存。状态在流计算很多复杂场景中非常重要,比如:
smartsi
2021-07-27
3K0
Flink 使用 Broadcast State 的4个注意事项
在 Apache Flink 1.5.0 中引入了广播状态(Broadcast State)。本文将描述什么是广播状态模式,广播状态与其他的 Operator State 有什么区别,最后说明一下在 Flink 中使用该功能时需要考虑的一些重要注意事项。
smartsi
2021-07-07
1.8K0
Flink中可查询状态是如何工作的
QueryableStates 允许用户对流的内部状态进行实时查询,而无需将结果存储到任何外部存储中。 这制造了许多有趣的可能,因为我们不再需要等待系统写入外部存储(这一直是此类系统的主要瓶颈之一)。 甚至可能没有任何类型的数据库能让用户的应用程序直接查询流,这将使应用程序更快、更便宜。 这可能不适用于所有用例,但如果您的 Pipeline 必须维护内部状态(可能是进行一些聚合),则最好使状态可用于查询。
smartsi
2021-06-29
2.3K0
Flink 状态TTL如何限制状态的生命周期
很多有状态流应用程序的常见需求是能够控制应用程序状态的访问时长以及何时删除它。这篇文章介绍了在 1.6.0 版本添加到 Flink 的状态生命周期时间(TTL)功能。
smartsi
2021-06-29
1.7K0
Flink SQL 客户端如何使用
Flink 的 Table & SQL API 可以处理 SQL 语言编写的查询语句,但是这些查询需要嵌入用 Java 或 Scala 编写的 Table 程序中。此外,这些程序在提交到集群前需要用构建工具打包。这或多或少限制了 Java/Scala 程序员对 Flink 的使用。
smartsi
2021-06-29
5.9K0
Flink 定时器的4个特性
本文介绍了在 Flink 中使用定时器的一些基本概念和注意事项。开发人员可以使用 Flink 的 ProcessFunction 算子来注册自己的定时器,该算子可以访问流应用程序的一些基本构建块,例如:
smartsi
2021-06-17
1.9K0
Flink 窗口之Window机制
数据分析场景见证了批处理到流处理的演变过程。尽管批处理可以作为流处理的一种特殊情况来处理,但分析永无止境的流数据通常需要转变一种思维方式,并使用它自己的专门术语,例如,窗口、At-Least-Once 或者 Exactly-Once 处理语义。
smartsi
2021-02-04
1.3K0
Flink Savepoints和Checkpoints的3个不同点
在本文中,我们将解释什么是 Savepoint,什么会使用它们,并就它们与 Checkpoint 的区别进行对比分析。
smartsi
2020-12-29
3.2K0
Flink 从Checkpoint中恢复作业
如果我们的任务已经执行很长时间,突然遇到故障停止,那么中间过程处理结果就会全部丢失,重启后需要重新从上一次开始的位置消费,这会花费我们很长的时间。这种结局显示我们不能接受,我们希望的是作业在故障失败重启后能保留之前的状态并能从失败的位置继续消费。可以通过如下配置保存处理状态:
smartsi
2020-12-29
4.8K0
Flink监控检查点
Flink的 Web 页面中提供了一些页面标签,用于监控作业的检查点。这些监控统计信息即使在作业终止后也可以看到。Checkpoints 监控页面共有四个不同的 Tab 页签:Overview、History、Summary 和 Configuration,它们分别从不同角度进行了监控,每个页面都包含了与 Checkpoint 相关的指标。
smartsi
2020-12-15
1.4K0
Flink监控 Rest API
Flink具有监控 API,可用于查询正在运行的作业以及最近完成的作业的状态和统计信息。Flink 自己的仪表板也使用了这些监控 API,但监控 API 主要是为了自定义监视工具设计的。监控 API 是 REST-ful API,接受 HTTP 请求并返回 JSON 数据响应。
smartsi
2020-11-16
3.4K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档