我正在尝试从数据库表 - User 中轮询数据并填充到elasticsearch中,我在“index”部分中指定索引名称并给出名称,索引被创建为“jdbc”。因此我只能将其查询为“host/jdbc/_search 这是关于什么的?
这是创建用户索引的POST请求
http://localhost:9200/_river/users/_meta
{
"type" :
"jdbc",
"schedule" : "0 0-59 0-23 ? * *",
"jdbc" :
{
"driver":"com.mysql.jdbc.Driver",
"url" : "jdbc:mysql://192.168.52.202/test_dev",
"user" : "test_user",
"password" : "test_pass",
"sql" : "select id as _id,first_name,city,email from USERS",
"index":"users",
"type":"user"
}
}
最佳答案
问题是因为我在 jdbc block 中添加了索引和类型。我在几个例子中看到了这一点。在更改了 json 结构后,我在索引 block 中移动了索引和类型,我得到了河流和用户索引
localhost:9200/_river/my_jdbc_river/_meta - 帖子
{ “类型” : “jdbc”,
“时间表”:“0 0-59 0-23?* *”,
“jdbc”: { "策略":"简单",
"driver":"com.mysql.jdbc.Driver",
"url" : "jdbc:mysql://192.168.52.202/test_dev",
"user" : "test",
"password" : "test_pass",
"sql" : "select id as _id,first_name,city,email from USERS",
"poll":"2s"
}, “指数”: { "索引":"用户", “类型”:“用户”, “批量大小”:500 } }
关于mysql - 使用elasticsearch River创建索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32093923/