【发布时间】:2015-03-17 07:43:09
【问题描述】:
我正在使用 RabbitMQ River Plugin for Elasticsearch 向我们的 ElasticSearch 索引插入/删除数据。 River 插件仅支持 Bulk API。 我们当前的数据使用多个索引,按日期索引,例如“indexName_yyyymmdd”
删除给定 ID 时,我们不知道该 ID 可以定位到哪个索引。我们认为我们将能够使用通配符格式,例如“indexName*”,就像在搜索中一样。
我们尝试了不同的组合,但看起来要么我们没有使用正确的语法,要么通配符绝对不受支持???
Examples we have tried:
// using default index in the url …
POST /mybestfares_gb*/bestfares_data/_bulk
{ "delete": {"_id": " AUry2F0Mu2oVvm5kYHaK " }}
// index in the meta section …
POST /_bulk
{ "delete": {"_index":"mybestfares_gb*", "_type":"bestfares_data","_id": "AUry2F0Mu2oVvm5kYHaP" }}
在这两种情况下,我们都会收到以下错误:
"error": "InvalidIndexNameException[[mybestfares_gb*] Invalid index name [mybestfares_gb*], must not contain the following characters [\\, /, *, ?, \", <, >, |, , ,]]"
在 ElasticSeach 文档中提到了这一点: “文档 API 和单索引别名 API 等单索引 API 不支持多索引。”
并且 Bulk API 被归类为多文档 API,所以我跳跃只是我没有使用正确语法的问题吗?
【问题讨论】:
标签: elasticsearch elasticsearch-bulk-api