gpt4 book ai didi

mysql - 如何将 ElasticSearch 与 MySQL 集成?

转载 作者:IT老高 更新时间:2023-10-28 12:55:54 24 4
gpt4 key购买 nike

在我的一个项目中,我计划将 ElasticSearch 与 MySQL 一起使用。我已经成功安装了 ElasticSearch。我可以单独管理 ES 中的索引。但我不知道如何用 MySQL 来实现。

我已经阅读了一些文件,但我有点困惑,没有一个清晰的想法。

最佳答案

从 ES 5.x 开始,他们通过 logstash 提供了开箱即用的功能。插入。

这将定期从数据库中导入数据并推送到 ES 服务器。

必须创建一个下面给出的简单导入文件(也描述为 here)并使用 logstash 运行脚本。 Logstash 支持按计划运行此脚本。

# file: contacts-index-logstash.conf
input {
jdbc {
jdbc_connection_string => "jdbc:mysql://localhost:3306/mydb"
jdbc_user => "user"
jdbc_password => "pswd"
schedule => "* * * * *"
jdbc_validate_connection => true
jdbc_driver_library => "/path/to/latest/mysql-connector-java-jar"
jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
statement => "SELECT * from contacts where updatedAt > :sql_last_value"
}
}
output {
elasticsearch {
protocol => http
index => "contacts"
document_type => "contact"
document_id => "%{id}"
host => "ES_NODE_HOST"
}
}
# "* * * * *" -> run every minute
# sql_last_value is a built in parameter whose value is set to Thursday, 1 January 1970,
# or 0 if use_column_value is true and tracking_column is set

您可以从 maven here 下载 mysql jar .

如果执行此脚本时 ES 中不存在索引,则会自动创建索引。就像对 elasticsearch 的普通 post 调用一样

关于mysql - 如何将 ElasticSearch 与 MySQL 集成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36152152/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com