当前位置: 首页 > 知识库问答 >
问题:

无法在Elasticsearch大容量索引上指定“routing”字段(routing_missing_exception)

薛弘厚
2023-03-14

我在Elasticsearch批量更新查询中指定路由时遇到问题。我有一个需要路由的映射:

PUT my-index/_mapping
{
    "_routing": {
      "required": true,
    },
    "properties": {
      "my-property": { "type": "text" }
    }
}

我可以使用查询参数routing fine插入单个文档:

PUT my-index/_doc/my-id?routing=my-routing
{ "id": "my-id", "my-property": "Hi"... }

但是,当我批量更新时,我不确定如何指定路由字段。文件上说

POST my-index/_doc/_bulk
{"index":{"_index": "ch-search-domain", "_type": "_doc", "_id": "my-id" }}
{ "id": "my-id", "routing":"my-routing", "my-property": "Hi" }

另外,虽然显然不受支持(这里的答案是使用“批量时每个单独文档的路由字段”,就像我在上面尝试过的那样,但我在老版本中尝试了其他选项以防万一)

POST my-index/_doc/_bulk
{"index":{"_index": "ch-search-domain", "_type": "_doc", "_id": "my-id", "_routing": "my-routing" }}
{ "id": "my-id", "my-property": "Hi"... }

也会失败:

{“type”:“illegal_argument_exception”,“reason”:“操作/元数据行1包含未知参数[_routing]”}

共有1个答案

奚飞星
2023-03-14
POST my-index/_doc/_bulk
{"index":{"_index": "ch-search-domain", "_type": "_doc", "_id": "my-id", "routing": "my-routing" }}
{ "id": "my-id", "my-property": "Hi"... }
 类似资料:
  • 问题内容: 我有一个文档,其中包含许多我从未查询过的字段,因此我想关闭这些字段的索引以节省资源。我相信我需要禁用该字段,但是如何指定要对哪些字段建立索引呢? 问题答案: 默认情况下,所有字段也都在_all特殊字段内建立索引,该字段开箱即用地提供了所谓的catchall功能。但是,可以通过以下选项为映射中的每个字段指定是否要将其添加到_all字段: 上面的示例禁用了name字段的默认行为,该行为不会

  • 由于最近没有使用,我在Heroku上重新安装了我的盆景Elasticsearch插件。以前它工作得很好,但现在我在rails控制台中键入以下内容时: 我收到以下错误: Elasticsearch::Transport::Transport::Errors::BadRequest([400]{“error”:{“root\u cause”:[{“type”:“非法的\u参数\u异常”,“原因”:“除

  • 假设我们有一个ElasticSearch实例和一个索引。我现在要在整个索引中搜索包含特定值的文档。它与在多个字段上搜索该查询相关,因此我不想指定要在其中搜索的每个字段。 到目前为止我的尝试(使用NEST)如下: 在ConnectionString上应用以下调试后,我将获得以下输出: 我该怎么做?为什么我的查询是错误的?

  • [2016-01-08 15:06:49,354][WARN][http.netty][Marvel Man]在处理客户端http tra ffic时捕获异常,关闭连接[ID:0x2D26BAEC,/0:0:0:0:0:0:0:0:0:1:58923=>/0:0:0:0:1:9200]org.jboss.netty.handler.codec.frame.ToolongFrameException

  • 问题内容: 我正在运行Nutch 2.3.1,Mongodb 3.2.9和Elasticsearch 2.4.1。我遵循了本教程的内容: https://qbox.io/blog/scraping-the-web-with-nutch-for- elasticsearch 和本教程: http://www.aossama.com/search-engine-with-apache-nutch-mo

  • 如果Elasticsearch索引中的多个类型具有相同名称的字段,则这些字段必须具有相同的映射,该映射将尝试创建“foobar”属性作为字符串和长“。。。 例如,如果您尝试放置以下索引映射: ...将返回以下错误 以下内容来自elasticsearch网站: 不同类型字段之间的冲突 在两种不同类型中具有相同名称的同一索引中的字段必须具有相同的映射,因为它们在内部由相同的字段支持。尝试更新存在于多个