Elasticsearch 2.3.2 从oracle中同步数据

Elasticsearch 2.3.2 从oracle中同步数据

 

1         数据批量导入-oracle

采用 elasticsearch-jdbc 插件 安装.版本需要ES版本一致

最新 elasticsearch-jdbc 需要 jdk 1.8的支持

1.1   安装 elasticsearch-jdbc

下载elasticsearch-jdbc-2.3.2.0-dist.zip 并解压

将 oracle 驱动jar包 拷贝到elasticsearch-jdbc-2.3.2.0-distlib 文件夹下

1.2   编写bat脚本

进入 elasticsearch-jdbc-2.3.2.0-distin

创建 oracle_to_es.bat

@echo off

set DIR=%~dp0

set LIB=%DIR%..lib*

set BIN=%DIR%..in

set JAVA_HOME=C:Program   FilesJavajdk1.8.0_92

echo {^

      "type" : "jdbc",^

      "jdbc" : {^

          "url" :   "jdbc:oracle:thin:@192.168.173.232:1521:adb1",^

          "user" : "wee3",^

          "password" : "wee3",^

          "sql" :  "select   content as "content",title as "title",author as   "author",to_char(publish_date,'YYYY/MM/DD') as "publish_date",category   as "category" from TEST_ES",^

          "elasticsearch" : {^

             "cluster" :   "elasticsearch",^

             "host" :   "localhost",^

             "port" : 9300^

          },^

          "index" : "test",^

          "type" : "news"^

        }^

}^ | "%JAVA_HOME%injava" -cp   "%LIB%" -Dlog4j.configurationFile="%BIN%log4j2.xml"   "org.xbib.tools.Runner" "org.xbib.tools.JDBCImporter"

删除 index重新创建 并导入数据

@echo off

curl -XDELETE   "http://localhost:9200/test/"

set DIR=%~dp0

set LIB=%DIR%..lib*

set BIN=%DIR%..in

set JAVA_HOME=C:Program   FilesJavajdk1.8.0_92

echo {^

      "type" : "jdbc",^

      "jdbc" : {^

          "url" :   "jdbc:oracle:thin:@192.168.173.232:1521:adb1",^

          "user" : "wee3",^

          "password" : "wee3",^

          "sql" :  "select   content as "content",title as "title",author as   "author",to_char(publish_date,'YYYY/MM/DD') as   "publish_date",category as "category" from   TEST_ES",^

          "elasticsearch" : {^

             "cluster" :   "elasticsearch",^

             "host" :   "localhost",^

             "port" : 9300^

          },^

          "index" : "test",^

          "type" : "news",^

          "index_settings" : {^

                   "index": {^

                                  "number_of_replicas":   "1",^

                                  "number_of_shards":   "5"^

                                }^

          },^

          "type_mapping": {^

                   "news": {^

                                  "properties": {^

                                    "content": {^

                                      "analyzer":   "ik",^

                                      "type":   "string"^

                                    },^

                                    "author": {^

                                      "index":   "not_analyzed",^

                                      "type":   "string"^

                                    },^

                                    "title": {^

                                      "analyzer":   "ik",^

                                      "boost": 5,^

                                      "type":   "string"^

                                    },^

                                    "category": {^

                                      "index":   "not_analyzed",^

                                      "type":   "string"^

                                    },^

                                    "publish_date": {^

                                      "format": "yyyy/mm/dd",^

                                      "type": "date"^

                                    }^

                                  }^

                                }^

          }^

        }^

}^ | "%JAVA_HOME%injava" -cp   "%LIB%" -Dlog4j.configurationFile="%BIN%log4j2.xml"   "org.xbib.tools.Runner" "org.xbib.tools.JDBCImporter"

原文地址:https://www.cnblogs.com/Leo_wl/p/7683364.html