网站建设设计服务公司,免费建站网站一级大,婚恋网站排名前十名,什么是网站建设规划书Elasticsearch应用#xff08;四#xff09;
1.目标
这一章主要解读以下索引
2.什么是索引
索引是文档的容器#xff0c;是一类文档的结合索引是一个逻辑命名空间#xff0c;它映射到一个或多个主分片#xff0c;并且可以具有零个或多个副本分片索引中数据分散在Shard…Elasticsearch应用四
1.目标
这一章主要解读以下索引
2.什么是索引
索引是文档的容器是一类文档的结合索引是一个逻辑命名空间它映射到一个或多个主分片并且可以具有零个或多个副本分片索引中数据分散在Shard上索引的Mapping定义文档字段的类型索引的Setting定义不同的数据分布
3.索引模板Index Template
介绍
帮助你设定索引的Mappings和Settings按照一定的规则自动匹配到新创建索引上模板仅在一个索引被新创建时才会产生作用修改模板不会影响已经创建的索引你可以设定多个索引模板,这些设置会被“merge”在一起你可以指定“order”的数值控制“merging”的过程
工作方式当索引被创建时
应用ES默认的settings与mappings应用order数值低的index Template中的设定应用高的index Template中的设定之前的设定会被覆盖用户所指定的settings和mappings并覆盖之前模板中的设定
请求路径
# 创建模板template_default 是这个名字的话就是默认的模板
PUT _template/[index-template]
{index_patterns: [test*],order: 1,settings: {number_of_shards: 1,number_of_replicas: 2},mappings: {date_detection: false,numeric_detection: true}
}
# 查看template信息
GET /_template/index-template
GET /_template/tem*4.索引别名aliases
介绍
索引别名是用于引用一个现有索引的辅助名称查询插入修改 文档都可以使用别名
请求格式
POST /_aliases
{actions: [{add: {index: index,alias: 别名名称}}]
}POST /_aliases
{actions: [{add: {index: index,alias: 别名名称,filter: {range: {rating: {gte: 4}}}}}]
}PUT /index
{mappings: {properties: {field1: {type: 字段类型},field2: {type: alias,path: 目标字段的路径(field1) }}}
}注意
path是指目标字段的路径。请注意这必须是完整路径包括任何父对象例如object1.object2.field不支持仅写入字段别名不支持在插入请求或更新请求中使用别名不支持多字段指定查找路径的查询部分不能通过其别名引用字段
5.索引API
获取索引设置
请求路径
GET /[索引名]/_settingsGET /[索引名]/_settings/[设置项setting]请求参数setting
可选字符串逗号分隔列表或通配符表达式
请求示例
GET /twitter,kimchy/_settingsGET /_all/_settingsGET /log_2013_*/_settings关闭索引
请求路径
POST /[索引名]/_close请求参数索引名
可选字符串索引名称的逗号分隔列表或通配符表达式
打开索引
请求路径
POST /[索引名]/_open请求参数索引名
可选字符串索引名称的逗号分隔列表或通配符表达式
6.创建索引的示例
POST /test
{settings:{index:{// 索引默认分词器analysis.analyzer.default.type:ik_max_word}// 自定义分词器analysis:{analyzer:{ik_pinyin:{ // 自定义分词器的名称tokenizer:ik_max_word, // 基本分词器filter:pinyin_filter // 自定义的分词器}},filter:{ // 自定义tokenizer filterpinyin_filter:{ // 过滤器类型type:pinyin, // 这个过滤器的类型keep_separate_first_letter:false, // 是否分词每个字的首字母keep_full_pinyin:true, // 是否分词全拼keep_original:true // 是否保留原始输入remove_duplicated_term:true // 是否删除重复项keep_joined_full_pinyin:true,limit_first_letter_length:16,none_chinese_pinyin_tokenize:false}}} },mappings:{dynamic:strict, // 动态映射严格模式properties:{name:{ // 字段名称type:text, // 字段类型sotre:true, // 是否单独存储index:true, // 是否创建倒排索引analyzer:ik_max_word, // 创建倒排索引时候的分词器search_analyzer:ik_pinyin, // 搜索时候的分词器dynamic:true // 动态映射设置}}}}