ES6.3 index Sorting测试
用法:
在索引模板中添加setting指定排序:
"settings" : {
"index" : {
"sort.field" : "enter_time",
"sort.order" : "desc"
}
}
也可以指定多级排序:
"settings" : {
"index" : {
"sort.field" : ["enter_time", "camera_id"],
"sort.order" : ["desc","asc"]
}
}
查询测试时,图片比对之后按照enter_time 升序排序,结果如下:
数据量:18,217,302(61.3G)
(1)图片比对时,1800万数据量比对时耗时: 31347ms(23865ms,16454ms)
12万数据量时比对耗时:13280ms(292ms)
(2)只做过滤查询的,相同的条件:耗时2398ms 过滤出120339条结果
数据量:18025200(61.5G)
(1)图片比对时,1800万数据量比对时耗时: 8778ms
12万数据量时比对耗时:7169ms
(2)只做过滤查询的,相同的条件:耗时只有164ms 过滤出122612条结果
结论:
经测试,图片比对时,查询结果按照时间升序、降序排序或者按照相似度排序,耗时没有区别
3、磁盘占用空间测试:
索引时使用时间排序可节省大量磁盘空间(但用uuid排序并没有节省磁盘空间,为什么?)
4、index sorting 测试
图片比对查询时,在1800万多的数据中只搜索一段时间的数据(12万多),同样5个分片,按照时间排序的索引耗时1782ms,没有指定排序的索引耗时16267ms,按照uuid排序的索引耗时21031ms
5、过滤查询测试
不图片比对,只有时间过滤查询时,在1800万多的数据中只搜索一段时间的数据(12万多),同样5个分片,对结果按照时间排序时,按照时间排序的索引耗时2031ms,没有指定排序的索引耗时2436ms,按照uuid排序的索引耗时3094ms;对结果按照uuid排序时,按照时间排序的索引耗时3586ms,没有指定排序的索引耗时3863ms,按照uuid排序的索引耗时2525ms。这里可以看出指定排序后,按照相同的方式查询时,性能更好。如果按时间排序,当取其中一个时间段查询时,性能有大幅度提升,如果查询全部的数据,性能提升不明显。
6、track_total_hits参数测试:
官网上讲,当不需要结果总数(total)时,使用"track_total_hits": false可以提高性能,但经过测试,加不加此参数,查询耗时基本没有什么区别。
上面是针对应用的测试,仅供参考。
转载于:https://www.cnblogs.com/zling/p/10395468.html
ES6.3 index Sorting测试相关推荐
- express下使用ES6 - dtdxrk - 博客园
express下使用ES6 1 2 3 4 5 6 7 8 9 //环境切换配置 package.json scripts:{ "service": "NODE_ENV= ...
- karma如何与测试框架合作2之webpack
前文中,我们探讨了karma的工作的一些基本过程.但是,我并没有提及es6相关的内容, 本文来填这个坑. 抛出疑问 在现有的karma + webpack项目里,我们经常看到这样的配置,以vue-we ...
- express下使用ES6
//环境切换配置 package.json scripts:{ "service": "NODE_ENV=production PORT=3000 npm start&q ...
- 老树新芽,在ES6下使用Express
要让Express在ES6下跑起来就不得不用转码器Babel了.首先新建一个在某目录下新建一个项目.然后跳转到这个目录下开始下面的操作. 简单走起 安装babel-cli $ npm install ...
- ES6(一)ES6的开发环境搭建(es6转码为es5)
写在最前面 往后陆续更新EXMA script 6的文章,都是之前工作的积累和网上搜索总结后自己再重新操手一遍,为了以后工作的需要,有理解的不到位的地方请小伙伴多多指正,共同进步! es6的优点(题外 ...
- apache修改最大连接并用ab网站压力测试
apache修改最大连接并用ab网站压力测试 apache 2.2,使用默认配置,默认最大连接数是150 1.首先在httpd.conf中加载httpd-mpm.conf配置(去掉前面的注释): # ...
- centos7 apache2.4 测试
物理环境 VPC,64C,8G,SSD 安装环境 centos7 apache2.4 php5.4 均使用YUM安装. 默认配置. 创建phpinfo echo "<?php phpi ...
- jest java_✅使用jest进行测试驱动开发
前言 本文将使用jest进行测试驱动开发的示例,源码在github.重点说明在开发中引入单元测试后开发过程,以及测试先行的开发思路. 本文的重点是过程以及思维方法,框架以及用法不是重点. 本文使用的编 ...
- 测试驱动开发_?使用jest进行测试驱动开发
前言 本文将使用jest进行测试驱动开发的示例,源码在github.重点说明在开发中引入单元测试后开发过程,以及测试先行的开发思路. 本文的重点是过程以及思维方法,框架以及用法不是重点. 本文使用的编 ...
- React 16 Jest ES6 Class Mocks(使用ES6语法类的模拟) 实例三、四
转载地址 React 16 Jest ES6 Class Mocks(使用ES6语法类的模拟) 实例三.四 项目初始化 git clone https://github.com/durban89/we ...
最新文章
- Keras创始人:过去6个月,深度学习岗位已崩溃
- 全球及中国生物医药产业供给需求前景与运营风险分析报告2022版
- 教 Chatbot 生成更有营养的对话
- Django之orm补充
- 小小的 API 如何创造出 3.5 亿美元的价值?
- [RMAN]控制文件的恢复
- php amp 26472,汉字与UNICODE的转换 通过文件操作
- Linux大棚命令记录
- MyBatis缓存介绍
- matlab max函数 最大值好几个,matlab中的最大值和最小值
- Python数据挖掘——文本分析
- keep-alive用法
- python爬去新浪微博_Python爬虫爬取新浪微博内容示例【基于代理IP】
- wps如何快速小计求和
- 关于芯片之争,你需要知道这些本质
- 单目标多目标优化算法的测试函数与解
- C#中ref和out关键字的应用以及区别。
- 天使与海豚的爱情故事
- 开发APP帮用户虚拟定位打卡!创始人二审改判四年
- 使用思科n9kv注意事项
热门文章
- pythonATM,购物车项目实战8--通用函数的使用lib/common
- 帆软 动态改变填报数据库表;数据分析亦可用此方法
- python实现异步的原理_一篇文章理解Python异步编程的基本原理
- 第二章 生成、打包、部署和管理应用程序及类型
- 谷歌:光靠软件修复不能完全防御“幽灵”漏洞
- 哈尔滨举办冰雪动漫节 coser演绎《王者荣耀》英雄
- 未能写入输出文件拒绝访问
- rabbitmq-web-stomp 优化过程
- WPF入门教程系列二十——ListView示例(二)
- 【转】php json_encode中文为空的解决办法