elasticsearch parent child 怎么建立索引
答案:1 悬赏:0 手机版
解决时间 2021-02-21 12:04
- 提问者网友:十年饮冰
- 2021-02-20 20:57
elasticsearch parent child 怎么建立索引
最佳答案
- 五星知识达人网友:蓝房子
- 2021-02-20 21:24
创建索引
1.1 简单创建语句
curl -XPUT [address]/blog
1.2 带参数的创建语句
curl -XPUT [address]/blog/ -d '{
"settings":{
"number_of_shards":1, //设置分片数量
"number_of_replicas":2, //设置副本数量
//自定义索引默认分析器
"index":{
"analysis":{
"analyzer":{
"default":{
"tokenizer":"standard", //分词器
"filter":[ //过滤器
"asciifolding",
"lowercase",
"ourEnglishFilter"
]
}
},
"filter":{
"ourEnglishFilter":{
"type":"kstem"
}
}
}
}
}
}'
2 创建映射(扁平结构)
2.1 简单创建语句
curl -XPUT [address]/blog/_mapping/article?pretty -d '{
"properties":{
"id":{"type":"long"},
"name":{"type":"string"},
"published":{"type":"date"}
}
}'
2.2 带参数的创建语句
curl -XPUT [address]/blog/_mapping/article?pretty -d '{
"dynamic":"false", //关闭自动添加字段,关闭后索引数据中如果有多余字段不会修改mapping,默认true
"_id":{"index":"not_analyzed","store":"no"}, //设置文档标识符可以被索引,默认不能被索引。可以设置为"_id":{"path":"book_id"},这样将使用字段book_id作为标识符
"_all":{"enabled":"false"}, //禁用_all字段,_all字段包含了索引中所有其他字段的所有数据,便于搜索。默认启用
"_source":{"enabled":"false"}, //禁用_source字段,_source字段在生成索引过程中存储发送到elasticsearch的原始json文档。elasticsearch部分功能依赖此字段(如局部更新功能),因此建议开启。默认启用
"_index":{"enabled":"true"}, //启用_index字段,index字段返回文档所在的索引名称。默认关闭。
"_timestamp":{"enabled":"true","index":"not_analyzed","store":"true","format":"YYYY-mm-dd"}, //启用时间戳并设置。时间戳记录文档索引时间,使用局部文档更新功能时,时间戳也会被更新。默认未经分析编入索引但不保存。
"_ttl":{"enabled":"true","default":"30d"}, //定义文档的生命周期,周期结束后文档会自动删除。
"_routing":{"required":"true","path":"name"} //指定将name字段作为路由,且每个文档必须指定name字段。
"properties":{
"id":{
"type":"long",
//公共属性
"store":"yes",
//数值特有属性
"precision_step":"0" //指定为该字段生成的词条数,值越低,产生的词条数越多,查询会更快,但索引会更大。默认4
},
"name":{
"type":"string",
//公共属性
"store":"yes",
"index":"not_analyzed", //analyzed:编入索引供搜索、no:不编入索引、not_analyzed(string专有):不经分析编入索引
"boost":"1", //文档中该字段的重要性,值越大表示越重要,默认1
"null_value":"jim", //当索引文档的此字段为空时填充的默认值,默认忽略该字段
"include_in_all":"xxx" //此属性是否包含在_all字段中,默认为包含
//字符串特有属性
"analyzer":"xxx", //定义用于索引和搜索的分析器名称,默认为全局定义的分析器名称。可以开箱即用的分析器:standard,simple,whitespace,stop,keyword,pattern,language,snowball
"index_analyzer":"xxx", //定义用于建立索引的分析器名称
"search_analyzer":"xxx", //定义用于搜索时分析该字段的分析器名称
"ignore_above":"xxx" //定义字段中字符的最大值,字段的长度高于指定值时,分析器会将其忽略
},
"published":{
"type":"date",
//公共属性
"store":"yes",
//日期特有属性
"precision_step":"0", //指定为该字段生成的词条数,值越低,产生的词条数越多,查询会更快,但索引会更大。默认4
"format":"YYYY-mm-dd" //指定日期格式,默认为dateOptionalTime
}
}
}'
3 创建映射(非扁平结构)
在第二章我们讲解了创建映射的语句。所创建的是简单的扁平结构映射。这一章我们看看如何创建非扁平结构映射。
1.1 简单创建语句
curl -XPUT [address]/blog
1.2 带参数的创建语句
curl -XPUT [address]/blog/ -d '{
"settings":{
"number_of_shards":1, //设置分片数量
"number_of_replicas":2, //设置副本数量
//自定义索引默认分析器
"index":{
"analysis":{
"analyzer":{
"default":{
"tokenizer":"standard", //分词器
"filter":[ //过滤器
"asciifolding",
"lowercase",
"ourEnglishFilter"
]
}
},
"filter":{
"ourEnglishFilter":{
"type":"kstem"
}
}
}
}
}
}'
2 创建映射(扁平结构)
2.1 简单创建语句
curl -XPUT [address]/blog/_mapping/article?pretty -d '{
"properties":{
"id":{"type":"long"},
"name":{"type":"string"},
"published":{"type":"date"}
}
}'
2.2 带参数的创建语句
curl -XPUT [address]/blog/_mapping/article?pretty -d '{
"dynamic":"false", //关闭自动添加字段,关闭后索引数据中如果有多余字段不会修改mapping,默认true
"_id":{"index":"not_analyzed","store":"no"}, //设置文档标识符可以被索引,默认不能被索引。可以设置为"_id":{"path":"book_id"},这样将使用字段book_id作为标识符
"_all":{"enabled":"false"}, //禁用_all字段,_all字段包含了索引中所有其他字段的所有数据,便于搜索。默认启用
"_source":{"enabled":"false"}, //禁用_source字段,_source字段在生成索引过程中存储发送到elasticsearch的原始json文档。elasticsearch部分功能依赖此字段(如局部更新功能),因此建议开启。默认启用
"_index":{"enabled":"true"}, //启用_index字段,index字段返回文档所在的索引名称。默认关闭。
"_timestamp":{"enabled":"true","index":"not_analyzed","store":"true","format":"YYYY-mm-dd"}, //启用时间戳并设置。时间戳记录文档索引时间,使用局部文档更新功能时,时间戳也会被更新。默认未经分析编入索引但不保存。
"_ttl":{"enabled":"true","default":"30d"}, //定义文档的生命周期,周期结束后文档会自动删除。
"_routing":{"required":"true","path":"name"} //指定将name字段作为路由,且每个文档必须指定name字段。
"properties":{
"id":{
"type":"long",
//公共属性
"store":"yes",
//数值特有属性
"precision_step":"0" //指定为该字段生成的词条数,值越低,产生的词条数越多,查询会更快,但索引会更大。默认4
},
"name":{
"type":"string",
//公共属性
"store":"yes",
"index":"not_analyzed", //analyzed:编入索引供搜索、no:不编入索引、not_analyzed(string专有):不经分析编入索引
"boost":"1", //文档中该字段的重要性,值越大表示越重要,默认1
"null_value":"jim", //当索引文档的此字段为空时填充的默认值,默认忽略该字段
"include_in_all":"xxx" //此属性是否包含在_all字段中,默认为包含
//字符串特有属性
"analyzer":"xxx", //定义用于索引和搜索的分析器名称,默认为全局定义的分析器名称。可以开箱即用的分析器:standard,simple,whitespace,stop,keyword,pattern,language,snowball
"index_analyzer":"xxx", //定义用于建立索引的分析器名称
"search_analyzer":"xxx", //定义用于搜索时分析该字段的分析器名称
"ignore_above":"xxx" //定义字段中字符的最大值,字段的长度高于指定值时,分析器会将其忽略
},
"published":{
"type":"date",
//公共属性
"store":"yes",
//日期特有属性
"precision_step":"0", //指定为该字段生成的词条数,值越低,产生的词条数越多,查询会更快,但索引会更大。默认4
"format":"YYYY-mm-dd" //指定日期格式,默认为dateOptionalTime
}
}
}'
3 创建映射(非扁平结构)
在第二章我们讲解了创建映射的语句。所创建的是简单的扁平结构映射。这一章我们看看如何创建非扁平结构映射。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