0
点赞
收藏
分享

微信扫一扫

Jmeter接口测试:jmeter导入和导出接口的处理

大数据实习面试题详解

··by suki

Kafka参数调优的注意事项

Kafka生产者如何实现幂等性写入和事务 &Kafka的producer如何实现幂等性?

Kafka的ISR和OSR的作用分别是什么?

Kafka的producer如何实现幂等性?

Kafka消费者位置提交⽅式有哪些?分别什么场景下使⽤?

Kafka消息丢失场景有哪些?如何避免?

Kafka消费组重新平衡流程

Kafka消费者分区分配策略

Kafka&Flink&ClickHouse在联合场景中的优势

ClickHouse中的ReplicatedMergeTree是什么?有什么优点?

ClickHouse的分布式查询流程是什么样的?

ClickHouse存储结构及优势

ClickHouse各种索引的区别和使用场景

ClickHouse查询性能优化

Flink任务链和任务槽的作用是什么?

Flink SQL和Table API的区别是什么?

Flink Streaming如何处理迟到事件?

Flink中数据倾斜原因和解决方案

Flink内存模型与内存优化

Flink窗口机制有哪些?应用场景分别是什么?

Flink Savepoint和Checkpoint的区别

Flink与Spark Streaming的技术选型对比

Flink内存管理机制及其参数调优?

口诀:

一压二查三指标,延迟吞吐是关键
时刻关注资源量,排查首先看GC

1. JSON序列化与反序列化

常出现在source和sink任务上,在指标上没有体现,容易被忽略

2. Map和set的Hash冲突

由于HashMap,HashSet等随着负载因子增高,引起的插入和查询性能下降。

3. 数据倾斜

数据倾斜会导致其中一个或者多个subtask处理的数据量远大于其他节点,造成局部数据延迟。

4. 和低速系统的交互

在实时系统进行高速数据处理时,当涉及到与外部低俗的系统(如Mysql,Hbase等)进行数据交互时。

5. 频繁的GC

因内存或者内存比例分配不合理导致频繁GC, 甚至是TaskManager失联

6. 大窗口

窗口size大,数据量大,或者是滑动窗口size和step的比值比较大,如size=10minmatch, step=1。

Flink任务链和任务槽的作用是什么?

Flink状态管理内部原理是什么?

假设我们有一个电商网站,在这个网站上可以进行商品的浏览、购买、评价等操作。为了便于业务分析和优化,我们需要对用户的行为进行实时统计和分析。具体来说,需要统计每个商品的浏览次数、下单次数、成交金额等指标,并以实时可视化的方式展现出来。

为了实现这一目标,我们可以使用Flink来进行实时计算和数据处理。在程序中,我们需要定义一些状态来记录用户的行为,如:

  • 商品浏览量:记录每个商品的浏览次数;
  • 商品下单量:记录每个商品的下单次数;
  • 商品成交金额:记录每个商品的成交金额;
  • 用户购买记录:记录每个用户的购买记录。

在Flink中,我们可以通过声明和管理这些状态来实现实时计算和分析。具体步骤如下:

  1. 状态的定义:Flink支持不同类型的状态,如键值对状态、列表状态、折叠状态等。用户可以自定义状态的数据结构和计算操作,并在程序中显式声明并使用这些状态。状态的声明通常在程序的开始位置完成,可以用于保存一些需要跨任务和操作保持一致的状态信息。(两种类型的状态:算子状态和键值分区状态)
  2. 状态的管理:Flink将状态分配给不同的任务运行实例进行管理,保证在不同的并行任务之间共享该状态。Flink利用快照机制来保证状态的一致性和恢复。具体来说,Flink定期对状态进行快照(Checkpoint),并将快照写入持久化存储中,以便在发生故障时能够恢复状态。此外,Flink还提供了精细的控制机制,可以让用户自定义快照的触发时间、间隔和一致性模式等参数。
  3. 状态的持久化:为了保证状态在故障发生时不会丢失或损坏,Flink将状态持久化到外部存储介质中,例如文件系统、HDFS、分布式数据库等。Flink采用异步写入的方式,将状态持久化操作放在后台线程中完成,以避免影响任务的执行性能。在状态恢复时,Flink会从持久化存储中读取最近一次的快照,并将状态恢复到该快照的状态。
  4. 托管方式(Manager State & Raw State)

Flink状态一致性和容错机制

Flink批流统一的意义及实现

FlinkCEP复杂事件处理应用

Flink Watermark机制

Flink窗口函数的应用

举报

相关推荐

0 条评论