bboss es和直接使用es客户端的优点到底在哪里呢?下面做个简单的阐述:
es官方客户端有两种:restclient和transprortclient,前者是基于restful的,直接操作各种restful api和query dsl,比较简单,没有orm功能;后者是基于java api封装的orm框架,封装比较死板,不太灵活,兼容性差,不能像调用restful那样直接操作query dsl,所以也不能直接针对query dsl,在head插件或者kibana里面调试和调优query dsl,写出了query dsl还要想方设法转换成对应的java api的调用方式。
相比较而然,bboss es融合了es官方提供的两种方式(restful和transprortclient)的功能,涵盖两方面能力,提供了(orm和restful,直接使用query dsl),是一个综合型的es客户端,主要优势如下:
- bboss es底层直接基于es 的http restful协议,因此支持所有的es的restful功能,采用连接池技术管理http连接,高效;
- 支持x-pack安全认证;
- 支持集群负载和容灾以及节点自动发现;
- 提供了丰富的orm api(增删改查、批量增删改,聚合统计等),api简洁易用;
- 基于xml配置文件管理query dsl脚本,在query dsl的基础上,