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

相关推荐
HAYDENR5 小时前
依赖数据迁移工具做增量同步有哪些易错点?调整数据迁移工具策略怎么保证断点续传可靠?
java·大数据·数据库
中电金信5 小时前
中电金信 :一站式企业智能体柔性生产全链路解决方案
大数据·人工智能
Jlzn88885 小时前
轻量化与高可靠性的平衡之道:CCS集成母排产线关键工艺解析
大数据·网络·物联网
观远数据5 小时前
跨部门BI落地的核心:如何做好数据集权限治理消除数据孤岛
大数据·人工智能
Elasticsearch5 小时前
用两行 JSON 替换你的 ILM 策略:数据流生命周期新增冻结层支持
elasticsearch
碧口科技5 小时前
合规打底 价值锚定:博彦科技FDE模式打通金融AI境内外规模化落地路径
大数据
天行健,君子而铎6 小时前
场景化适配+合规审查+技术突破:运营商AI数据分类分级最优解决方案
大数据·安全
leisoo809714 小时前
100GBA股股票数据怎么存ClickHouseRedisMySQLJSON完整对比
大数据·linux·服务器·开发语言·python
AI产品测评官14 小时前
突破系统割裂困局:2026企业级AI招聘架构如何迈向“原生全流程”?
大数据·微服务·架构
梦梦代码精14 小时前
连锁品牌数字化:从门店扩张到用户资产运营的技术底座
大数据·人工智能·低代码·docker·开源·代码规范