kafka学习笔记-- 文件清理策略与高效读写数据

这篇具有很好参考价值的文章主要介绍了kafka学习笔记-- 文件清理策略与高效读写数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文内容来自尚硅谷B站公开教学视频,仅做个人总结、学习、复习使用,任何对此文章的引用,应当说明源出处为尚硅谷,不得用于商业用途。
如有侵权、联系速删
视频教程链接:【尚硅谷】Kafka3.x教程(从入门到调优,深入全面)

文件清理策略

Kafka 中默认的日志保存时间为 7 天,可以通过调整如下参数修改保存时间。

⚫ log.retention.hours,最低优先级小时,默认 7 天。
⚫ log.retention.minutes,分钟。
⚫ log.retention.ms,最高优先级毫秒。
⚫ log.retention.check.interval.ms,负责设置检查周期,默认 5 分钟。

如果超过了设置的时间,kafka有两种清理策略

delete清理策略:将过期数据删除

配置文件中通过该参数控制策略

⚫ log.cleanup.policy = delete 所有数据启用删除策略

(1)基于时间:默认打开。以 segment 中所有记录中的最大时间戳作为该文件时间戳。
(2)基于大小:默认关闭。超过设置的所有日志总大小,删除最早的 segment。
    log.retention.bytes,默认等于-1,表示无穷大。

但是如果有一部分数据过期了,另一部分没有过期,就要用另一种策略了

compact清理策略:将过期数据压缩

⚫ log.cleanup.policy = compact 所有数据启用压缩策略
kafka学习笔记-- 文件清理策略与高效读写数据,# Kafka学习--入门到调优,kafka,学习,笔记
压缩后的offset可能是不连续的,比如上图中没有6,当从这些offset消费消息时,将会拿到比这个offset大的offset对应的消息,实际上会拿到offset为7的消息,并从这个位置开始消费。

这种策略只适合特殊场景,比如消息的key是用户ID,value是用户的资料,通过这种压缩策略,整个消息集里就保存了所有用户最新的资料。

高效读写数据

  1. Kafka 本身是分布式集群,可以采用分区技术,并行度高
  2. 读数据采用稀疏索引,可以快速定位要消费的数据
  3. 顺序写磁盘
    Kafka 的 producer 生产数据,要写入到 log 文件中,写的过程是一直追加到文件末端,为顺序写。官网数据表明,同样的磁盘,顺序写能到 600M/s,而随机写只有 100K/s。这与磁盘的机械机构有关,顺序写之所以快,是因为其省去了大量磁头寻址的时间。
  4. 页缓存 + 零拷贝技术
    零拷贝:Kafka的数据加工处理操作交由Kafka生产者和Kafka消费者处理。Kafka Broker应用层不关心存储的数据,所以就不用走应用层,传输效率高。
    PageCache页缓存:Kafka重度依赖底层操作系统提供的PageCache功 能。当上层有写操作时,操作系统只是将数据写入PageCache。当读操作发生时,先从PageCache中查找,如果找不到,再去磁盘中读取。实际上PageCache是把尽可能多的空内存都当做了磁盘缓存来使用。
    kafka学习笔记-- 文件清理策略与高效读写数据,# Kafka学习--入门到调优,kafka,学习,笔记

kafka学习笔记-- 文件清理策略与高效读写数据,# Kafka学习--入门到调优,kafka,学习,笔记文章来源地址https://www.toymoban.com/news/detail-806062.html

