Centos7.9 から datax-web2.0 まで_Datax3.0 を使用して postgresql を mysql および hbase にそれぞれ同期_mysql を mysql および hbase に同時に同期 --- DataX ビッグデータの作業メモ 005

  まず、datax-web を使用して、datax3.0 を通じて postgresql から mysql にデータを同期する方法を見てみましょう。

対応する datax に必要な json ファイルもここにあります

まず、data-web に移動して、必要な json を構築します。ここでは、最初にデータ ソースを追加します。ここでは、mysql から 2 つのデータ ソース、postgresql から 1 つ、hbase から 1 つを追加しました。他のブログ投稿で述べたように、json を hbase に書き込みます大丈夫、テンプレートが用意されているので、必要なときにそれを直接コピーできます。

Json の最後に以下を追加する必要があることに注意してください。

,
  "core": {
    "transport": {
      "channel": {
        "speed": {
          "byte": 1231412
        }
      }
    }
  }

 完全な JSON を見てみましょう

{
  "job": {
    "setting": {
      "speed": {
        "channel": 3,
        "byte": 1048576
      },
      "errorLimit": {
        "record": 0,
        "percentage": 0.02
      }
    },
    "content": [
      {
        "reader": {
          "name": "postgresqlreader",
          "parameter": {
            "username": "XVko54UY9nOe/3JQGQUikw==",
            "password": "XCYVpFosvZBBWobFzmLWvA==",
            "column": [
              "\"id\"",
              "\"name\"",
              "\"mobile\"",
              "\"email\"",
              "\"son_json\""
            ],
            "splitPk": "",
            "connection": [
              {
                "table": [
                  "public.userinfo"
                ],
                "jdbcUrl": [
                  "jdbc:postgresql://172.19.126.122:5432/test_db"
                ]
              }
            ]
          }
        },
        "writer": {
          "name": "mysqlwriter",
          "parameter": {
            "username": "yRjwDFuoPKlqya9h9H2Amg==",
            "password": "XCYVpFosvZBBWobFzmLWvA==",
            "column": [
              "`id`",
              "`name`",
              "`email`",
              "`mobile`",
              "`son_json`"
            ],
            "connection": [
              {
                "table": [
                  "userinfo"
                ],
                "jdbcUrl": "jdbc:mysql://172.19.126.123:3306/nifibase?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=UTF8&serverTimezone=Asia/Shanghai&useSSL=false&verifyServerCertificate=false&autoReconnect=true&failOverReadOnly=false"
              }
            ]
          }
        }
      }
    ]
  },
  "core": {
    "transport": {
      "channel": {
        "speed": {
          "byte": 1231412
        }
      }
    }
  }
}

 ここで実行してデータを渡します

 ---------------------

次に、datax-web を介して Postgresql のデータを hbase にインポートする方法を見てみましょう。ここでは Phoenix を使用しています。

対応する JSON ファイルもここにあります。

{
  "job": {
    "setting": {
      "speed": {
        "channel": 3,
        "byte": 1048576
      },
      "errorLimit": {
        "record": 0,
        "percentage": 0.02
      }
    },
    "content": [
      {
        "reader": {
          "name": "postgresqlreader",
          "parameter": {
            "username": "XVko54UY9nOe/3JQGQUikw==",
            "password": "XCYVpFosvZBBWobFzmLWvA==",
            "column": [
              "\"id\"",
              "\"name\"",
              "\"mobile\"",
              "\"email\"",
              "\"son_json\""
            ],
            "splitPk": "",
            "connection": [
              {
                "table": [
                  "public.userinfo"
                ],
                "jdbcUrl": [
                  "jdbc:postgresql://172.19.126.122:5432/test_db"
                ]
              }
            ]
          }
        },
        "writer": {
          "name": "hbase20xsqlwriter",
          "parameter": {
            "batchSize": "100",
            "column": [
              "id",
              "name",
              "mobile",
              "email",
              "son_json"
            ],
            "queryServerAddress": "http://127.0.0.1:8765",
            "nullMode": "skip",
            "table": "userinfo"
          }
        }
      }
    ]
  },
  "core": {
    "transport": {
      "channel": {
        "speed": {
          "byte": 1231412
        }
      }
    }
  }
}

タスクを構築するには、mysql に postgresql を構築し、json を取得した後に変更します。ここでは、実行可能な対応する json を直接与えます。

まず対応するタスクを実行します 

 まず、hbase の userinfo テーブルをクリアしましょう。ここでは、squirrel を使用して、Phoenix 経由で hbase を操作します。

次に同期を実行します

 実行後、同期されていることが確認できます。

------------------------------

次に、datax-web を通じてそれを実現し、postgresql からデータを読み取り、それを hbase テーブルと mysql テーブルに同時に保存する方法を見てみましょう。

 まず、mysql テーブルのデータをクリアしましょう

次に、hbase テーブルのデータをクリアします。

次に、jsonを見てください

 

おすすめ

転載: blog.csdn.net/lidew521/article/details/131492133