Kafka数据备份

楼高2年前技术文章1200

一、数据备份

Kafka的数据备份包括两种类型:全量备份和增量备份

全量备份是将整个 Kafka 的数据复制到一个不同的地方

增量备份是在全量备份后仅仅备份增量的数据

二、全量备份

# 指定备份的主题

BACKUP_TOPIC=test# 指定备份的数据目录

BACKUP_DIR=/tmp/backup# 创建备份目录

mkdir -p $BACKUP_DIR# 备份主题数据

kafka-console-consumer.sh \--bootstrap-server localhost:9092 \--topic 

$BACKUP_TOPIC \--from-beginning \> $BACKUP_DIR/$BACKUP_TOPIC.txt

上述代码使用 kafka-console-consumer.sh 工具将主题 $BACKUP_TOPIC 

的数据备份到 $BACKUP_DIR 目录下的 $BACKUP_TOPIC.txt 文件中。

注意:该脚本是同步备份会阻塞线程,备份时间较长时,建议使用异步备份方式。

三、增量备份

增量备份需要借助第三方工具

例如 Kafka 的 MirrorMaker 等实现

下面是 MirrorMaker 的用法示例:

# 指定源和目的地址

SOURCE_HOST=localhost:9092

DESTINATION_HOST=backup-host:9092# 创建 MirrorMaker 配置文件

cat > /tmp/mirror-maker.properties <<EOF

consumer.bootstrap.servers=$SOURCE_HOST

producer.bootstrap.servers=$DESTINATION_HOST

EOF# 运行 MirrorMaker

kafka-run-class.sh kafka.tools.MirrorMaker \--consumer.config 

\ /tmp/mirror-maker.properties 

\--producer.config /tmp/mirror-maker.properties \--whitelist $BACKUP_TOPIC

上述代码中创建一个 MirrorMaker 配置文件将源端的数据同步到目标端--whitelist 

参数指定备份的主题


相关文章

Doris资源管理

资源管理为了节省Doris集群内的计算、存储资源,Doris需要引入一些其他外部资源来完成相关的工作,如Spark/GPU用于查询,HDFS/S3用于外部存储,Spark/MapReduce用于ETL...

Clickhouse MergeTree原理(二)—— 表和分区的维护

MergeTree是Clickhouse中最核心的存储引擎。上一篇文章中,我们介绍了MergeTree的基本结构。1、MergeTree由分区(partiton)和part组成。2、Part是Merg...

Hive删除外部表

Hive删除外部表

删除外部表操作例:1.首先我们创建一个外部表create EXTERNAL table if not exists mgtest(id int, name string)row format deli...

CDP实操--配置Ranger Kafka Policy(六)

CDP实操--配置Ranger Kafka Policy(六)

1.在 Cloudera Manager 中,导航到Kafka > Configuration。2.将SSL 客户端身份验证设置为none.3.将代理间协议设置为 SASL_PLAINTEXT。...

bucket跨域问题处理

bucket跨域问题处理

问题描述OSS bucket 访问存在跨域问题问题处理查看oss 能否针对整个bucket设置no-cache吗核实目前阿里云后台只支持单个文件的HTTP头设置,不支持批量设置,如果有多个文件或者后续...

InnoDB秘籍:MVCC机制与行锁的深度探索(2)

InnoDB秘籍:MVCC机制与行锁的深度探索(2)

InnodDB 和 ACID 模型事务 ACID 模型是一种数据库设计原则,InnoDB 引擎是 MySQL 默认且支持事务的存储引擎,它严格遵循 ACID 模型,结果也不会因软件崩溃和硬件故障等特殊...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。