到了这里,关于kafka学习笔记-- 文件清理策略与高效读写数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • kafka数据清理配置——删除篇

    前言 本意利用kafka实现一个类似redis发布订阅的模式,比redis多了一个数据分区的功能。kafka里面的数据我们是不需要存储的,因此我们需要配置对应的删除策略 Kafka版本号 2.8.1 数据清理策略 kafka有两种数据清理策略, delete删除 和 compact压缩 ,默认是删除。 delete :一般是使

    2024年02月05日
    浏览(28)
  • kafka 是如何清理过期数据

    kafka 将数据持久化到了硬盘上,允许你配置一定的策略对数据清理,清理的策略有两个,删除和压缩。 数据清理的方式 1、删除 log.cleanup.policy=delete启用删除策略 直接删除,删除后的消息不可恢复。可配置以下两个策略: #清理超过指定时间清理:  log.retention.hours=16 #超过指

    2024年02月11日
    浏览(32)
  • Kafka内容分享(七):Kafka 数据清理和配额限速

    目录 一、Kafka中数据清理(Log Deletion) 1.1、日志删除 1.1.1、定时日志删除任务 1.1.2、基于时间的保留策略 1.1.2.1、设置topic 5秒删除一次 1.1.3、基于日志大小的保留策略 1.1.4、基于日志起始偏移量保留策略 1.2 日志压缩(Log Compaction) 二、Kafka配额限速机制(Quotas) 2.1、限制

    2024年02月02日
    浏览(39)
  • 大数据-kafka学习笔记

    Kafka 是一个分布式的基于发布/订阅模式的消息队列(Message Queue),主要应用于大数据实时处理领域。 Kafka可以用作Flink应用程序的数据源。Flink可以轻松地从一个或多个Kafka主题中消费数据流。这意味着您可以使用Kafka来捕获和传输实时数据,并将其发送到Flink进行进一步处理

    2024年02月07日
    浏览(79)
  • SqlServer数据库定时清理数据,仅保留指定时间段内的数据——高效处理大数据

    SqlServer数据库定时清理数据,仅保留指定时间段内的数据——高效处理大数据 引言: 在日益增长的数据量下,保持数据库的健康状态变得尤为重要。对于大数据场景中的SqlServer数据库,一个常见的需求是定期清理过期数据,以便维护数据库性能、减小存储压力。本文将介绍

    2024年01月17日
    浏览(50)
  • Redis缓存读写策略(三种)数据结构(5+3)

    Cache Aside Pattern 是我们平时使用比较多的一个缓存读写模式,比较适合读请求比较多的场景。 写 : 先更新 db 然后直接删除 cache 。 读  : 从 cache 中读取数据,读取到就直接返回 cache 中读取不到的话,就从 db 中读取数据返回 再把数据放到 cache 中。 在写数据的过程中,可以先

    2024年02月12日
    浏览(37)
  • openGauss学习笔记-114 openGauss 数据库管理-设置安全策略-设置帐号有效期

    114.1 注意事项 创建新用户时,需要限制用户的操作期限(有效开始时间和有效结束时间)。 不在有效操作期内的用户需要重新设定帐号的有效操作期。 114.2 操作步骤 以操作系统用户omm登录数据库主节点。 使用如下命令连接数据库。 postgres为需要连接的数据库名称,8000为数

    2024年02月05日
    浏览(59)
  • ZYNQ学习笔记(四):PL与PS数据交互——基于BRAM IP 核的(PS端读写+PL端读)控制实验

    说起PS、PL数据交互,常见的有IO方式:MIO EMIO GPIO,还有利用BRAM或FIFO等,在上一篇文章ZYNQ学习笔记(三):PL与PS数据交互—— UART串口+AXI GPIO控制DDS IP核输出实验咱们学会了如何利用AXI GPIO IP核来实现PS(写)与PL(读)的数据交互,那么这篇文章来学习如何使用BRAM~ 本次实验

    2024年02月05日
    浏览(53)
  • MAC苹果笔记本电脑如何彻底清理垃圾文件软件?

    苹果电脑以其流畅的操作系统和卓越的性能而备受用户喜爱。然而,随着时间的推移,系统可能会积累大量垃圾文件,影响性能。本文将介绍苹果电脑怎么清理垃圾文件的各种方法,以提升系统运行效率。 CleanMyMac X是一款专业的Mac清理软件,可智能清理mac磁盘垃圾和多余语言

    2024年02月03日
    浏览(54)
  • kafka(一:分区数据不均衡(数据倾斜),分区分配策略)

    https://cloud.tencent.com/developer/article/1755177 可以设置一个新的列,根据这个列进行hash。

    2024年01月22日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包