DataX 阿里巴巴 離線數據同步工具/平臺使用2———mysql to elasticsearch

將mysql數據同步到elasticsearch

安裝的mysql和elasticsearch在同一臺服務器上,elasticsearch版本6.5.1

1、安裝DataX

下載源碼:https://github.com/alibaba/DataX?spm=a2c4g.11186623.2.12.317b3680my463k

然後編譯,編譯過程中會出現一些jar無法下載的問題,可以在編譯的時候只保留mysql和elasticsearch的模塊,把pom.xml中的其他modul註釋掉

<modules>
        <module>common</module>
        <module>core</module>
        <module>transformer</module>

        <!-- reader -->
        <module>mysqlreader</module>
        <!--<module>drdsreader</module>
        <module>sqlserverreader</module>
        <module>postgresqlreader</module>
        <module>oraclereader</module>
        <module>odpsreader</module>
        <module>otsreader</module>
        <module>otsstreamreader</module>
        <module>txtfilereader</module>
        <module>hdfsreader</module>
        <module>streamreader</module>
        <module>ossreader</module>
        <module>ftpreader</module>
        <module>mongodbreader</module>
        <module>rdbmsreader</module>
        <module>hbase11xreader</module>
        <module>hbase094xreader</module>
        <module>opentsdbreader</module>-->

        <!-- writer -->
        <!--<module>mysqlwriter</module>
        <module>drdswriter</module>
        <module>odpswriter</module>
        <module>txtfilewriter</module>
        <module>ftpwriter</module>
        <module>hdfswriter</module>
        <module>streamwriter</module>
        <module>otswriter</module>
        <module>oraclewriter</module>
        <module>sqlserverwriter</module>
        <module>postgresqlwriter</module>
        <module>osswriter</module>
        <module>mongodbwriter</module>
        <module>adswriter</module>
        <module>ocswriter</module>
        <module>rdbmswriter</module>
        <module>hbase11xwriter</module>
        <module>hbase094xwriter</module>
        <module>hbase11xsqlwriter</module>
        <module>hbase11xsqlreader</module>-->
        <module>elasticsearchwriter</module>
        <!--<module>tsdbwriter</module>-->

2、 設置數據傳輸的json文件

可以參考:https://helpcdn.aliyun.com/document_detail/62149.html

{
    "job": {
        "content": [
            {
                "reader": {
                    "name": "mysqlreader", 
                    "parameter": {
                        "column": [
               
                            "name",
                            "passwd"
            ], 
                        "connection": [
                            {
                                "jdbcUrl": ["jdbc:mysql://192.168.68.128:3306/company3_home?useUnicode=true&characterEncoding=utf-8"], 
                                "table": ["user_info"]
                            }
                        ], 
                        "password": "123456", 
                        "username": "root", 
                        "where": ""
                    }
                }, 
                 "writer": {
              "name": "elasticsearchwriter", 
              "parameter": {
                  "accessId": "xxx",   
                  "accessKey": "xxx",  
                  "endpoint": "http://192.168.68.128:9200",  
                  "index": "school_index", 
                  "type": "user_info",  
                  "cleanup": false,  
                  "discovery":false, #此字段要特別注意,我本地是單機的es
                  "batchSize": 2000,  
                  "column": [
            
                      {
                          "name": "name",
                          "type": "text"  
                      },
                      {
                          "name": "passwd", 
                          "type": "text"  
                      }
                  ]
              }
          }
            }
        ], 
        "setting": {
            "speed": {
                "channel": 10
            }
        }
    }
}

 

3、執行

在數據傳輸之前,可以不用在es中創建index,type,mapping

 


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章