3.15-第一部分总结

2020-03-23  本文已影响0人  落日彼岸

第一部分总结与回顾:基本概念

第一部分总结与回顾:搜索和Aggregation

第一部分总结与回顾:文档CRUD与Index Mapping

第一部分自我测试(一)

  1. 判断题: ES支持使用HTTP PUT写入新文档,并通过ElasticSearch生成文档id

  2. 判断题: Update一个文档,需要使用HTTP PUT

  3. 判断题: Index一个已存在的文档,旧的文档会先删除,新的文档再被写入,同时版本号+1

  4. 尝试描述创建一个新的文档到一个不存在的索引中,背后会发生一些什么?

  5. ES 7中的合法的type是什么?

  6. 精确值和全文本的本质区别是什么?

  7. Analyzer由哪几个部分组成?

答:

  1. 错, 需要用POST命令创建

  2. 错, Update文档使用POST, PUT只能用来做Index或Create

  3. 默认情况下, 会创建相应的索引, 并且自己设置Mapping,当然,实际情况还是要看是否有合适的Index Template

  4. _doc

  5. 精确值不会被Analyzer分词,全文本会

  6. 三部分, Character Filter + Tokenizer + Token Filter

第一部分自我测试(二)

  1. 尝试描述match和match_phrase的区别

  2. 如果你希望match_phrase匹配到更多结果,你应该配置查询的中什么参数

  3. 如果Mapping的dynamic设置成"strict",索引一个包含新增字段的文档时会发生什么?

  4. 如果Mapping的dynamic设置成"false",索引一个包含新增字段的文档时会发生什么?

  5. 判断: 可以把一个字段的类型从"integer"改成"long",因为这两个类型是兼容的

  6. 判断: 你可以在Mapping文件中为indexing和searching指定不同的analyzer

  7. 判断: 字段类型为Text的字段,一定可以被全文搜索

答:

  1. Match中的terms之间是or关系,Match Phrase的terms之间是and的关系,并且term之间位置关系也影响搜索结果

  2. slop

  3. 直接报错

  4. 文档被索引,新的字段在_source中可见.但是该字段无法被搜索

  5. 错, 字段类型修改,需要重新reindex

  6. 对, 可以在Mapping中为index和search指定不同的analyzer

  7. 错, 可以通过为text类型的字段指定Not Indexed, 使其无法被搜索

上一篇下一篇

猜你喜欢

热点阅读