java集成ES脚本的时间查询

java集成ES脚本

简介

外包到阿里云旗下“时时同云”的第一次工作总结

关于java集成ES脚本

第一次接触ES脚本,查询了中文文档以及各种百度资料,确认了ES脚本的执行顺序,以及脚本的简单逻辑。

  • 新增时间区间的检索
    使用range可以进行一次范围判断。
    range可以单独一句判断,或者链接多个判断。
    {"range":{"upgradeTime":{
       "gte":${beMemberStartDate},
        "lte":${beMemberEndDate}
    }}}
    
    等同于
    ,{"range":{"upgradeTime":{"gte":${beMemberStartDate}}}}
    ,{"range":{"upgradeTime":{"lte":${beMemberEndDate}}}}
    

ES中文文档

  • 错误记录
    在本次迭代修改中,出现了以下情况。

      *  真实数据
     9月16日一个用户升级为会员。
     9月21日一个会员升级为会员。
      *  查询结果
     9月1日——9月15日成为会员的用户数量为0(正确)
     9月16日——9月16日成为会员的数量为1(正确)
     9月17日——9月20日成为会员的数量为1(错误)
     9月21日——9月21日成为会员的数量为2(错误)
      *	个人判断
      开始时间正确,结束时间错误。期间多次修改脚本中的范围判断。gte、gt、lte、le的各种应用。
      *	检查错误
      java传递到ES脚本的参数名出现了错误,导致开始时间失效,只能确定结束时间。
      查找BUG总共耗时接近一个星期。
    

3.错误总结

  • 过于急躁,不去验证结论
    • 在查询结果中不难看出,假如是开始时间生效,结束时间失效,出现的结果应该是9月两条数据都应该查询出来。
  • 在不熟悉项目结构的同时,还不请教老员工,脸皮太薄
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值