1. 程式人生 > >刪除kafka topic

刪除kafka topic

1、因為專案原因,kakfa通道中經常造成資料阻塞,導致kafka通道中資料量過大,因此我需要將kakfa通道中資料清除(個人專案原因,一直使用一個消費者,只要保證當前消費者不在消費之前很久的資料就可以。因數量過大,造成topic阻塞,消費者消費太慢,還有可能造成重複消費問題)。下面將介紹刪除topic中資料或者日誌資料的方法。

A: 第一種方法就是

1):停掉kafka程序

2):刪除kafka的日誌資料,刪除topic

3);將zookeeper中的offset偏移量修改

      或者直接將topic刪除掉

4);重啟kafka程序或者重建kafka通道

這是比較保險也適用於大多數的情況

B: 如果我的需求只是讓當前消費者不在消費之前的阻塞資料,那麼可以用下面的方法來實現

1): 停掉kafka程序,將kafka的server.properties中的log.retention.hours=1/60;  將日誌資料保留1分鐘

或者

在不用停掉kafka程序的情況下執行:

kafka-configs.sh –zookeeper localhost:2181 –entity-type topics –entity-name test –alter –add-config retention.ms=10000
直接執行當前命令,可以在不停掉kafka程序的情況下,將日誌資料保留時間修改成1000毫秒(注意:這裡的設定的是毫秒)

這樣就可以保證當前消費者不會再消費阻塞的資料了。

 

以上兩種方式,都要保證沒有向通道中進行生產的資料的生產者
---------------------
作者:nicodeme
來源:CSDN
原文:https://blog.csdn.net/nicodeme/article/details/81950455
版權宣告:本文為博主原創文章,轉載請附上博文連結!