全量同步
過濾
1.全量同步某一張表
配置文件:
# tl;dr config
log_level=info
#kafka config
kafka_version=1.0.0
producer=kafka
kafka.bootstrap.servers=hadoop001:9092,hadoop002:9092,hadoop003:9092
kafka_topic = maxwell
#kafka produce options kafka.batch.size 代表條數還是字節呢? 條數
kafka.batch.size = 10000
kafka.max.request.size = 2097152
kafka.request.timeout.ms = 360000
kafka.acks = all
kafka.compression.type = snappy
kafka.metadata.fetch.timeout.ms= 360000
kafka.retries= 100
#kafka.linger.ms = 500
kafka.max.in.flight.requests.per.connection = 1
kafka.timeout.ms = 360000
kafka.buffer.memory = 536870912
kafka.max.block.ms = 1800000
#------------------------------------kafka options 處理數據亂序問題 -----------------------------------
#kafka producer partition
producer_partition_by=primary_key
#kafka monitor
metrics_type=http
metrics_http_port=8083
#------------------------------------Mysql options-----------------------
#mysql options
host=hadoop001
user=maxwell
password=wsx123$%^
schema_database=maxwell
jdbc_options=useSSL=false&serverTimezone=Asia/Shanghai
#------------------------------------mysql table options --------------------------------
#sync tables
include_dbs=ruozedata_erp
#include_tables=ruozedata_depothead
#--filter='exclude:*.*,include:ruozedata_erp.ruozedata_depothead'
注意:
--filter 參數 很重要 可以在命令行添加
表示 我只全量同步 ruozedata_erp.ruozedata_depothead 這個庫下面的這個表
命令:全量同步 ruozedata_erp.ruozedata_depothead 表
1.
./maxwell-bootstrap \
--config ~/app/maxwell-1.22.1/config.properties \
--database ruozedata_erp \
--table ruozedata_depothead \
--client_id maxwell_ruozedata_depothead
2.
./maxwell \
--config ~/app/maxwell-1.22.1/config.properties \
--client_id maxwell_ruozedata_depothead
這個全量完成之後 自動就變成 按照增量同步
這就是指定 某個表 全量同步!!
注意:
我測試的時候 使用spark 消費kafka 看到 會有這樣一條數據
注意:
全量同步 一個庫 下面 所有的表
只能一個 一個表 同步
因爲 maxwell-bootstrap 要指定 --table 即可
所以:
但是maxwell元數據 同步的時候也會 把自己的元數據數據 json 輸出
你在 spark 同步數據 到 phoenix 的時候 要注意 過濾