一种软件架构风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁更有层次更易于实现缓存等机制。

基本Rest命令说明:

method url地址 描述
PUT(创建,修改) localhost:9200/索引名称/类型名称/文档id 创建文档(指定文档id)
POST(创建) localhost:9200/索引名称/类型名称 创建文档(随机文档id)
POST(修改) localhost:9200/索引名称/类型名称/文档id/_update 修改文档
DELETE(删除) localhost:9200/索引名称/类型名称/文档id 删除文档
GET(查询) localhost:9200/索引名称/类型名称/文档id 查询文档通过文档ID
POST(查询) localhost:9200/索引名称/类型名称/文档id/_search 查询所有数据

基础测试

创建一个索引

image.png
image.png

字段数据类型

  • 字符串类型
    • text、keyword
      • text:支持分词,全文检索,支持模糊、精确查询,不支持聚合,排序操作;text类型的最大支持的字符长度无限制,适合大字段存储;
      • keyword:不进行分词,直接索引、支持模糊、支持精确匹配,支持聚合、排序操作。keyword类型的最大支持的长度为——32766个UTF-8类型的字符,可以通过设置ignore_above指定自持字符长度,超过给定长度后的数据将不被索引,无法通过term精确匹配检索返回结果。
  • 数值型
    • long、Integer、short、byte、double、float、half floatscaled float
  • 日期类型
    • date
  • te布尔类型
    • boolean
  • 二进制类型
    • binary
  • 等等…

    指定字段的类型(使用PUT)

    类似于建库(建立索引和字段对应类型),也可看做规则的建立
    image.png
    image.png

    获取建立的规则

    GET test2
    image.png

    获取默认信息

    _doc 默认类型(default type),type 在未来的版本中会逐渐弃用,因此产生一个默认类型进行代替
    image.png
    image.png
    image.png
    如果自己的文档字段没有被指定,那么ElasticSearch就会给我们默认配置字段类型
    扩展:通过get _cat/ 可以获取ElasticSearch的当前的很多信息!

    1. GET _cat/indices
    2. GET _cat/aliases
    3. GET _cat/allocation
    4. GET _cat/count
    5. GET _cat/fielddata
    6. GET _cat/health
    7. GET _cat/indices
    8. GET _cat/master
    9. GET _cat/nodeattrs
    10. GET _cat/nodes
    11. GET _cat/pending_tasks
    12. GET _cat/plugins
    13. GET _cat/recovery
    14. GET _cat/repositories
    15. GET _cat/segments
    16. GET _cat/shards
    17. GET _cat/snapshots
    18. GET _cat/tasks
    19. GET _cat/templates
    20. GET _cat/thread_pool

    修改

    两种方案

    旧的(使用put覆盖原来的值)

  • 版本+1(_version)

  • 但是如果漏掉某个字段没有写,那么更新是没有写的字段 ,会消失

image.png
漏掉字段不写
image.png
image.png

新的(使用post的update)

  • version不会改变
  • 需要注意doc
  • 不会丢失字段

image.png
image.png

删除

DELETE /test1
Rest风格说明 - 图14
image.png

查询(简单条件)

GET /baobao/_search?q=name:小
image.png