3

我正在尝试使用 elasticsearch-jdbc-river 配置索引设置。

到目前为止,这就是我所做的:

curl -XPUT localhost:9200/_river/my_river/_meta?pretty=true --data @index.json

这是我的 json 文件:

{
"type":"jdbc",
"jdbc":{
  "strategy":"simple",
  "poll":"5s",
  "scale":0,
  "autocommit":false,
  "fetchsize":10,
  "max_rows":0,
  "max_retries":3,
  "max_retries_wait":"10s",
  "driver":"com.mysql.jdbc.Driver",
  "url":"jdbc:mysql://mysql-server:3306/products_fr",
  "user":"root",
  "password":"root",
  "sql":"* from OFFERS"
},
"index":{
  "index":"dev",
  "type":"offers",
  "bulk_size":30,
  "max_bulk_requests":100,
  "index_settings":{
     "number_of_shards":10,
     "number_of_replicas":1,
     "analysis":{
        "analyzer":{
           "indexAnalyzer":{
              "type":"custom",
              "tokenizer":"standard",
              "filter":[
                 "lowercase",
                 "mySnowball"
              ]
           },
           "searchAnalyzer":{
              "type":"custom",
              "tokenizer":"standard",
              "filter":[
                 "standard",
                 "lowercase",
                 "mySnowball"
              ]
           }
        },
        "filter":{
           "mySnowball":{
              "type":"snowball",
              "language":"French"
           }
        }
     },
     "similarity":{
        "index":{
           "type":"BM25"
        },
        "search":{
           "type":"BM25"
        }
     },
     "type_mapping":null,
     "versioning":false,
     "acknowledge":false
  }
 }
}

该命令有效,但似乎并未构建索引。我之前尝试过在没有 index_settings 的情况下构建它并重新启动 elasticsearch 服务器,它似乎构建得很好。

谁能帮我理解出了什么问题?

4

1 回答 1

3

我通过预先使用设置创建索引然后添加河流来解决我的问题。

此时index_settingsin the river 将被忽略,因为索引已经创建。

然后我重新启动了 Elasticsearch。

PS:未使用 Elasticsearch 2.x 进行测试。+

于 2014-04-28T07:33:47.063 回答