DataX postgresql から tdenginue への移行
環境整備
DataX の実行には Java 1.8 と Python 環境が必要です。Python は 2.0 と 3.0 をサポートしています。ここでは python3.6 を使用します
DataXをダウンロード
unzipDataX
tar -zxvf dataX.tar.gz
DataX ジョブの書き込み
ジョブ ファイルを書き込みます。サフィックスは json です
{
"job": {
"setting": {
"speed": {
// 设置传输速度,单位为byte/s,DataX运行会尽可能达到该速度但是不超过它.
"byte": 10485762
},
//出错限制
"errorLimit": {
//出错的record条数上限,当大于该值即报错。
"record": 0,
//出错的record百分比上限 1.0表示100%,0.02表示2%
"percentage": 0.02
}
},
"content": [{
"reader": {
"name": "postgresqlreader",
"parameter": {
// 数据库连接用户名
"username": "***",
// 数据库连接密码
"password": "***",
"column": [
"data_time", "product_id", "type", "content", "create_time", "device_id", "id"
],
//切分主键
//"splitPk": "id",
"connection": [{
"table": [
"迁移目标表"
],
//"querySql": [
// "SELECT 'device_log_djzttcc_d1' AS tbname,data_time AS _ts, product_id AS productid, type , content , device_id AS deviceid from logdev_d1;"
//],
"jdbcUrl": [
"jdbc:postgresql://ip:port/数据库名"
]
}]
}
},
"writer": {
"name": "tdengine30writer",
"parameter": {
"username": "***",
"password": "***",
"column": [
"_ts",
"productid",
"type",
"content",
"createtime",
"deviceid",
"id"
],
"connection": [{
"table": [
"迁移目的库"
],
"jdbcUrl": "jdbc:TAOS://ip:port/数据库名"
}],
"batchSize": 100,
"ignoreTagsUnmatched": true
}
}
}]
}
}
ここで注意すべき点は、alibaba/datax ウェアハウスには td2.0 ライターしかないということです。td3.0 を書きたい場合は、taosdata/datax ウェアハウスに移動して tdengine30writer をコンパイルし、datax に置く必要があります。プラグインディレクトリ。
名詞の説明と修正箇所
- リーダー、ライターは読み取りおよび書き込みプラグインを指します。公式サポートは次のとおりです。
タイプ | 情報元 | リーダー(読む) | ライター(書く) | 書類 |
---|---|---|---|---|
RDBMSリレーショナルデータベース | MySQL | √ | √ | 読む、書く |
オラクル | √ | √ | 読む、書く | |
オーシャンベース | √ | √ | 読む、書く | |
SQLサーバー | √ | √ | 読む、書く | |
PostgreSQL | √ | √ | 読む、書く | |
DRDS | √ | √ | 読む、書く | |
ユニバーサル RDBMS (すべてのリレーショナル データベースをサポート) | √ | √ | 読む、書く | |
Alibaba Cloud データ ウェアハウス データ ストレージ | ODPS | √ | √ | 読む、書く |
ADS | √ | 書く | ||
OSS | √ | √ | 読む、書く | |
OCS | √ | 書く | ||
NoSQLデータストレージ | OTS | √ | √ | 読む、書く |
Hbase0.94 | √ | √ | 読む、書く | |
Hbase1.1 | √ | √ | 読む、書く | |
フェニックス4.x | √ | √ | 読む、書く | |
フェニックス5.x | √ | √ | 読む、書く | |
モンゴDB | √ | √ | 読む、書く | |
ハイブ | √ | √ | 読む、書く | |
カサンドラ | √ | √ | 読む、書く | |
非構造化データストレージ | テキストファイル | √ | √ | 読む、書く |
FTP | √ | √ | 読む、書く | |
HDFS | √ | √ | 読む、書く | |
エラスティックサーチ | √ | 書く | ||
時系列データベース | OpenTSDB | √ | 読む | |
TSDB | √ | √ | 読む、書く | |
TDエンジン2.0 | √ | √ | 読む、書く | |
TDエンジン3.0 | √ | √ | 読む、書く |
- connection は、クエリまたは書き込みテーブルとライブラリ接続アドレスを指定します。
スクリプトを実行する
python datax.py によって書かれたジョブ ファイル .json