想通过例子学习一下,如何把数据导入到 elasticsearch。 需要看那部分文档呢?
1
kslr 2018-02-09 16:37:41 +08:00
比如 mysql 就可以把 binlog 同步进去
|
2
jahan OP |
3
jahan OP @kslr 我现在的情况是文件是从数据库导出的 del 备份,有建表语句,但是数据库损坏了。所以可能不能直接从数据库导出了。
|
4
tomczhen 2018-02-09 16:54:58 +08:00
需要看 logstash 的 input plugins 和 filter plugins 部分,也可以查一下有没有第三方 input plugin 可以直接满足要求,没有话大概就是用 Grok filter plugin 了。
|
5
lfzyx 2018-02-09 17:12:41 +08:00
你要做的就是把 elasticsearch 当作一个键值数据库
1.建立一个索引 2.把数据库文本中的每个条目转换成一个 json 串 3.把转换后的数据插入索引 |
6
SakuraKuma 2018-02-09 17:29:07 +08:00
1. 建索引,mapping
2. 会写代码? 转文本到 json,api 插入 es : logstash #4 |
7
jahan OP @SakuraKuma python 可以写。有现成的可以参考吗?
@lfzyx 谢谢。 @tomczhen 我来试试。就是这几个工具都有点摸不着头,说命令行吧,貌似也不是,说网页吧,貌似很少键可以点击。 刚刚学习。 话说一次能读多大的文本块? |
8
jahan OP 如果有比较精简、完整的文档推荐,那就太感谢了
|
9
jahan OP @SakuraKuma 建立索引这块,有没有工具可以直接把 sql 建表语句变成索引?
|
10
owenliang 2018-02-09 18:33:59 +08:00
可以自己编程。
|
11
defunct9 2018-02-09 20:35:20 +08:00 via iPhone
链接里有,把 sql 结果整理成 json,导入即可
|
12
mooncakejs 2018-02-09 20:46:34 +08:00
awk + curl
|
13
jalja27 2018-02-09 20:56:58 +08:00 via Android
es 2 版本可以用 jdbc 的工具。分隔符可以 logstash grok
|
14
jerome918 2018-02-10 10:34:28 +08:00
可以用 spark 跑吧,读文件生成 rdd 然后用 es-spark 的 api 写入到 es 中,当然 es 中要首先建好 mapping.
|
15
jahan OP @jerome918 现在就是想通过 sql 建表语句直接转换成索引,初学没找到特别踏实( step by step,表和索引怎么对应)的例子。
|
16
SakuraKuma 2018-02-11 09:01:45 +08:00
@jahan #7 elasticsearch-sql
|