• Kafka集群修改单个Topic数据保存周期


    在大数据部门经常使用Kafka集群,有的时候大数据部门可能在Kafka中的Topic数据保存时间不需要很长,一旦被消费后就不需要一直保留。默认Topic存储时间为7day,个别的Topic或者某台Kafka集群需要修改Topic数据保存的一个周期,调整为3天或者1天

    目前修改Topic 有两种方法

    • 通过修改Kafka配置文件,使全局生效,所有的Topic数据保存时间都进行修改
    • 通过参数调整某个Topic数据保存时间

    以上两种方式均进行演示

    相关版本信息

    1. [root@web-03 ~]# /opt/kafka/bin/kafka-topics.sh --version
    2. 3.4.0 (Commit:2e1947d240607d53)
    3. [root@web-03 ~]# cat /etc/redhat-release
    4. CentOS Linux release 7.4.1708 (Core)
    5. [root@web-03 ~]# uname -r
    6. 3.10.0-693.el7.x86_64

    全局生效

    修改配置文件

    1. [root@web-03 ~]# vim /opt/kafka/config/server.properties
    2. # The minimum age of a log file to be eligible for deletion due to age
    3. log.retention.hours=12
    4. #单位为小时

    如果是集群需要集群内其它机器也修改

    修改完配置文件重启,配置文件是全局生效

    单个Topic生效

    首先我们先查看目前的Topic

    1. [root@web-03 ~]# /opt/kafka/bin/kafka-topics.sh --list --bootstrap-server 192.168.31.71:9092
    2. tw222
    3. two

    使用describe参数查看详细Topic数值

    1. [root@web-03 ~]# /opt/kafka/bin/kafka-topics.sh --bootstrap-server 192.168.31.71:9092 --describe --topic tw222
    2. Topic: tw222 TopicId: qS-h_V78ShyKC6pN1cuCfw PartitionCount: 2 ReplicationFactor: 1 Configs: segment.bytes=1073741824
    3. Topic: tw222 Partition: 0 Leader: 0 Replicas: 0 Isr: 0
    4. Topic: tw222 Partition: 1 Leader: 0 Replicas: 0 Isr: 0
    5. [root@web-03 ~]#

    使用kafka-configs.sh修改Topic名称为tw222

    1. [root@web-03 ~]# /opt/kafka/bin/kafka-configs.sh --bootstrap-server 192.168.31.71:9092 --alter --entity-name tw222 --entity-type topics --add-config retention.ms=86400000
    2. #下面为输出结果
    3. Completed updating config for topic tw222.
    4. #--entity-name 指定Topic名称 tw222
    5. #--entity-type topics 类型为Topic
    6. #retention.ms=数据保留时间
    • 86400000毫秒=1天
    • 172800000毫秒=2天
    • 259200000毫秒=3天

    毫秒计算器可以访问下面的地址,由abcdocker维护
    在线时间换算,年月周天换算,时间单位换算工具-abcdocker在线工具系统

    1682583648699.png

    接下来我们查看效果

    1. [root@web-03 ~]# /opt/kafka/bin/kafka-topics.sh --bootstrap-server 192.168.31.71:9092 --describe --topic tw222
    2. Topic: tw222 TopicId: qS-h_V78ShyKC6pN1cuCfw PartitionCount: 2 ReplicationFactor: 1 Configs: segment.bytes=1073741824,retention.ms=86400000
    3. Topic: tw222 Partition: 0 Leader: 0 Replicas: 0 Isr: 0
    4. Topic: tw222 Partition: 1 Leader: 0 Replicas: 0 Isr: 0
    5. #retention.ms=86400000这里表示已经为Topic添加了过期时间

    1682583782433.png

    相关文章:

    1. 消息队列 Kafka –未完
    2. Zookeeper集群节点异常 Unable to load database on disk java.io.IOException
  • 相关阅读:
    springboot 使用shiro集成阿里云短信验证码
    Vue中九九乘法表
    FreeRTOS堆栈溢出检查
    高频CSS面试题
    龙测票选,5本最受欢迎的软件测试书籍
    助力电力行业数字化转型:智慧风电项目介绍
    Mysql高级——索引
    git-pull详解
    IDEA启动时选择项目
    拼多多上货API:自动化上架商品批量获取商品详情信息
  • 原文地址:https://blog.csdn.net/qq_32445015/article/details/130750263