elasticsearch river 从数据库中导入数据
Elasticsearch中使用reiver-jdbc导入数据
Elasticsearch中使用reiver-jdbc导入数据,有需要的朋友可以参考下。
Elastisearch中提供了river模块来从其他数据源中获取数据,该项功能以插件的形式存在,目前已有的river插件包括:
river pluginsedit
1. Supported by Elasticsearch
- CouchDB River Plugin
- RabbitMQ River Plugin
- Twitter River Plugin
- Wikipedia River Plugin
2. Supported by the community
- ActiveMQ River Plugin (by Dominik Dorn)
- Amazon SQS River Plugin (by Alex Bogdanovski)
- CSV River Plugin (by Martin Bednar)
- Dropbox River Plugin (by David Pilato)
- FileSystem River Plugin (by David Pilato)
- Git River Plugin (by Olivier Bazoud)
- GitHub River Plugin (by uberVU)
- Hazelcast River Plugin (by Steve Samuel)
- JDBC River Plugin (by Jörg Prante)
- JMS River Plugin (by Steve Sarandos)
- Kafka River Plugin (by Endgame Inc.)
- LDAP River Plugin (by Tanguy Leroux)
- MongoDB River Plugin (by Richard Louapre)
- Neo4j River Plugin (by Steve Samuel)
- Open Archives Initiative (OAI) River Plugin (by Jörg Prante)
- Redis River Plugin (by Steve Samuel)
- RSS River Plugin (by David Pilato)
- Sofa River Plugin (by adamlofts)
- Solr River Plugin (by Luca Cavanna)
- St9 River Plugin (by Sunny Gleason)
- Subversion River Plugin (by Pascal Lombard)
- DynamoDB River Plugin (by Kevin Wang)
可以看出,已经覆盖了大部分的数据源,特别是针对关系型数据库提供了统一的jdbc-river来进行数据操作。
elasticsearch-river-jdbc的源码在:https://github.com/jprante/elasticsearch-river-jdbc,该项目提供了详细的文档,下面以SQL Server为例简单说明使用方法。
首先,需要安装elasticsearch-river-jdbc,在elasticsearch目录下执行:
./bin/plugin --install jdbc --url http://xbib.org/repository/org/xbib/elasticsearch/plugin/elasticsearch-river-jdbc/1.1.0.1/elasticsearch-river-jdbc-1.1.0.1-plugin.zip
然后,安装SQLServer的JDBC库,链接为:Microsoft
JDBC Driver。把其中的‘sqljdbc4.jar’复制到elasticsearch安装目录的lib文件夹下。
考虑到elasticsearch集群,以上两个步骤在每个节点上都需要执行。
最后也是最关键的一步,在elasticsearch中建立river,让elasticsearch自动从SQLServer中获取数据。
PUT /_river/mytest_river/_meta
{
“type” : “jdbc”,
“jdbc” : {
“driver”:”com.microsoft.sqlserver.jdbc.SQLServerDriver”,
“url”:”jdbc:sqlserver://MYSQLSERVERNAME;databaseName=MYProductDatabase”,
“user”:”admin”,”password”:”Password”,
“sql”:”select ProductID as _id, CategoryID,ManufacturerID,MfName,ProductTitle,MfgPartNumber from MyProductsTable(nolock)”,
“poll”:”10m”,
“strategy” : “simple”,
“index” : “myinventory”,
“type” : “product”,
“bulk_size” : 100,
“max_retries”: 5,
“max_retries_wait”:”30s”,
“max_bulk_requests” : 5,
“bulk_flush_interval” : “5s”
}
}
其中,各个参数选项的含义参阅文档:https://github.com/jprante/elasticsearch-river-jdbc/wiki/JDBC-River-parameters
参考文档:
- http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html
- http://blog.csdn.net/an74520/article/details/8740065
- http://www.techovity.com/create-river-elasticsearch-ms-sql-server-automatic-data-transfer/
elasticsearch river 从数据库中导入数据的更多相关文章
- ArcCatalog中通过ArcSDE向Oracle数据库中导入数据
将数据导入到Oracle指定的表空间的具体内容如下: 首先,在ArcCatalog中建立指定表空间的数据库连接(要以指定表空间的用户登录): 然后,在ArcCatlog中定位到数据源,选中并拷贝图层; ...
- Solr 07 - Solr从MySQL数据库中导入数据 (Solr DIH的使用示例)
目录 1 加入数据导入处理器的jar包 2 加入数据库驱动包 3 配置solrconfig.xml文件 3.1 配置lib标签 - 加入驱动jar包 3.2 配置requestHandler标签 - ...
- SQLServer---------使用Excel 往sqlServer数据库中导入数据
1.右击创建好的表选择编辑200行 2.保证Excel的字段顺序与数据中顺序一致 3.选中好了后进行复制 4.打开文本 一个快捷方式 将excel 中的数据 黏贴放到文本中 5.点击sql ...
- [MySQL]load data local infile向MySQL数据库中导入数据时,无法导入和字段不分离问题。
利用load data将文件中的数据导入数据库表中的时候,遇到了两个问题. 首先是load data命令无法执行的问题: 命令行下输入load data local infile "path ...
- solr6.6教程-从mysql数据库中导入数据(三)
整理多半天的solr6.6,终于算是把solr6.6中配置数据库弄出来了,网上的文章千篇一律,各说个的,没有一篇统一覆盖solr6.6版本配置的 帖子,本章节我会把配置的一些注意事项一一列举,由于时间 ...
- Solr 创建core 从MySql数据库中导入数据
一.创建数据表和数据 在MySql数据中创建mysolrInfo表, 创建字段 id 主键,自动增加 pname :姓名 age :年龄 addtime :增加时间 增加几条数据 二.创建core 当 ...
- phpexcel的写操作将数据库中的数据导入到excel中
这个版本据说是可以支持excel2007,但是我使用2007编辑的xlsx是无法获得该库的支持.于是乎我就将它转化为2003.感觉支持地很好. 下面介绍一下具体的使用: require_once('. ...
- 用python批量向数据库(MySQL)中导入数据
用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同 Current database: pyt ...
- solr插件导入数据库中的数据
solr插件导入数据库中的数据 1:自定义与数据库对应的域: 1.1. 设置业务系统Field 如果不使用Solr提供的Field可以针对具体的业务需要自定义一套Field. 例如:如下是商品信息Fi ...
随机推荐
- WIN10安装CUDA10 cuDNN
文章目录 CPU和GPU 什么是CUDA 什么是cuDNN WIN10安装CUDA10 WIN10安装cuDNN CPU和GPU CPU和GPU是不一样的计算机设备,CPU作为计算机心脏一直被人们所认 ...
- 小白 Linux下安装Elasticsearch5.X
最近做个项目需要使用到 Elasticsearch5 刚接触liunx 遇到了很多问题记录下 以这篇文章为基础 http://www.cnblogs.com/ShawnYuki/p/6818677.h ...
- Algo: Basic
1. 二维数组的查找 2. 替换空格 3. 从尾到头打印链表 4. 重建二叉树 5. 用两个栈实现队列 6. 旋转数组的最小数字 7. 斐波那契数列 8. 跳台阶 9. 变态跳台阶 10. 矩阵覆盖 ...
- drupal7 代码生成用户,并自动登录
直接上代码 1. 生成用户(注册) $edit = [ "name" => "name", "pass" => "pa ...
- python中与time模块和datetime模块相关操作
使用time模块计时程序运行时长 import time time_start = time.time() #程序主体部分 time_end = time.time() print('总耗时: ', ...
- 概率dp——hdu4089推公式+循环迭代
迭代是化简公式的常用技巧 dp[i][j]表示队伍中有i人,tomato排在第j位出现情况2的概率,那么先推出公式再进行简化 dp[i][1]=p21*dp[i][i] + p41 j<=k : ...
- 计算几何——判线段规范相交+最短路zoj1721
枚举每个端点,然后i点j点连线作为一条路径,逐一判断这条路径是否可行即可 注意的地方:判一条线段是否可行,需要判其余线段是否和其相交,但是这个相交比较难判(因为会不规范相交),所以将问题转化为墙以外的 ...
- System.Drawing.Graphics.cs
ylbtech-System.Drawing.Graphics.cs 1.程序集 System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKey ...
- Java笔记 - GUI编程
一.图形界面开发 1.AWT开发 AWT(Abstract Window Toolkit)在Windows.Linux提供的图形窗口之上,再次进行了抽象,为不同语言开发的程序提供统一定义的图形接口,可 ...
- POJ-1502-MPI Maelstrom-dijkstra+输入处理
BIT has recently taken delivery of their new supercomputer, a 32 processor Apollo Odyssey distribute ...