当前位置:   article > 正文

Phoenix 创建二级索引,字段顺序问题_phoenix查询自动生成序号

phoenix查询自动生成序号

T_SHOW 表如下,其中SHOW_DATE、EMAIL是Row key:

 

我需要这样查询:

select seq_id from T_SHOW where show_date='2018-11-24' and cam_site='cam4' order by seq_id desc limit 1;

 

所以我增加了这样的主键

CREATE INDEX IDX_T_SHOW_CAM_SITE ON T_SHOW(CAM_SITE,SEQ_ID DESC);

 

之后查询,速度能够满足我目前的要求,但是查看执行计划,让我感到凌乱~~

 

这个执行计划,明显不合符我的想法。

首先应该按照日期来 RANGE SCAN才对。应为后续数据会越来越大,必须先按照日期来扫描。

 

于是,将原来的二级所以创建语句:

CREATE INDEX IDX_T_SHOW_CAM_SITE ON T_SHOW(CAM_SITE,SEQ_ID DESC);

改为下面这个:

CREATE INDEX IDX_T_SHOW_CAM_SITE ON T_SHOW(SHOW_DATE,CAM_SITE,SEQ_ID DESC);

就是这么一点差别,结果就不一样了。

结果如下:

 

结论:

二级索引创建的时候,请注意字段顺序。即使是字段本来就是Row Key。

集合自己的业务逻辑,顺序很重要。

 

END。

 

 

 

 

 

 

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/656745
推荐阅读
相关标签
  

闽ICP备14008679号