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操作就🆗

相关推荐
2601_957787585 小时前
全场景矩阵系统多端统一体验与跨端实时同步技术实践
大数据·人工智能·矩阵·多端统一·跨端同步
面向Google编程6 小时前
从零学习Kafka:消费者组重平衡
大数据·kafka·负载均衡
TDengine (老段)7 小时前
TDengine RAFT共识协议 — 选举、日志复制、快照与仲裁
android·大数据·数据库·物联网·架构·时序数据库·tdengine
Tingjct10 小时前
git/gdb指令
大数据·git·elasticsearch
dingzd9511 小时前
Reddit验证资料测试之后跨境品牌如何提升社区运营可信度
大数据·人工智能·矩阵·新媒体运营·内容营销·跨境
多年小白12 小时前
紫光国微(002049) 分析
大数据·科技·深度学习·ai
小杨互联网12 小时前
你的旧 Kindle 还能用,但平台说它该退休了
大数据·经验分享·科技·ai
泰迪智能科技13 小时前
高校人工智能与大数据产品体系及解决方案介绍
大数据·人工智能
沪漂阿龙13 小时前
面试题详解:Agent 记忆管理全解析——历史对话获取、摘要记忆、事实记忆、知识图谱记忆一次讲透
大数据·人工智能·知识图谱