为了账号安全,请及时绑定邮箱和手机立即绑定

ElasticSearch入门

瓦力老师 JAVA开发工程师
难度中级
时长 1小时45分
学习人数
综合评分9.50
102人评价 查看评价
9.7 内容实用
9.4 简洁易懂
9.4 逻辑清晰
  • 语法查询。。。。

    查看全部
    0 采集 收起 来源:query

    2019-09-04

  • 多字段匹配查询

    查看全部
    0 采集 收起 来源:query

    2019-09-04

  • 习语匹配查询

    查看全部
    0 采集 收起 来源:query

    2019-09-04

  • 模糊匹配查询语法

    查看全部
    0 采集 收起 来源:query

    2019-09-04

  • 查询 match matchall
    查看全部
    0 采集 收起 来源:查询

    2019-08-26

  • ES非常强大,在使用他们的大厂很多

    查看全部
    0 采集 收起 来源:课程介绍

    2019-08-25

  • 插入:分为

    1. 指定文档id插入

    2. 自动产生文档id插入

    查看全部
    0 采集 收起 来源:插入

    2019-08-25

  • 支持restful

    http://ip:port/<索引>/<类型>/<文档id>

    http动词: GET/PUT/POST/DELETE


    创建索引方式:

    索引的属性:粗框框就是分片,细框框是分片的备份

    非结构化:


    结构化:

    https://img1.sycdn.imooc.com//5d621adf0001810910330604.jpghttps://img1.sycdn.imooc.com//5d621b0e0001689e07050327.jpg

    查看全部
    0 采集 收起 来源:索引创建

    2019-08-25

  • 应用场景=

    查看全部
    0 采集 收起 来源:课程介绍

    2019-08-21

  • 应用场景-

    查看全部
    0 采集 收起 来源:课程介绍

    2019-08-21

  • ElasticSearch简介

    查看全部
    0 采集 收起 来源:课程介绍

    2019-08-21

  • 高级查询


    子条件查询:特定字段查询所指特定值

    Query context:

    Filter context:在查询过程中,只判断该文档是否满足条件,只有yes或者no


    复合条件查询:以一定的逻辑组合子条件查询

    • 固定分数查询,不支持match,只支持filter

    post 127.0.0.1:9200/_search

    固定分数为2

    {

    "query":{

    "constant_score":{

    "filter":{

    "match":{

    "title":"ElasticSearch"

    }

    },

    "boost":2

    }

    }

    }


    • 布尔查询

    1. should: 两个条件是或的关系

    {

    "query":{

    "bool":{

    "should":[

    {

    "match":{

    "author":"loistein"

    }

    },

    {

    "match":{

    "title":"ElasticSearch"

    }

    }

    ]

    }

    }

    }


        2. must:两个条件是与的逻辑

    {

    "query":{

    "bool":{

    "must":[

    {

    "match":{

    "author":"loistein"

    }

    },

    {

    "match":{

    "title":"ElasticSearch"

    }

    }

    ]

    }

    }

    }



    {

    "query":{

    "bool":{

    "must":[

    {

    "match":{

    "author":"loistein"

    }

    },

    {

    "match":{

    "title":"ElasticSearch"

    }

    }

    ],

    "filter":[

    {

    "term":{

    "word_count":1000

    }

    }

    ]

    }

    }

    }


        3. must_not

    {

    "query":{

    "bool":{

    "must_not":{

    "term":{

    "author":"loistein"

    }

    }

    }

    }

    }


    查看全部
    0 采集 收起 来源:复合查询

    2019-08-19

  • 高级查询


    1. 子条件查询:特定字段查询所指特定值

    • Query context:

    • Filter context:在查询过程中,只判断该文档是否满足条件,只有yes或者no

        会缓存,结果比较快一些

        post 127.0.0.1:9200/book/_search

    {

    "query":{

    "bool":{

    "filter":{

    "word_count":1000

    }

    }

    }

    }


        2. 复合条件查询:以一定的逻辑组合子条件查询


    查看全部
    0 采集 收起 来源:filter

    2019-08-19

  • 高级查询


    子条件查询:特定字段查询所指特定值

        Query context:

            在查询过程中,除了判断文档是否满足查询条件外,ES还会计算一个_socre来标识匹配的程度,旨在判断文档和查询条件匹配的有多好。

        常用查询:

        全文本查询:针对文本类型数据

    •     模糊匹配:

    post 127.0.0.1:9200/book/_search

    {

    "query":{

    "match":{

    "author":"loistein"

    }

    }

    }


    匹配ElasticSearch和入门两个词语

    {

    "query":{

    "match":{

    "title":"ElasticSearch入门"

    }

    }

    }


    • 习语匹配,匹配"ElasticSearch入门":

    {

    "query":{

    "match_phrase":{

    "title":"ElasticSearch入门"

    }

    }

    }


    • 多个字段匹配

    {

    "query":{

    "multi_match":{

    "query":"loistein",

    "fields":["author","title"]

    }

    }

    }


    • 语法查询:

    {

    "query":{

    "query_string":{

    "query":"(ELasticSearch AND 大发) OR Python"

    }

    }

    }


    {

    "query":{

    "query_string":{

    "query":"Loistein OR ELasticSearch",

    "fields":["title","author"]

    }

    }

    }


        字段级别查询:针对结构化数据,如数字、日期等

    {

    "query":{

    "term":{

    "word_count":"1000"

    }

    }

    }


    • 指定范围查询

    {

    "query":{

    "range":{

    "word_count":{

    "gte":1000,

    "let":2000

    }

    }

    }

    }


    {

    "query":{

    "range":{

    "publish_date":{

    "gte":"2018-01-01",

    "let":"now"

    }

    }

    }

    }


    Filter context:


    复合条件查询:以一定的逻辑组合子条件查询


    查看全部
    0 采集 收起 来源:query

    2019-08-19

  • 查询


    简单查询

    GET 127.0.0.1:9200/book/novel/1


    条件查询

    POST 127.0.0.1:9200/book/_search

    返回所有

    {

    "query":{

    "match_all":{}

    }

    }



    返回第几条到第几条数据

    {

    "query":{

    "match_all":{}

    },

    "from":1,

    "size":1

    }


    关键字查询:

    {

    "query":{

    "match":{

    "title":"ElasticSearch"

    }

    }

    }


    指定排序规则:

    {

    "query":{

    "match":{

    "title":"ElasticSearch"

    }

    },

    "sort":[

    {"publish_date":{"order":"desc"}}

    ]

    }


    聚合查询

    按照列名称聚合

    {

    "aggs":{

    "group_by_word_count":{

    "terms":{

    "field":"word_count"

    }

    },

    "group_by_publish_date":{

    "terms":{

    "field":"publish_date"

    }

    }

    }

    }


    返回统计值,比如最大、最小、平均值

    {

    "aggs":{

    "grades_word_count":{

    "stats":{

    "field":"word_count"

    }

    }

    }

    }



    返回最小值

    {

    "aggs":{

    "grades_word_count":{

    "min":{

    "field":"word_count"

    }

    }

    }

    }


    查看全部
    1 采集 收起 来源:查询

    2019-08-19

举报

0/150
提交
取消
课程须知
熟悉maven构建项目,了解RESTful和Spring Boot的基本知识
老师告诉你能学到什么?
ElasticSearch的基本概念,学习ElasticSearch的服务搭建,了解ElasticSearch的常用技巧

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!