_tier 字段

编辑

当跨多个索引执行查询时,有时需要定位到给定数据层(data_hotdata_warmdata_colddata_frozen)节点上保存的索引。 _tier 字段允许匹配文档被索引到的索引的 tier_preference 设置。 首选值可在某些查询中访问。

resp = client.index(
    index="index_1",
    id="1",
    document={
        "text": "Document in index 1"
    },
)
print(resp)

resp1 = client.index(
    index="index_2",
    id="2",
    refresh=True,
    document={
        "text": "Document in index 2"
    },
)
print(resp1)

resp2 = client.search(
    index="index_1,index_2",
    query={
        "terms": {
            "_tier": [
                "data_hot",
                "data_warm"
            ]
        }
    },
)
print(resp2)
response = client.index(
  index: 'index_1',
  id: 1,
  body: {
    text: 'Document in index 1'
  }
)
puts response

response = client.index(
  index: 'index_2',
  id: 2,
  refresh: true,
  body: {
    text: 'Document in index 2'
  }
)
puts response

response = client.search(
  index: 'index_1,index_2',
  body: {
    query: {
      terms: {
        _tier: [
          'data_hot',
          'data_warm'
        ]
      }
    }
  }
)
puts response
const response = await client.index({
  index: "index_1",
  id: 1,
  document: {
    text: "Document in index 1",
  },
});
console.log(response);

const response1 = await client.index({
  index: "index_2",
  id: 2,
  refresh: "true",
  document: {
    text: "Document in index 2",
  },
});
console.log(response1);

const response2 = await client.search({
  index: "index_1,index_2",
  query: {
    terms: {
      _tier: ["data_hot", "data_warm"],
    },
  },
});
console.log(response2);
PUT index_1/_doc/1
{
  "text": "Document in index 1"
}

PUT index_2/_doc/2?refresh=true
{
  "text": "Document in index 2"
}

GET index_1,index_2/_search
{
  "query": {
    "terms": {
      "_tier": ["data_hot", "data_warm"] 
    }
  }
}

查询 _tier 字段

通常,查询会使用 terms 查询来列出感兴趣的层,但您可以在任何被重写为 term 查询的查询中使用 _tier 字段,例如 matchquery_stringtermtermssimple_query_string 查询,以及 prefixwildcard 查询。但是,它不支持 regexpfuzzy 查询。

索引的 tier_preference 设置是以逗号分隔的层名称列表,按偏好顺序排列。 即,索引的首选托管层排在第一位,后跟可能存在的多个回退选项。 查询匹配仅考虑第一个偏好(列表的第一个值)。