kafka面经复习
kafka面经复习
大数据捌圆
这个作者很懒,什么都没留下…
展开
-
32-kafka消费者数量如何增加
kafka消费者数量如何增加原创 2023-03-26 15:19:10 · 1612 阅读 · 0 评论 -
31-幂等性和事务
幂等性和事务原创 2023-03-26 15:18:14 · 398 阅读 · 0 评论 -
30-kafka流入到数仓时,通常流入到哪一层?ODS ?然后在 DWD 去重?
kafka流入到数仓时,通常流入到哪一层?ODS ?然后在 DWD 去重?原创 2023-03-26 15:17:37 · 386 阅读 · 0 评论 -
29-kafka是如何消峰的
kafka是如何消峰的原创 2023-03-26 15:16:07 · 1361 阅读 · 0 评论 -
28-flume和kafka为什么要结合使用
28-flume和kafka为什么要结合使用原创 2023-03-26 14:27:41 · 744 阅读 · 0 评论 -
27-kafka生产者调优配置
原创 2023-03-22 22:27:32 · 101 阅读 · 0 评论 -
26-大数据架构为什么要用kafka
大数据架构为什么要用kafka原创 2022-06-30 23:03:42 · 1052 阅读 · 1 评论 -
25-kafka与mq对比
kafka与mq对比原创 2022-06-30 22:31:22 · 307 阅读 · 0 评论 -
24-kafka如何保证多分区之间的数据是有序的
题目:kafka如何保证多分区之间的数据是有序的答案:提示:这里可以添加要学的内容例如:搭建 Java 开发环境掌握 Java 基本语法掌握条件语句掌握循环语句原创 2022-05-30 18:19:57 · 4591 阅读 · 0 评论 -
23-kafka中的数据是有序的吗
单分区内有序;多分区,分区与分区之间无序原创 2022-05-30 17:12:27 · 126 阅读 · 0 评论 -
22-kafka消费者角度考虑是拉取数据还是推送数据
拉取数据原创 2022-05-29 09:52:02 · 395 阅读 · 0 评论 -
21-kafka可以按照时间消费数据
原创 2022-05-29 09:51:12 · 450 阅读 · 0 评论 -
20-kafka过期数据清理
题目:kafka过期数据清理答案:1.要保证数据没有被引用(没人消费它)2.日志清理保存的策略只有delete和compact两种log.cleanup.policy=delete 启用删除策略log.cleanup.policy=compact 启用压缩策略https://www.jianshu.com/p/fa6adeae8eb5...原创 2022-05-29 09:44:24 · 742 阅读 · 0 评论 -
19-kafka单条日志传输大小
题目:kafka单条日志传输大小答案:kafka对于消息体的大小默认单条最大值是1M。但是在我们应用场景中,常常会出现一条消息大于1M,如果不对kafka进行配置,则会出现生产者无法将消息推送到kafka或者消费者无法去消费kafka里面的数据,这时我们就要对kafka进行如下配置:server.properties注意:message.max.bytes必须小于等于replica.fetch.max.bytes,否则就会导致replica之间数据同步失败。...原创 2022-05-29 09:37:49 · 2179 阅读 · 0 评论 -
18-kafka高效读写数据
题目:kafka高效读写数据答案:(1)kafka本身是分布式集群,可以采用分区技术,并行度高(2)读数据采用稀疏索引,可以快速定位要消费的数据(3)顺序写磁盘kafka的producer生产数据,要写入到log文件中,写的过程一直追加到文件末端,为顺序写。官网有数据表明,顺序写能到600m/s,而随机写只有100k/s。这与磁盘的机械结构有关,顺序写之所以快,是因为其省去了大量磁头寻址的时间。(4)页缓存+零拷贝技术...原创 2022-05-29 09:15:22 · 161 阅读 · 0 评论 -
16-kafka消息数据积压,kafka消费能力不足怎么处理
题目:kafka消息数据积压,kafka消费能力不足怎么处理答案:1.提高生产者吞吐量(1)buffer.memory:发送消息的缓冲区大小,默认值是32m,可以增加到64m(2)batch.size:默认是16k。如果batch设置太小,会导致频繁网络请求,吞吐量下降;如果batch太大,会导致一条消息需要等待很久才能被发送出去,增加网络延时(3)linger.ms:这个值默认是0,意思是消息立即被发送。一般设置一个5-100ms。如果linger.ms设置的太小,会导致频繁网络请求,吞吐量下原创 2022-05-29 09:14:45 · 2931 阅读 · 0 评论 -
15-kafka数据重复
题目:kafka数据重复如何解决答案:解决kafka数据重复:(1)设置ack应答级别为-1,分区副本个数大于等于2,ISR应答队列中的最小副本数量大于等于2(2)开启幂等性(3)开启事务(4)如果还存在重复,那就在kafka传送的目的地进行去重:spark、redis或者hive等...原创 2022-05-29 09:14:28 · 712 阅读 · 0 评论 -
14-kafka丢不丢数据
题目:kafka丢不丢数据答案:当ack应答级别=0,相当于异步发送,消息发送完毕即offset增加,继续生产,有丢数风险。当ack应答级别=1,leader收到leader replica对一个消息的接收才增加offset,然后继续生产,仍然有丢数风险当当ack应答级别=-1,leader收到所有replica对一个消息的接收才增加offset,然后继续生产,没有丢数风险,但有数据重复风险...原创 2022-05-29 09:14:06 · 226 阅读 · 0 评论 -
17-kafka参数优化
题目:kafka参数优化答案:(1)broker参数配置(server.properties)(2)producer优化(producer.properties)(3)kafka内存调整(kafka-server-start.sh)默认内存1个G,生产环境尽量不要超过6个G原创 2022-05-29 09:15:03 · 143 阅读 · 0 评论 -
13-kafka挂掉
题目:kafka挂掉怎么处理答案:kafka挂掉,flume有记录,日志有记录,短期没事在生产环境中,如果某个kafka节点挂掉正常处理办法:(1)先尝试重启一下,如果能正常启动,那就直接解决(2)如果重启不行,考虑增加内存、CPU、网络带宽(3)如果将kafka整个节点误删除,如果副本数大于等于2,可以按照服役新节点的方式重新服役一个新节点,并执行负载均衡...原创 2022-05-29 09:13:49 · 1358 阅读 · 0 评论 -
12-kafka分区分配策略
题目:kafka分区分配策略(包括生产者和消费者)答案:一、生产者分区分配策略:二、消费者分区分配策略:在kafka内部存在两种默认的分区分配策略:Range和RoundRobin1.Range是默认策略。Range是对每个topic而言的(即一个topic一个topic分),首先对同一个topic里面的分区按照序号进行排序,并对消费者按照字母顺序进行排序。然后用partitions分区的个数除以消费者线程的总数来决定每个消费者线程消费几个分区。如果除不尽,那么前面几个消费者将会多消费一个分区原创 2022-05-28 20:29:42 · 244 阅读 · 0 评论 -
11-kafka的ISR副本同步队列
题目:kafka的ISR副本同步队列答案:ISR(In-Sync Replicas),副本同步队列。ISR包括Leader和Follower。如果Leader进程挂掉,会在ISR队列中选择一个服务器作为新的Leader。有replica.lag.max.messages(延迟条数)和replica.lag.max.ms(延迟时间)两个参数决定一台服务器是否可以进入ISR副本队列,在0.10版本移除了replica.lag.max.messages参数,防止服务频繁的进去队列。任意一个维度超过阈值都会原创 2022-05-28 19:57:00 · 295 阅读 · 0 评论 -
10-多少个topic
通常情况下,多少个日志类型就多少个topic,也有对日志类型进行合并的原创 2022-05-28 19:39:37 · 76 阅读 · 0 评论 -
09-kafka分区数的设置
题目:kafka分区数的设置答案:(1)创建一个只有1个分区的topic(2)测试这个topic的Producer吞吐量和consumer吞吐量(3)假设它们的值分别是Tp和Tc,单位可以是MB/s(4)然后假设总的目标吞吐量是Tt,那么分区数=Tt/min(Tp,Tc)例如:producer吞吐量=20m/s;consumer吞吐量=50m/s,期望吞吐量100m/s;分区数=100/20=5分区分区数一般设置为:3-10个分区数不是越多越好,也不是越少越好,需要搭建完集群,进行压测,原创 2022-05-28 18:19:50 · 4162 阅读 · 0 评论 -
08-kafka监控
题目:kafka监控答案:1.公司自己开发监控器2.开源的监控器:KafkaManager、KafkaMonitor、KafkaEagle原创 2022-05-28 17:56:44 · 80 阅读 · 0 评论 -
07-kafka硬盘大小
题目:kafka硬盘大小答案:kafka底层是顺序写,固态硬盘和机械硬盘的顺序写速度差不多,但是机械硬盘便宜些,建议选择普通的机械硬盘每天总数据量:1亿条1k≈100g100g副本2*保存时间3天/0.7≈1T建议三台服务器硬盘总大小,大于等于1T...原创 2022-05-28 17:54:59 · 347 阅读 · 0 评论 -
06-kafka数据量计算
题目:kafka数据量计算答案:100万日活,每人每天100条日志,每天总共的日志条数是100万100条=1亿条1亿/24小时/60分/60秒=1150条/每秒钟每条日志大小:0.5k-2k(取1k)1150条/每秒钟1k≈1m/s高峰期每秒钟:1150条*20倍=23000条每秒多少数据量:20m/s...原创 2022-05-28 17:40:32 · 805 阅读 · 0 评论 -
05-kafka日志保存时间
题目:kafka日志保存时间答案:kafka默认保存7天;生产环境建议3天原创 2022-05-28 17:17:48 · 1345 阅读 · 0 评论 -
04-kafka压测
题目:kafka压测对kafka的生产者和消费者进行压测答案:kafka官方自带压力测试脚本(kafka-consumer-perf-test.sh、kafka-producer-perf-test.sh)。kafka压测时,可以查看到哪个地方出现了瓶颈(CPU,内存,网络IO),一般都是网络IO达到瓶颈。一、生产者压力测试点:1.batch.size2.linger.ms3.compress.type4.RecordAccumulator缓冲区大小(默认32m)二、消费者压力测试点:原创 2022-05-28 17:08:42 · 223 阅读 · 0 评论 -
01-kafka架构
题目:kafka架构能够手动画出kafka架构图,并描述流程答案:包括:生产者、broker、消费者、ZK注意:zookeeper中保存broker id和消费者offsets(0.9版本之前保存在zookeeper,0.9版本之后保存在broker的topic中)等信息,但是没有生产者信息流程:...原创 2022-05-28 16:27:17 · 191 阅读 · 0 评论 -
03-副本数设定
题目:副本数设定答案:一般我们设置成2个或3个,很多企业设置为2个副本的优势:提高可靠性副本的劣势:增加了网络I/O传输原创 2022-05-26 17:19:43 · 164 阅读 · 0 评论 -
02-kafka机器数量
题目:计算kafka机器数量计算kafka机器数量答案:kafka机器数量=2*(峰值生产速度*副本数/100)+11.峰值生产速度可以通过压测得到2.副本数副本数默认是1个,在企业里面2-3个都有,2个居多。副本多可以提高可靠性,但是会降低网络传输效率。比如我们的峰值生产速度是50m/s,副本数为2kafka机器数量=2*(50*2/100)+1=3台...原创 2022-05-26 16:45:12 · 217 阅读 · 0 评论
分享