我目前正在尝试了解字段(https://www.elastic.co/guide/zh/elasticsearch/reference/current/multi-fields.html)和属性(https://www.elastic.co /guide/zh-CN/elasticsearch/reference/current/properties.html)。
它们都以某种方式定义为类型/映射属性的“子字段/子属性”,都可以具有单独的类型和分析器(据我所知),都可以通过点符号(mappingProperty.subField或mappingProperty.property)访问。
这些文档随机使用术语“字段”和“属性”,我有这样的感觉,例如:
类型映射,对象字段和嵌套字段包含称为属性的子字段。
属性和(子)字段之间有什么区别?如何确定我是否有财产或田地?
换句话说,如何决定我是否使用
{
"mappings": {
"_doc": {
"properties": {
"myProperty": {
"properties": {
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
要么
{
"mappings": {
"_doc": {
"properties": {
"myProperty": {
"fields": {
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
子字段是从父属性源中索引的。而子属性需要在文档源中具有“真实”值。
如果源中包含真实对象,则需要创建属性。每个属性将对应一个与您的来源不同的值。
如果只想索引相同的值但使用不同的分析器,则使用子字段。
为不同的目的以不同的方式对同一字段建立索引通常很有用。这是多字段的目的。例如,可以将字符串字段映射为用于全文搜索的文本字段,并映射为用于排序或聚合的关键字字段:
(对不起,我很难解释= |)
| 归档时间: |
|
| 查看次数: |
976 次 |
| 最近记录: |