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-dist\lib\ 文件夹下

1.2   编写bat脚本

进入 elasticsearch-jdbc-2.3.2.0-dist\bin

创建 oracle_to_es.bat

@echo off

set DIR=%~dp0

set LIB=%DIR%..\lib\*

set BIN=%DIR%..\bin

set JAVA_HOME=C:\Program   Files\Java\jdk1.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%\bin\java" -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%..\bin

set JAVA_HOME=C:\Program   Files\Java\jdk1.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%\bin\java" -cp   "%LIB%" -Dlog4j.configurationFile="%BIN%\log4j2.xml"   "org.xbib.tools.Runner" "org.xbib.tools.JDBCImporter"

Elasticsearch 2.3.2 从oracle中同步数据的更多相关文章

  1. oracle中的数据对象

    oracle中的数据对象有表.视图.索引.序列等 表的相关操作 1.创建表 方式一: 方式二:create table person( create table person1 id number(1 ...

  2. 在Oracle中更新数据时,抛出:ORA-01008: not all variables bound

    在Oracle中更新数据时,抛出了一个 :ORA-01008 not all variables bound, 我的理解是不是所有的变量/参数都有边界,不懂: 后来知道了,原来是“不是所有变量/参数都 ...

  3. MyBatis在Oracle中插入数据并返回主键的问题解决

    引言:  在MyBatis中,希望在Oracle中插入数据之时,同一时候返回主键值,而非插入的条数... 环境:MyBatis 3.2 , Oracle. Spring 3.2   SQL Snipp ...

  4. Sqoop_具体总结 使用Sqoop将HDFS/Hive/HBase与MySQL/Oracle中的数据相互导入、导出

    一.使用Sqoop将MySQL中的数据导入到HDFS/Hive/HBase watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFyb25oYWRvb3A=/ ...

  5. 实现从Oracle增量同步数据到GreenPlum

    简介: GreenPlum是一个基于PostgreSQL数据库开发的MPP架构的数据库仓库,适用于OLAP系统,支持50PB(1PB=1000TB)级海量数据的存储和处理. 背景: 目前有一个业务是需 ...

  6. Oracle中读取数据一些原理研究

    文章很多摘录了 http://blog.163.com/liaoxiangui@126/blog/static/7956964020131069843572/ 同时基于这篇文章的基础上,补充一些学习要 ...

  7. SQL数据同步到ElasticSearch(三)- 使用Logstash+LastModifyTime同步数据

    在系列开篇,我提到了四种将SQL SERVER数据同步到ES中的方案,本文将采用最简单的一种方案,即使用LastModifyTime来追踪DB中在最近一段时间发生了变更的数据. 安装Java 安装部分 ...

  8. 如何用Excel直接查询Oracle中的数据

    将Oracle中查询的数据保存为Excel文件,通常使用的是PL/SQL Developer. 其实,Excel可直接写SQL语句查询Oracle中数据,在这里,用到ODBC驱动.详细步骤如下: 一. ...

  9. 浅谈Oracle中物理结构(数据文件等。。。)与逻辑结构(表空间等。。。。。)

    初始Oracle时很难理解其中的物理结构和逻辑结构,不明白内存中和硬盘中文件的区别和联系,我也是初学Oracle,这里就简单的谈谈我我看法. 首先,你需要明白的一点是:数据库的物理结构是由数据库的操作 ...

随机推荐

  1. javaweb一

    JavaWeb就是在服务器端以Java语言为解释运行基础的web程序. php代码要想在服务器端运行,需要在服务器软件(通常是Apache)上加php的解释器,Java也一样,但是这个解释器是Tomc ...

  2. 如何使用定时器settimeout、setInterval执行能传递参数的函数(转)

    来自: http://www.cnblogs.com/wkylin/archive/2012/09/07/2674911.html var userName="jack";//根据 ...

  3. Kinect 开发 —— 开发前的准备工作

    Kinect SDK v1.5 支持托管语言和非托管语言 Xbox360的游戏是基于Xbox360开发工具包 (XDK)开发的,Xbox 360和Windows是两个完全不同的系统架构.使用Kinec ...

  4. 3/16 Django框架 环境搭建

    3/16 Django框架 环境搭建 环境搭建 Python解释器 Python代码通过Python解释器去执行. 编程语言 机器语言---汇编语言(助记符)---高级语言 解释型语言:解释器将代码一 ...

  5. ArcGIS “Error HRESULT E_FAIL has been returned from a call to a COM component.” 异常的解决

    错误提示内容: {System.Runtime.InteropServices.COMException (0x80004005): Error HRESULT E_FAIL has been ret ...

  6. 通过一个案例彻底读懂10046 trace--字节级深入破解

    转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/37840583 2014.7.23晚20:30 Oracle support组猫大师分享&l ...

  7. 搜索 debian8.7.1 ,google vs baidu

    国外的 Linux 比国内流行, debian官方网站只能找到当前版本DVD文件.想找旧版的Debian在百度一圈后徒劳无功,于是把目标转向 google ,只需要输入 debian?8.7.1-i3 ...

  8. onvif开发实战2--总结框架搭建

    完成框架搭建后,编写自己的主函数起onvif服务 编写makefile objs = onvif.o onvif_func.o duration.o soapC.o soapServer.o stds ...

  9. Mahout应用

    不多说,直接上干货! Mahout作为Apache基金会的顶级项目之一,Mahout的应用也极其广泛,一般分为商业应用和学术应用. 在商业应用中,Adobe AMP公司使用Mahout的聚类算法把用户 ...

  10. bzoj3307雨天的尾巴(权值线段树合并/DSU on tree)

    题目大意: 一颗树,想要在树链上添加同一物品,问最后每个点上哪个物品最多. 解题思路: 1.线段树合并 假如说物品数量少到可以暴力添加,且树点极少,我们怎么做. 首先在一个树节点上标记出哪些物品有多少 ...