网站统计数据怎么做c成apa格式,软件工程师考试,甘肃省临夏州建设局网站,成全视频在线观看大全腾讯地图历史文章#xff08;文章累计500#xff09;
《国内最全的Spring Boot系列之一》
《国内最全的Spring Boot系列之二》
《国内最全的Spring Boot系列之三》
《国内最全的Spring Boot系列之四》
《国内最全的Spring Boot系列之五》
《国内最全的Spring Boot系列之六》
E… 历史文章文章累计500
《国内最全的Spring Boot系列之一》
《国内最全的Spring Boot系列之二》
《国内最全的Spring Boot系列之三》
《国内最全的Spring Boot系列之四》
《国内最全的Spring Boot系列之五》
《国内最全的Spring Boot系列之六》
Elasticsearch可视化平台Kibana [ES系列] - 第498篇
Elasticsearch安装分词插件[ES系列] - 第499篇
ElasticSearch扫盲概念篇[ES系列] - 第500篇 导读
Hi大家好我是悟纤。我就是我不一样的烟火。我就是我与众不同的小苹果。
这一节来看看ES的索引的基本操作 – 增删改查。
一、索引操作
1.1 创建索引
格式: PUT /索引名称
索引命名规范
·以小写英文字母命名索引
·不要使用驼峰命名法则
·如过出现多个单词的索引名称以全小写 下划线分隔的方式如test_index。
ES 索引创建成功之后以下属性将不可修改
·索引名称
·主分片数量
·字段类型
举例说明
#创建索引PUT /es_db 1.2查询索引
格式: GET /索引名称
#查询索引GET /es_db 1.3删除索引
格式: DELETE /索引名称
DELETE /es_db 二、设置 Settings
创建索引的时候指定 settings
span stylecolor:#333333span stylebackground-color:#fafafacodePUT index_name/codecode{/codecode span stylecolor:#dd1144settings/span: {}/codecode}/codecode/code/span/span
创建索引时可以设置分片数和副本数
span stylecolor:#333333span stylebackground-color:#fafafacodespan stylecolor:#afafafem#创建索引es_db指定其主分片数量为 3每个主分片的副本数量为 2/em/span/codecodePUT /es_db/codecode{/codecode span stylecolor:#dd1144settings/span: {/codecode span stylecolor:#dd1144number_of_shards/span: 3,/codecode span stylecolor:#dd1144number_of_replicas/span: 2/codecode }/codecode}/codecode/code/span/span 说明
1静态索引设置只能在创建索引时或在关闭状态的索引上设置。
- index.number_of_shards索引的主分片的个数默认为 1此设置只能在创建索引时设置。
2动态索引设置即可以使用 _setting API 在实时修改的配置项。
- index.number_of_replicas每个主分片的副本数。默认为 1允许配置为 0。
- index.refresh_interval执行刷新操作的频率默认为1s. 可以设置 -1 为禁用刷新。
- index.max_result_windowfrom size 搜索此索引 的最大值默认为 10000。
使用 _setting 只能修改允许动态修改的配置项
span stylecolor:#333333span stylebackground-color:#fafafacodespan stylecolor:#afafafem#修改索引配置把每个主分片的副本数量修改为 1/em/span/codecodePUT /es_db/_settings/codecode{/codecodespan stylecolor:#dd1144index/span : {/codecodespan stylecolor:#dd1144number_of_replicas/span : 1/codecode}/codecode}/codecode/code/span/span 创建索引时可以指定IK分词器作为默认分词器
span stylecolor:#333333span stylebackground-color:#fafafacodePUT /es_db/codecode{/codecode span stylecolor:#dd1144settings/span : {/codecode span stylecolor:#dd1144index/span : {/codecode span stylecolor:#dd1144analysis.analyzer.default.type/span: span stylecolor:#dd1144ik_max_word/span/codecode }/codecode }/codecode}/codecode/code/span/span 三、设置文档映射Mapping
ES 中的 mapping 有点类似与关系数据库中表结构的概念在 MySQL 中表结构里包含了字段名称字段的类型还有索引信息等。在 Mapping 里也包含了一些属性比如字段名称、类型、字段使用的分词器、是否评分、是否创建索引等属性并且在 ES 中一个字段可以有多个类型。ES中Mapping可以分为动态映射和静态映射。
span stylecolor:#333333span stylebackground-color:#fafafacodespan stylecolor:#afafafem#查看完整的索引 mapping/em/span/codecodeGET span stylecolor:#dd1144/index_name/_mappings/span/codecode/codecodespan stylecolor:#afafafem#查看索引中指定字段的 mapping/em/span/codecodeGET span stylecolor:#dd1144/index_name/_mappings/field/field_name/span/codecode/code/span/span
mapping 的使用禁忌
·ES 没有隐式类型转换
·ES 不支持类型修改
·生产环境尽可能的避免使用 动态映射dynamic mapping
3.1动态映射
在关系数据库中需要事先创建数据库然后在该数据库下创建数据表并创建表字段、类型、长度、主键等最后才能基于表插入数据。而Elasticsearch中不需要定义Mapping映射在文档写入Elasticsearch时会根据文档字段自动识别类型这种机制称之为动态映射。 示例
span stylecolor:#333333span stylebackground-color:#fafafacodespan stylecolor:#afafafem#删除原索引/em/span/codecodespan stylecolor:#ca7d37DELETE/span /span stylecolor:#ca7d37user/span/codecode/codecodespan stylecolor:#afafafem#创建文档(ES根据数据类型, 会自动创建映射)/em/span/codecodePUT /span stylecolor:#ca7d37user/span/_doc/span stylecolor:#0e9ce51/span/codecode{/codecode span stylecolor:#dd1144name/span: span stylecolor:#dd1144fox/span,/codecode span stylecolor:#dd1144age/span: span stylecolor:#0e9ce532/span,/codecode span stylecolor:#dd1144address/span:span stylecolor:#dd1144长沙麓谷/span/codecode}/codecode/codecodespan stylecolor:#afafafem#获取文档映射/em/span/codecodespan stylecolor:#ca7d37GET/span /span stylecolor:#ca7d37user/span/_mapping/codecode/code/span/span 3.2静态映射
静态映射也叫做显式映射即在索引文档写入之前人为创建索引并且指定索引中每个字段类型、分词器等参数。
span stylecolor:#333333span stylebackground-color:#fafafacodePUT /user/codecode{/codecode span stylecolor:#dd1144settings/span: {/codecode span stylecolor:#dd1144number_of_shards/span: span stylecolor:#dd11441/span,/codecode span stylecolor:#dd1144number_of_replicas/span: span stylecolor:#dd11441/span/codecode },/codecode span stylecolor:#dd1144mappings/span: {/codecode span stylecolor:#dd1144properties/span: {/codecode span stylecolor:#dd1144name/span: {/codecode span stylecolor:#dd1144type/span: span stylecolor:#dd1144keyword/span/codecode },/codecode span stylecolor:#dd1144age/span : {/codecode span stylecolor:#dd1144type/span : span stylecolor:#dd1144long/span/codecode },/codecode span stylecolor:#dd1144address/span : {/codecode span stylecolor:#dd1144type/span : span stylecolor:#dd1144text/span/codecode }/codecode }/codecode }/codecode}/codecode/code/span/span 3.3常用Mapping参数配置 参数名称 释义 analyzer 指定分析器只有 text 类型字段支持。 copy_to 该参数允许将多个字段的值复制到组字段中然后可以将其作为单个字段进行查询 dynamic 控制是否可以动态添加新字段支持以下四个选项 true默认允许动态映射 false忽略新字段。这些字段不会被索引或搜索但仍会出现在_source返回的命中字段中。这些字段不会添加到映射中必须显式添加新字段。 runtime新字段作为运行时字段添加到索引中这些字段没有索引是_source在查询时加载的。 strict如果检测到新字段则会抛出异常并拒绝文档。必须将新字段显式添加到映射中。 doc_values 为了提升排序和聚合效率默认true如果确定不需要对字段进行排序或聚合也不需要通过脚本访问字段值则可以禁用doc值以节省磁盘空间不支持 text 和 annotated_text eager_global_ordinals 用于聚合的字段上优化聚合性能。 enabled 是否创建倒排索引可以对字段操作也可以对索引操作如果不创建索引任然可以检索并在_source元数据中展示谨慎使用该状态无法修改。 fielddata 查询时内存数据结构在首次用当前字段聚合、排序或者在脚本中使用时需要字段为fielddata数据结构并且创建倒排索引保存到堆中 fields 给 field 创建多字段用于不同目的全文检索或者聚合分析排序 format 用于格式化代码如 data:{ type: data, format: yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis } index 是否对创建对当前字段创建倒排索引默认 true如果不创建索引该字段不会通过索引被搜索到,但是仍然会在 source 元数据中展示。 norms 是否禁用评分在filter和聚合字段上应该禁用 null_value 为 null 值设置默认值 search_analyzer 设置单独的查询时分析器 示例
- index: 控制当前字段是否被索引默认为true。如果设置为false该字段不可被搜索
span stylecolor:#333333span stylebackground-color:#fafafacodespan stylecolor:#ca7d37DELETE/span /span stylecolor:#ca7d37user/span/codecodePUT /span stylecolor:#ca7d37user/span/codecode{/codecode span stylecolor:#dd1144mappings/span : {/codecode span stylecolor:#dd1144properties/span : {/codecode span stylecolor:#dd1144address/span : {/codecode span stylecolor:#dd1144type/span : span stylecolor:#dd1144text/span,/codecode span stylecolor:#dd1144index/span: span stylecolor:#0e9ce5false/span/codecode },/codecode span stylecolor:#dd1144age/span : {/codecode span stylecolor:#dd1144type/span : span stylecolor:#dd1144long/span/codecode },/codecode span stylecolor:#dd1144name/span : {/codecode span stylecolor:#dd1144type/span : span stylecolor:#dd1144text/span/codecode }/codecode }/codecode }/codecode}/codecode/codecodePUT /span stylecolor:#ca7d37user/span/_doc/span stylecolor:#0e9ce51/span/codecode{/codecode span stylecolor:#dd1144name/span:span stylecolor:#dd1144fox/span,/codecode span stylecolor:#dd1144address/span:span stylecolor:#dd1144广州白云山公园/span,/codecode span stylecolor:#dd1144age/span:span stylecolor:#0e9ce530/span/codecode}/codecode/codecodespan stylecolor:#ca7d37GET/span /span stylecolor:#ca7d37user/span/codecode/codecodespan stylecolor:#ca7d37GET/span /span stylecolor:#ca7d37user/span/_search/codecode{/codecode span stylecolor:#dd1144query/span: {/codecode span stylecolor:#dd1144match/span: {/codecode span stylecolor:#dd1144address/span: span stylecolor:#dd1144广州/span/codecode }/codecode }/codecode}/codecode/code/span/span 四、使用ReIndex重建索引
具体方法
具体方法
1如果要推倒现有的映射, 你得重新建立一个静态索引
2然后把之前索引里的数据导入到新的索引里
3删除原创建的索引
4为新索引起个别名, 为原索引名
通过这几个步骤可以实现了索引的平滑过渡,并且是零停机
span stylecolor:#333333span stylebackground-color:#fafafacodespan stylecolor:#afafafem# 1. 重新建立一个静态索引/em/span/codecodePUT /user2/codecode{/codecode span stylecolor:#dd1144mappings/span: {/codecode span stylecolor:#dd1144properties/span: {/codecode span stylecolor:#dd1144name/span: {/codecode span stylecolor:#dd1144type/span: span stylecolor:#dd1144text/span/codecode },/codecode span stylecolor:#dd1144address/span: {/codecode span stylecolor:#dd1144type/span: span stylecolor:#dd1144text/span,/codecode span stylecolor:#dd1144analyzer/span: span stylecolor:#dd1144ik_max_word/span/codecode }/codecode }/codecode }/codecode}/codecode/codecodespan stylecolor:#afafafem# 2. 把之前索引里的数据导入到新的索引里/em/span/codecodePOST _reindex/codecode{/codecode span stylecolor:#dd1144source/span: {/codecode span stylecolor:#dd1144index/span: span stylecolor:#dd1144user/span/codecode },/codecode span stylecolor:#dd1144dest/span: {/codecode span stylecolor:#dd1144index/span: span stylecolor:#dd1144user2/span/codecode }/codecode}/codecodespan stylecolor:#afafafem# 3. 删除原创建的索引/em/span/codecodeDELETE /user/codecodespan stylecolor:#afafafem# 4. 为新索引起个别名, 为原索引名/em/span/codecodePUT /user2/_alias/user/codecode/codecodeGET /user/codecode/code/span/span
我就是我是颜色不一样的烟火。
我就是我是与众不同的小苹果。 à悟纤学院https://t.cn/Rg3fKJD
学院中有Spring Boot相关的课程点击「阅读原文」进行查看
SpringBoot视频http://t.cn/A6ZagYTi
SpringBoot交流平台https://t.cn/R3QDhU0
SpringSecurity5.0视频http://t.cn/A6ZadMBe
ShardingJDBC分库分表http://t.cn/A6ZarrqS
分布式事务解决方案http://t.cn/A6ZaBnIr
JVM内存模型调优实战http://t.cn/A6wWMVqG
Spring入门到精通https://t.cn/A6bFcDh4
大话设计模式之爱你https://dwz.cn/wqO0MAy7