Kylin查询性能低下原因分析
性能 分析 查询 原因 Kylin
2023-09-11 14:18:59 时间
在处理指数行情数据时(IDXD),我遇到一个KYLIN性能查询低下的问题,非常奇怪。经过一番研究发现了其中的原因并顺利解决:
症状:
select count(*) from sensitop.idxd where ticker = ‘000300’ and tradedate between ‘2016-01-01’ and ‘2016-07-01'
很快,不到一秒
select * from sensitop.idxd where ticker = ‘000300’ and tradedate between ‘2016-01-01’ and ‘2016-07-01'
很慢,要50多秒,有时候还会超时。
分析:
既然count很快,说明检索cube本身是很快的,问题可能出在获取数据上,可能是读取数据的存在问题,需要检查cube的设置
解决:
发现默认情况下,cube中的TRADEDATE字段是dict,当改成date时,性能问题得到解决。
结论:
这应该是一个反序列化的问题。当检索cube完成之后,得到索引,之后需要从磁盘读取数据并反序列化成对象。针对TRADEDATE,显然dict的encoding和date的encoding存在巨大的性能差异。这一点值得我们注意!
相关文章
- 神经网络与机器学习 笔记—改善反向传播的性能试探法
- Oracle性能分析1:开启SQL跟踪和获取trace文件
- JMeter性能测试实现与分析分享
- python是否存在某个字符串 效率最高_Python中判断子串存在的性能比较及分析总结...
- 性能测试环境设计研究
- 脚本性能分析
- PyCharm的Profile工具进行python代码性能分析
- Linux 性能监测:Memory
- [UWP]使用AlphaMaskEffect提升故障艺术动画的性能(顺便介绍怎么使用性能探测器分析UWP程序)
- jvm 性能分析
- Linux性能问题分析流程与性能优化思路
- Android App性能优化笔记之一:性能优化是什么及为什么?
- 【JavaScript】页面加载性能优化
- 【AGC】集成性能管理1.6.1.301版本SDK报错问题
- 《全栈性能测试修炼宝典 JMeter实战》—第1章 1.1节为什么选择软件测试
- 《Hadoop MapReduce性能优化》一1.5 小结
- linux性能分析工具Ntop
- 使用VisualVM 进行性能分析及调优
- SQL Server-聚焦NOT IN VS NOT EXISTS VS LEFT JOIN...IS NULL性能分析(十八)
- SQL查询性能分析之(not in)、(and not)、()、(!=)性能比较
- 计算机揭秘之:网络分类和性能分析
- Mysql_mysql 性能分析及explain用法
- 如何精准分析特定用户的应用性能问题?这两个功能您一定要了解
- 性能为王:SQL标量子查询的优化案例分析
- Redis千万级的数据量的性能测试
- 描述性统计与性能结果分析——《LoadRunner 没有告诉你的》
- StopWatch 监控Java代码运行时间和分析性能