清理offset_kafka数据清理
Kafka将数据持久化到了硬盘上,允许你配置一定的策略对数据清理,清理的策略有两个,删除和压缩。
数据清理的方式
删除
log.cleanup.policy=delete启用删除策略
直接删除,删除后的消息不可恢复。可配置以下两个策略:
清理超过指定时间清理:
log.retention.hours=16
超过指定大小后,删除旧的消息:
log.retention.bytes=1073741824
为了避免在删除时阻塞读操作,采用了copy-on-write形式的实现,删除操作进行时,读取操作的二分查找功能实际是在一个静态的快照副本上进行的,这类似于Java的CopyOnWriteArrayList。
压缩
将数据压缩,只保留每个key最后一个版本的数据。
首先在broker的配置中设置log.cleaner.enable=true启用cleaner,这个默认是关闭的。
在topic的配置中设置log.cleanup.policy=compact启用压缩策略。
压缩策略的细节
如上图,在整个数据流中,每个Key都有可能出现多次,压缩时将根据Key将消息聚合,只保留最后一次出现时的数据。这样,无论什么时候消费消息,都能拿到每个Key的最新版本的数据。
压缩后的offset可能是不连续的,比如上图中没有5和7,因为这些offset的消息被merge了,当从这些offset消费消息时,将会拿到比这个offset大的offset对应的消息,比如,当试图获取offset为5的消息时,实际上会拿到offset为6的消息,并从这个位置开始消费。
这种策略只适合特俗场景,比如消息的key是用户ID,消息体是用户的资料,通过这种压缩策略,整个消息集里就保存了所有用户最新的资料。
压缩策略支持删除,当某个Key的最新版本的消息没有内容时,这个Key将被删除,这也符合以上逻辑。
例子:
log.cleaner.enable=true
log.cleaner.delete.retention.ms=4day
log.retention.hours=72
log.retention.bytes=419430400
log.segment.bytes=1073741824
log.retention.check.interval.ms=300000
Kafka 的详细介绍:请点这里
Kafka 的下载地址:请点这里
清理offset_kafka数据清理相关推荐
- 数据分析 数据清理_数据清理| 数据科学
数据分析 数据清理 数据清理 (Data Cleaning) Data cleaning is the way toward altering information to guarantee tha ...
- python的数据清理_Python数据清理,清洗
一.数据清洗与准备 1.缺失值 NaN(np.nan): 对数值型数据,浮点值NaN(not a number) NA(not available) None 均为缺失值,通过data.isnull( ...
- 数据挖掘-数据清理过程
数据清理-数据清理过程 数据清理过程的第一步是偏差检测(discrepancy detection). 导致偏差的因素有很多,包括: 具有很多可选字段的设计糟糕的输入表单 人为的数据输入错误 有意的错 ...
- 数据挖掘-数据清理-缺失值
数据清理-缺失值 数据清理例程试图填充缺失的值.光滑噪声并识别离群点.纠正数据中的不一致. 缺失值 在处理数据时,会发现很多元组的一些属性没有记录值.可使用以下方法补充. (1) 忽略元组:当缺少类标 ...
- azure机器学习_Azure机器学习中的数据清理
azure机器学习 介绍 (Introduction) After discussing the basic features of Azure Machine Learning in my prev ...
- 数据导入与预处理-第5章-数据清理
数据导入与预处理-第5章-数据清理 1. 数据清理概述 1.1 数据清理概述 1.2 什么是缺失值 1.3 什么是重复值 1.4 什么是异常值 2. 数据清理案例 2.1 缺失值处理 2.1.1 缺失 ...
- Python数据清理终极指南(2020版)
作者 | Lianne & Justin 译者 | 陆离 出品 | AI科技大本营(ID:rgznai100) 一般来说,我们在拟合一个机器学习模型或是统计模型之前,总是要进行数据清理的工作. ...
- 独家 | 用于数据清理的顶级R包(附资源)
作者:Anna Kayfitz,CEO of StrategicDB Corp 翻译:顾宇华 校对:杨光 本文约1700字,建议阅读5分钟. 确保数据干净整洁应该始终是数据科学工作流程中首要也是最重要 ...
- 臭名昭著的数据清理和准备问题,如何利用AI完美解决?
2020-03-18 17:01:00 全文共3299字,预计学习时长10分钟 来源:Pexels 人工智能和深度学习在处理非结构化数据方面表现突出,从自然语言理解和自动知识库构建到图像和视频的分类和 ...
- pandas中drop用法_python进行数据清理之pandas中的drop用法
好久好久没有更新博客了,之前自学的估计也都忘记差不多了.由于毕业选择从事的行业与自己的兴趣爱好完全两条路,心情也难过了很久,既然入职了就要好好干,仍要保持自己的兴趣,利用业余时间重拾之前的乐趣. 从基 ...
最新文章
- Gradle安装使用以及基本操作
- hdu1693Eat the Trees(插头dp)
- 汇总500个excel
- python手机版编程-可以使用手机编程实现python吗
- 【鸿蒙 HarmonyOS】Ability 简介 ( 简介 | 创建应用 | Page Ability 生命周期 )
- 计算机达人成长之路(3)连载
- 记录一次quartus II prime standard 18添加器件库的方法
- SLAM知识[7]:依赖项和安装
- 送书 | 经典框架Kaldi配套的语音识别实战
- JDK10的新特性:var泛型和多个接口实现
- C#异步批量下载文件
- excel 多列匹配相等后 引用值
- bigdecimal 平均数_MapReduce实例-必须用Combine--求平均数
- Oracle-一个中文汉字占几个字节?
- linux ssh连接交换机_访问SMB交换机CLI使用SSH或远程登录
- [2018.04.29 T3] 矩阵
- JavaScript 3D 散点图
- Oracle cmd sqlplus 命令
- linux svc作用,[svc]linux性能监控
- MAC表、ARP缓存表、路由表以及端口映射NAT