10亿数据秒级查询,ClickHouse太快了!( 三 )


结果行数:35 。
⑧Query 4.2
SELECT toYear(LO_ORDERDATE) AS year,S_NATION,P_CATEGORY,sum(LO_REVENUE - LO_SUPPLYCOST) AS profitFROM lineorder_flatWHERE (C_REGION = 'AMERICA') AND (S_REGION = 'AMERICA') AND ((year = 1997) OR (year = 1998)) AND ((P_MFGR = 'MFGR#1') OR (P_MFGR = 'MFGR#2'))GROUP BY year,S_NATION,P_CATEGORYORDER BY year ASC,S_NATION ASC,P_CATEGORY ASC┌─year─┬─S_NATION──────┬─P_CATEGORY─┬───────profit─┐│ 1997 │ ARGENTINA│ MFGR#11│ 102369950215 ││ 1997 │ ARGENTINA│ MFGR#12│ 103052774082 ││ .... │ .........│ .......│ ............ ││ 1998 │ UNITED STATES │ MFGR#24│60779388345 ││ 1998 │ UNITED STATES │ MFGR#25│60042710566 │└──────┴───────────────┴────────────┴──────────────┘100 rows in set. Elapsed: 0.826 sec. Processed 144.42 million rows, 2.17 GB (174.78 million rows/s., 2.63 GB/s.)
扫描行数:144,420,000,大约 1 亿 4 千多万 。
耗时(秒):0.826 。
查询列数:4 。
结果行数:100 。
性能测试结果汇总
如下图:
在当前软硬件环境下,扫描 6 亿多行数据,常见的分析语句首次运行最慢在 8 秒左右能返回结果 。
相同的分析逻辑更换条件再次查询的时候效率有明显的提升,可以缩短到 1 秒左右 。
如果只是简单的列查询没有加减乘除、聚合等逻辑,扫描全表 6 亿多行数据首次查询基本可以在 2 秒内执行完成 。





来源:cnblogs.com/asimov/p/14546106.html版权申明:内容来源网络,版权归原创者所有 。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意 。谢谢!




BAT等大厂Java面试经验总结
【10亿数据秒级查询,ClickHouse太快了!】想获取 Java大厂面试题学习资料