弹性搜索索引RDBMS数据 [英] Elasticsearch to index RDBMS data
问题描述
- ElasticSearch是否支持RDBMS表(Oracle / SQLServer / Informix)中的索引数据开箱即用?
- 如果是的话,请指点我有关如何做的文件
- 如果没有,什么是替代方式(像Rivers这样的插件已被弃用),良好的信誉
我很惊讶,还没有任何坚实的答案。所以这里是解决方案。 Logstash 直接使我们能够将数据从RDBMS推送到Elasticsearch。
这是一个教程的链接,告诉你如何去做。简要地(链接1中的所有细节),您只需要一个用于您将要使用的关系数据库(Postgres,MySQL等)的JDBC驱动程序,并将配置文件指定为关系数据库,输出为弹性搜索。您还可以指定一个cron,让您可以定期更新一次。
-
以下是提及配置和让您开始(请参阅示例2): https://www.elastic.co / blog / logstash-jdbc-input-plugin
-
以下是介绍如何配置Cronjob的文章: https://www.elastic.co/guide/en/ logstash / current / plugins-inputs-jdbc.html#_scheduling
These are three simple questions which was surprisingly hard to find definite answers.
- Does ElasticSearch support indexing data in RDBMS tables ( Oracle/SQLServer/Informix) out of the box?
- If yes, can you please point me to documentation on how to do it
- If not, what are alternate ways (plugins like Rivers - deprecated) with good reputation
I'm surprised there isn't any solid answer as yet for this. So here's the solution. Logstash directly gives us the ability to push data from a RDBMS into Elasticsearch.
Here's a link to a tutorial which tell you how to go about it. Briefly(all details in link 1), you simply need a JDBC driver for the relational database you'll be using (Postgres, MySQL etc) and make a config file specifying your input as the Relational Database and your output as Elasticsearch. You can also specify a cron which would allow you to keep updating one regular intervals.
Here's the article which mentions the configuration and gets you started (See Example 2): https://www.elastic.co/blog/logstash-jdbc-input-plugin
Here's the article which tells you how to configure the Cronjob as such: https://www.elastic.co/guide/en/logstash/current/plugins-inputs-jdbc.html#_scheduling
这篇关于弹性搜索索引RDBMS数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!