Bboss is a good elasticsearch Java rest client. It operates and accesses elasticsearch in a way similar to mybatis.
BBoss Environmental requirements
JDK requirement: JDK 1.7+
Elasticsearch version requirements: 1.X,2.X,5.X,6.X,+
Spring booter 1.x,2.x,+
定期清理es索引数据
基于quartz 2.3.0,定期清理es索引数据,支持多个elasticsearch集群数据清理
索引要求:只支持按日期时间分索引的索引数据清理,
数据保留时间:通过elastic.data.livetime指定需要保留多少天的数据
数据清理方式:采用直接删除已经过期的索引的方式清理数据,通过crontab来定期触发数据清理操作
作业配置
修改resources/application.properties文件,elasticsearch服务器地址,支持多个集群配置,参考application.properties配置文件内容,主要的配置内容如下
rest协议配置
集群需要配置多个,逗号分隔,单机只需配置一个即可
elasticsearch.rest.hostNames=10.1.236.85:9200,10.1.236.88:9200,10.1.236.86:9200
elasticsearch访问账号
elasticsearch访问账号和口令,没有则配置为空,开启x-pack认证机制或者searchguard情况下有用
elasticUser=elastic
elasticPassword=changeme
定时任务配置
##数据有效期,以天为单位
data.livetime=30
##con time,定时扫描时间点
crontime=0/10 * * * * ?
##索引表对应的日期格式
elasticsearch.dateFormat=yyyy.MM.dd
quartz任务配置
class="org.frameworkset.task.DefaultScheduleService" used="true">
bean-name="EsscanTask199"
method="scanIndex"
cronb_time="${crontime}" used="true"
shouldRecover="false"
/>
f:dateformat="${elasticsearch.dateFormat}"
f:elasticDataLivetime="${data.livetime}"
init-method="init"/>
构建部署
前提:
利用gradle构建发布版本
运行指令,打包发布版本
release.bat
运行作业
gradle构建成功后,在build/distributions目录下会生成可以运行的zip包,解压后启动和运行quartz作业即可:
linux:
chmod +x startup.sh
./startup.sh
停止:
./stop.sh
重启
./restart.sh
windows: startup.bat stop.bat,restart.bat
快速集成和应用 bboss elasticsearch