es索引的RestHighLevelClient实现

java代码:

import java.io.IOException;

import org.apache.http.HttpHost;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.SearchHits;
import org.elasticsearch.search.builder.SearchSourceBuilder;

public class App3 {
    public static void main(String[] args) throws IOException {
         RestHighLevelClient client = new RestHighLevelClient(
                    RestClient.builder(
                            new HttpHost("localhost", 9200, "http")));
/*         Long start=System.currentTimeMillis();
         IndicesClient indicesClient=client.indices();
         DeleteIndexRequest deleteIndexRequest=new DeleteIndexRequest("person");
         DeleteIndexResponse delRes=indicesClient.deleteIndex(deleteIndexRequest);
         if(delRes.isAcknowledged()) {
             System.out.println("delete success");
         }else{
             System.out.println("delete failed");
         }
         System.out.println("耗时:"+(System.currentTimeMillis()-start)+" 毫秒");*/
         SearchRequest req=new SearchRequest("person");
         SearchSourceBuilder builder=new SearchSourceBuilder();
         builder.size(10);
         req.source(builder);
         SearchResponse res=client.search(req);
         SearchHits hits=res.getHits();
         SearchHit[] hitArr=hits.getHits();
         for(SearchHit hit:hitArr) {
             System.out.println(hit.getSourceAsString());
         }
        /**** Done ****/
        System.out.println("Done");

    }

}

无用的import自动删除快捷键

导入需要的包快捷键 shift+ctrl+o,自动导入包,当然也会清除掉多余的包。

原文地址:https://www.cnblogs.com/davidwang456/p/9915791.html

时间: 2024-10-10 12:47:47

es索引的RestHighLevelClient实现的相关文章

Java创建ES索引实现

1.pom.xml文件 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifa

ES索引

Elasticsearch索引别名.Filtered索引别名.Template 在使用elasticsearch的时候,经常会遇到需要淘汰掉历史数据的场景. 为了方便数据淘汰,并使得数据管理更加灵活,我们经常会以时间为粒度建立索引,例如: 每个月建立一个索引:monthly-201709.monthly-201710.monthly-201711 每天建立一个索引:daily-20171015.daily-20171016.daily-20171017.daily-20171018 当不需要再继

ES索引和分片

1.为了将数据添加到ES,我们需要索引(index),索引是一个存储关联数据的地方.实际上,索引只是一个用来指定一个或多个分片的"逻辑命名空间" 2.一个分片(shard)是一个最小级别"工作单元",它只是保存了索引中的所有数据的一部分,每个分片就是一个Lucene实例,并且它本身就是一个完整的搜索引擎.我们的文档存储在分片中,并且在分片中被索引,但是我们的应用程序不会直接与它们通信,取而代之的是,直接与索引通信. 3.分片是ES在进群中分发数据的关键,可以把分片想

到底什么是ES索引?

你会发现,其实在ES里面,索引扮演的角色其实并不是存储,而是"索引",看起来有点傻,但是其实我之前一直理解索引是存储,其实从命名上可以看出来,索引其实是分片的索引,分片的字典,记录了每个分片的位置,索引范围:当需要查询的时候,可以定位到对应的分片来进行数据操作:最后进行汇总.所以index本质作用就是记录分片:所谓查询,有向无环图(DAG)都是基于index来进行分析绘制的,然后基于该图下放数据操作. 原文地址:https://www.cnblogs.com/xiashiwendao/

MySQL慢查询日志ES索引模板

{ "template": "mysql-slow-log-*", "settings": { "index": { "refresh_interval": "5s" } }, "mappings": { "mysql-slow-log": { "numeric_detection": true, //开启数值类型设置 &quo

自动清理ES索引脚本

#/bin/bash #指定日期(3个月前) DATA=`date -d "3 month ago" +%Y-%m-%d` #当前日期 time=`date` #删除3个月前的日志 curl -XDELETE http://127.0.0.1:9200/*-${DATA} if [ $? -eq 0 ];then echo $time"-->del $DATA log success.." >> /data/elk/logs/es-index-cl

Nginx access日志ES索引模板

{ "template": "nginx-access-*", "settings": { "index": { "refresh_interval": "5s" } }, "mappings": { "nginx-access": { "properties": { "@timestamp": { &quo

python - 定时清理ES 索引

只保留三天 #!/usr/bin/env python3 # -*- coding:utf-8 -*- import os import datetime # 时间转化为字符串 now_time = datetime.datetime.now().strptime(datetime.datetime.now().strftime("%Y.%m.%d"),"%Y.%m.%d") os.system("curl -XGET http://127.0.0.1:9

Elasticsearch RestHighLevelClient客户端封装

目录 EsClientRHL 开源源码地址 开发原因: 使用前你应该具有哪些技能 工具功能范围介绍 工具源码结构介绍 开始使用 未来规划 EsClientRHL EsClientRHL是一个可基于springboot的elasticsearch RestHighLevelClient客户端调用封装工具,主要提供了es索引结构工具.es索引数据增删改工具.es查询工具.es数据分析工具. 基于elasticsearch6.6+版本进行开发,由于采用RestHighLevelClient,所以版本兼