ElasticSearch常用方法

ElasticSearch:是一个储存、检索、数据分析引擎。

在互联网项目中我们经常会按一定的条件去索引我们指定的数据,但是在大量的数据中我们如果直接查询数据库效率是非常低的,ElasticSearch就可以很好的帮我们完成检索。

es封装了api提供给我我们直接操作:_cat

GET/_cat/nodes: 查看所有节点

GET/_cat/health: 查看 es 健康状况

GET /_cat/master: 查看主节点

GET /_cat/indices:查看所有索引 show databases

常用api:

新增:put、post

如:

查询:get

修改:put、post

删除:delete 、bulk

QueryDSL:查询领域特定语言:

如:​​​​​​​

查询所有:match_all

匹配查询:match

短语查询:match_phrase

多字段匹配:multi_match

复合查询:bool

过滤:filter

查询:term 查询固定的值 如:age:18

聚合分析:aggregations 可以分组提取数据

映射创建:mapping

springboot整合es:Elasticsearch-Rest-Client: 官方 RestClient,封装了 ES 操作,API 层次分明,上手简单

实现步骤:

1.导入依赖

复制代码
<dependency>
            <groupId>org.elasticsearch.client</groupId>
            <artifactId>elasticsearch-rest-high-level-client</artifactId>
            <version>7.4.2</version>
        </dependency>

2.编写配置

复制代码
@Configuration
public class ElasticConfig {

    //默认设置项  如果后期有需要在这添加就欧克
    public static final RequestOptions COMMON_OPTIONS;

    static {
        RequestOptions.Builder builder = RequestOptions.DEFAULT.toBuilder();
//        builder.addHeader("Authorization","Bearer " + TOKEN);
        COMMON_OPTIONS = builder.build();
    }

  
    @Bean
    public RestHighLevelClient esRestClient(){
        RestHighLevelClient restHighLevelClient = new RestHighLevelClient(
                RestClient.builder(
                    new HttpHost("192.168.127.129",9200,"http")
                )
        );
        return restHighLevelClient;
    }
}

3.注入es对象根据api操作就🆗

相关推荐
HRaitest1 小时前
秋招技术岗招聘提效:三类 AI 招聘方案的技术底层与选型逻辑
大数据·人工智能·求职招聘·ai-native
starzy19903 小时前
Kafka源码深度剖析:消息有异常是如何处理的
大数据·kafka
大大大大晴天4 小时前
每天认识一个组件:ClickHouse
大数据
zwjapple5 小时前
skill总结
大数据·elasticsearch·搜索引擎
百年江湖随意沉浮5 小时前
DATA AI · 数据可视化
大数据
SelectDB5 小时前
实时更新排错现场:导入了却查到旧数据,和 FINAL 越加越慢的两条路
大数据·数据库·数据分析
SelectDB6 小时前
拿 Planet 的账单一行行对下来,我总结出三个可自查的校验点
大数据·数据库·数据分析
SelectDB6 小时前
Apache Doris + Vane:让多模态数据进入业务分析
大数据·数据库·数据分析
考拉讲支付6 小时前
延迟分账 / 核销分账的技术实现方案:服务完成后再分钱,到底怎么设计?
大数据·运维·人工智能·微信小程序·小程序·系统架构
大大大大晴天️6 小时前
Agent Loop 深度解析:理解、规划、行动、观察与纠错
大数据·ai-agent