[英]How to do an initial snapshot load with debezium mysql connector kafka?
我正在使用 Kafka 集群和 Debezium MySql 連接器來獲取從數據庫更新到 Elasticsearch 的消息。 有一段時間我在做一些測試,最終得到了一個混合 ES,所以我想對 Elasticsearch 進行全新的滿載。
所以我想停止 debezium 連接器以停止饋送 ES 並刪除所有索引,以便當我再次啟動連接器時它可以滿載。 據我所知,連接器僅適用於pause/resume
操作,並且不執行初始加載。
此時,我將手動刪除連接器和創建的主題並重新創建它們,以便它可以按初始狀態加載,但是關於如何在正確的步驟中執行此清理過程的任何想法?
我不知道是否有更好的方法,但這個解決方案對我有用:
/etc/kafka/connect-distributed.properties
守護程序的服務。sudo systemctl stop confluent-connect-distributed.service
curl -X DELETE http://localhost:8083/connectors/<connector name>
__consumer_offsets
_confluent-command
_schemas
connect-configs
connect-offsets
connect-status
kafka-topics --bootstrap-server <kafka bootstrap> --delete --topic <topic name>
kafka-topics --create --bootstrap-server <boostrap kafka> --topic connect-configs --replication-factor 3 --partitions 1 --config cleanup.policy=compact
kafka-topics --create --bootstrap-server <boostrap kafka> --topic connect-offsets --replication-factor 3 --partitions 50 --config cleanup.policy=compact
kafka-topics --create --bootstrap-server <boostrap kafka> --topic connect-status --replication-factor 3 --partitions 10 --config cleanup.policy=compact
sudo systemctl start confluent-connect-distributed.service
curl -s -i -X PUT -H "Content-Type:application/json" \
http://localhost:8083/connectors/<connector name>/config \
-d '<json>'
這樣,您最終將在 elasticsearch 中獲得初始快照。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.