您现在的位置是:首页 > 文章详情

Elasticsearch Rest Client bboss v5.9.2 发布

日期:2019-11-14点击:596

The best Elasticsearch Highlevel Rest  Client API-----bboss    v5.9.2 发布。

bboss elasticsearch 是一套基 于query dsl 语法操作和访问分布式搜索引擎 elasticsearch 的 o/r mapping 高性能java开发库,底层基于 es restful api。

主要功能特色

  1. ElasticSearch兼容性:1.x,2.x,5.x,6.x,7.x,+

  2. JDK兼容性: jdk 1.7+

  3. Spring boot兼容性:1.x,2.x

  4. ORM和DSL二者兼顾,类mybatis方式操作ElasticSearch,

  5. 支持SQLJDBC

  6. 提供快速而高效的数据同步导入ES工具(支持DB到Elasticsearch,Elasticsearch到DB,MongoDB到Elastisearch数据同步,后续将支持更多的数据源)

  7. 提供按时间日期ES历史数据清理工具

  8. APM开源产品pinpoint官方Elasticsearch bboss 客户端性能监控插件,插件地址:

     https://github.com/naver/pinpoint/tree/master/plugins/elasticsearch-bboss

v5.9.2 功能改进:

1.增加MetaMap类:MetaMap继承HashMap,为map 增加meta元数据相关的属性信息,参考示例:

  //创建批量创建文档的客户端对象,单实例多线程安全 ClientInterface clientUtil = ElasticSearchHelper.getRestClientUtil(); //单文档检索 MetaMap newDemo = clientUtil.getDocument("demo",//索引表 "demo",//索引类型 "1",//文档id MetaMap.class ); //打印metamap和返回的文档元数据信息 System.out.println(newDemo); System.out.println("getId:"+newDemo.getId()); System.out.println("getIndex:"+newDemo.getIndex()); System.out.println("getNode:"+newDemo.getNode()); System.out.println("getShard:"+newDemo.getShard()); System.out.println("getType:"+newDemo.getType()); System.out.println("getExplanation:"+newDemo.getExplanation()); System.out.println("getFields:"+newDemo.getFields()); System.out.println("getHighlight:"+newDemo.getHighlight()); System.out.println("getInnerHits:"+newDemo.getInnerHits()); System.out.println("getNested:"+newDemo.getNested()); System.out.println("getPrimaryTerm:"+newDemo.getPrimaryTerm()); System.out.println("getScore:"+newDemo.getScore()); System.out.println("getSeqNo:"+newDemo.getSeqNo()); System.out.println("getVersion:"+newDemo.getVersion()); System.out.println("getParent:"+newDemo.getParent()); System.out.println("getRouting:"+newDemo.getRouting()); System.out.println("getSort:"+newDemo.getSort()); System.out.println("isFound:"+newDemo.isFound()); //列表检索 ESDatas<MetaMap> data //ESDatas为查询结果集对象,封装了返回的当前查询的List<TAgentInfo>结果集和符合条件的总记录数totalSize = clientUtil.searchList("trace-*/_search",//查询操作,查询indices trace-*中符合条件的数据 "queryServiceByCondition",//通过名称引用配置文件中的query dsl语句 parmas,//查询条件,Map<key,value> MetaMap.class);//指定返回的po对象类型,po对象中的属性与indices表中的文档filed名称保持一致 //获取结果对象列表 List<MetaMap> demos = data.getDatas(); //获取总记录数 long totalSize = data.getTotalSize();

2.修复自定义启动客户端问题:设置数字参数和boolean参数不起作用

3.数据同步工具:增加mongodb到elasticsearch同步功能,工具demo:

https://github.com/bbossgroups/mongodb-elasticsearch

参考文档:mongodb-elasticsearch数据同步使用方法

4.数据同步工具改进:如果同步字段中包含名称为_id的属性,则忽略之,否则会导致数据无法正常导入Elasticsearch

5.增加慢请求服务调用日志信息采集功能,可以将慢dsl打印到日志文件或者发送给接收慢dsl的回调接口函数

增加两个参数:

elasticsearch.slowDslThreshold(慢dsl时间条件参数 )和  elasticsearch.slowDslCallback(接收慢dsl的接口配置)

  slowDslThreshold单位:ms 毫秒

  elasticsearch.slowDslThreshold=10000

  spring boot配置项

 spring.elasticsearch.bboss.elasticsearch.slowDslThreshold=10000

 指定接收慢dsl的回调接口函数slowDslCallback,便于自行处理慢dsl信息

  public interface SlowDslCallback { void slowDslHandle( SlowDsl slowDsl); }

​ slowDslCallback配置:

  elasticsearch.slowDslCallback=org.bboss.elasticsearchtest.crud.TestSlowDslCallback

​ spring boot配置项

 spring.elasticsearch.bboss.elasticsearch.slowDslCallback=org.bboss.elasticsearchtest.crud.TestSlowDslCallback

如果没有指定回调处理接口,将直接打印警告信息到日志文件,WARN级别 , 如果dsl过长,需要截取掉部分内容再打印到日志文件中:超过2048的dsl将被截取掉超过的内容,替换为.....,否则调用SlowDslCallback接口方法slowDslHandle传递慢dsl的相关信息:

6.数据同步工具改进:完善增量数据同步机制,增量字段无需排序即可实现增量同步功能,提升同步性能,改进后部分类(比如Context)包路径做了调整,但是api完全兼容,可以到以下地址下载改进后最新的工具:

7.数据同步工具bug修复:解决增量同步状态更新可能存在的不正确问题

8.数据同步工具改进:增加数据同步监控指标数据的采集,参考文档:数据同步任务执行统计信息获取

9.数据同步工具新增功能:elasticsearch到db的数据同步功能,支持全量、增量定时同步,内置jdk timer同步器,支持quartz、xxl-job任务调度引擎,使用参考:

elasticsearch-db数据同步使用方法

10.简化数据同步程序开发调试工作:可以直接在同步程序的main中方法进行同步功能开发和调试

11.Scroll/Slice scroll检索功能改进:支持在hanlder结果回调处理函数中中断scroll/slice croll的执行,参考文档:

https://esdoc.bbossgroups.com/#/Scroll-SliceScroll-api

12.json库fastjackson升级到2.10.0

Elasticsearch bboss使用文档

Elasticsearch bboss版本变更记录

原文链接:https://www.oschina.net/news/111323/bboss-elasticsearch-5-9-2-released
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章