我正在一个有大约2.58亿行的表上的Vertica数据库(在单个节点上运行)中执行如下所示的SQL。
我在SQuirrel SQL中获得大约17秒的输出,但是在命令行模式下在vsql中获取相同查询的输出需要几分钟。
select avg(item_chr_val_id) from table1
任何想法,这可能是vsql
中这种缓慢的原因?
答案 0 :(得分:0)
您使用的是什么版本的Vertical和JDBC jar?我想知道你是否正在用JDBC查看正确的执行计划。虽然看起来很奇怪而且不太可能。
答案 1 :(得分:0)
延迟是由于形成操作。 在你的SQuirrel SQL中我可能有一个限制为100或1000作为你的第一个格式化数据!!在vsql中,默认值为1000,但你可以改变! 要查看执行时间,可以按如下方式执行以下操作
\timing
\o \dev\null
select avg(item_chr_val_id) from table1;
这可能会得到一个真实的结果,因为数据不会在screan上形成