datax 批量同步和傳輸表


有時候,進行全量同步表時,涉及的表會比較多,可以使用參數定義表明的方式 進行調用datax的配置文件,這樣就不需要每次新增一張表就寫一個配置文件

{
    "job": {
        "content": [
            {
                "reader": {
                    "name": "oraclereader",
                    "parameter": {
                        "column": ["*"],
                        "connection": [
                            {
                                "jdbcUrl": ["jdbc:oracle:thin:@192.136.111.120:1521:ompio"],
                                "table": ["${readTb}"]
                            }
                        ],
                        "password": "hdgsjdgsj",
                        "username": "yuergjdgs"
                    }
                },
                "writer": {
                    "name": "oraclewriter",
                    "parameter": {
                        "column": ["*"],
                        "preSql": ["truncate table ${writeTb}" ],
                        "connection": [
                            {
                                "jdbcUrl": "jdbc:oracle:thin:@192.186.258.56:1521:uytbo",
                                "table": ["${writeTb}"]
                            }
                        ],
                        "password": "hdjfdj",
                        "username": "ghdssh"
                    }
                }
            }
        ],
        "setting": {
            "speed": {
                "channel": "10"
            }
        }
    }
}

然后 就需要進行全量同步的所有表整理在一個shell文件中,即使新增表,也只需要增加一行shell文件記錄,不需要重新寫配置文件,其中sh文件的名稱為test.sh,其內容如下

datax/bin/datax.py datax_json/full_update/poiu_full_update_tables.json -p "-DreadTb=poiu.dump_TEaR -DwriteTb=CDMDATA.dump_TEaR" --jvm="-Xms8G -Xmx8G"
datax/bin/datax.py datax_json/full_update/poiu_full_update_tables.json -p "-DreadTb=poiu.dump_MEaRCHANTI -DwriteTb=CDMDATA.dump_MEaRCHANTI" --jvm="-Xms8G -Xmx8G"
datax/bin/datax.py datax_json/full_update/poiu_full_update_tables.json -p "-DreadTb=poiu.dump_MERaC_CA -DwriteTb=CDMDATA.dump_MERaC_CA" --jvm="-Xms8G -Xmx8G"
datax/bin/datax.py datax_json/full_update/poiu_full_update_tables.json -p "-DreadTb=poiu.dump_MEaRC_REA -DwriteTb=CDMDATA.dump_MEaRC_REA" --jvm="-Xms8G -Xmx8G"

然后 再同步linux的定時任務,每日執行這個shell文件即可。如果同步的表有增加,只需要同步上面test.sh文件即可,將兩個表名進行替換一下即可。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM