草庐IT

一个通用的es聚合查询方法

/***一个通用的es聚合查询方法*@paramrestHighLevelClient*@paramstart*@paramend*@paramindex*@paramaggregationName*@parampainlessScript*@paramexistsQueryParams*@paramnotExistsQueryParams*@return*@throwsIOException*/privateListqueryFromEs(RestHighLevelClientrestHighLevelClient,Stringstart,Stringend,String[]index,St

mysql同步数据到es之logstash

mysql同步数据到es常用两种方式1.使用logstash如果是历史数据同步我们可以用logstash,最快同步频率每分钟一次,如果对时效性要求高,慎用2.使用canal实时同步,本文章未演示使用logstash进行同步logstash特性:无需开发,仅需安装配置logstash即可;凡是SQL可以实现的logstash均可以实现(本就是通过sql查询数据)支持每次全量同步或按照特定字段(如递增ID、修改时间)增量同步;同步频率可控,最快同步频率每分钟一次(如果对实效性要求较高,慎用);不支持被物理删除的数据同步物理删除ES中的数据(可在表设计中增加逻辑删除字段IsDelete标识数据删除)

elasticdump:es批量索引迁移心得

目录1.方法介绍1.1一行代码看懂用法1.2导出源数据的settings、mapping、data1.3将导出的数据文件导入至目标索引1.4从数据源直接导入到目标集群1.方法介绍1.1一行代码看懂用法elasticdump--input--output--type=1.2导出源数据的settings、mapping、data1.2.1:导出源数据索引的settings文件elasticdump--inputhttp://账号:密码@localhost:9213/test_index--output/Users/wu/Desktop/test_index_settings.json--type=

【ES6】阮一峰ES6学习(六) Proxy

Proxy1.前言2.使用3.Proxy实例方法1.get()方法2.set()方法3.apply()方法4.为什么要存在Proxy?两者对比1.前言es6中全新设计了一个叫Proxy的类型,Proxy这个词的原意是代理,用在这里表示由它来”代理“某些操作,可以译为”代理器“,可以这样理解:在目标对象之前架设一层"拦截",外界对该对象的访问,都必须先通过这层拦截。举个简单的例子比如茅台酒的代理,有了这个代理,我们就不能直接从茅台公司拿酒,必须通过这个代理代理说多少钱,就是多少钱,代理说没有就没有Proxy代理的是一个对象,这个对象被代理之后,我们就不能直接访问这个对象了,必须通过代理访问。比如

ES 如何重建索引

场景:    ES索引中,为了效率和存储空间,有些字段可以设定为不被索引,然后某一天又需要改成能索引,此时就需要对ES进行重建索引,操作如下1、修改ES索引模板文件cd/data/elk/logstash/es-template/vimevent.json将mask以及其他需要放开查询的字段的"index":false去掉(注意需要把上方"type":"keyword",的逗号去掉),保存文件退出。2reindex索引1)在kibanaDevtools执行POST_reindex{"source":{"index":"event"},"dest":{"index":"event_bak","o

采用多线程+ES批量写入

文章目录前言一、自定义线程池二、上代码前言将Mysql的数据使用分页、多线程的方式批量导入到ElasticSearch一、自定义线程池自定义线程池实现:newThreadPoolExecutor(7个参数)corePoolSize:核心线程数(默认值:1)allowCoreThreadTimeout=false为默认值如果设置allowCoreThreadTimeout=false后,当前线程数大于corePoolSize,如果线程空闲等待时间超过keepAliveTime,则该线程会被回收。如果设置allowCoreThreadTimeout=true后,当前线程数小于corePoolSiz

ES日志存储以及备份压缩到COS

导语为了满足用户日益增长的日志存储大小,不影响用户的写入和查询性能。满足不同用户写入流量。同时用户日志长期保存,日志存储比较占用空间和成本。ES集群规格配置高,消耗资源和成本。我们基于Go语言设计了一个多用户多ES集群,日志备份到cos节省成本的方案。本篇实践基于Go语言编程。索引设计为了防止单个索引不断增加。影响ES集群查询写入性能,ES集群的索引设计主要采取如下方式:1. 租户分离:将索引按照租户进行分离,避免不同租户之间的数据混淆,提高ES集群的数据安全性和隔离性。2. 按月分割:将索引按照每个月进行分割,避免单个索引过大,提高ES集群的查询性能。3. 按大小固定rollover:将索引

elasticsearch 7.9.3知识归纳整理(五)之 es的索引生命周期管理

es的索引生命周期管理一、常见概念及命令1.1、概念ILM定义了四个生命周期阶段:Hot:正在积极地更新和查询索引。Warm:不再更新索引,但仍在查询。cold:不再更新索引,很少查询。信息仍然需要可搜索,但是如果这些查询速度较慢也可以。Delete:不再需要该索引,可以安全地将其删除rollover:rollover可以基于大小,文档数或使用期限创建新的索引去保存数据1.2、DSL命令索引的生命周期常用命令:GET_ilm/status#查看状态POST_ilm/start#启动POST_ilm/stop#停止索引的策略的常用命令:GET_ilm/policy#查看策略或者GET_ilm/p

elasticsearch 7.9.3知识归纳整理(五)之 es的索引生命周期管理

es的索引生命周期管理一、常见概念及命令1.1、概念ILM定义了四个生命周期阶段:Hot:正在积极地更新和查询索引。Warm:不再更新索引,但仍在查询。cold:不再更新索引,很少查询。信息仍然需要可搜索,但是如果这些查询速度较慢也可以。Delete:不再需要该索引,可以安全地将其删除rollover:rollover可以基于大小,文档数或使用期限创建新的索引去保存数据1.2、DSL命令索引的生命周期常用命令:GET_ilm/status#查看状态POST_ilm/start#启动POST_ilm/stop#停止索引的策略的常用命令:GET_ilm/policy#查看策略或者GET_ilm/p

es数据量过大,内存撑不住,关闭部分历史数据索引,以及备份删除索引

关闭索引命令curl-XPOSThttp://ip:9200/索引名称/_close恢复索引命令curl-XPOSThttp://ip:9200/*202205*/_open遇到问题索引权限问题关闭失败{"type":"cluster_block_exception","reason":"blockedby:[FORBIDDEN/12/indexread-only/allowdelete(api)];"}修改权限curl-XPUT-H'Content-Type:application/json' http://127.0.0.1:9200/_all/_settings -d '{"index.