Postgresql链接服务器查询非常慢

时间:2016-02-29 16:56:17

标签: postgresql sql-server-2008

我有这个问题:

通过链接服务器对postgresql进行查询非常慢,非常非常慢,例如:

如果我在pgAdmin中运行此查询:

select max(oldmedicionid) from tl.tlinputtable

它只返回最大结果:246毫秒

但是如果我在链接服务器上运行(使用sqlserver 2008),我使用odbc创建dblink到postgresql,所以如果我运行它:

select MAX(oldmedicionid) from LINKPDATL.PDATL.tl.tlinputtable

查询有时会给我1分钟或更长时间的结果......

什么可能是我的问题?,我认为不是我的postgresql数据库,就像dblink非常慢,

我如何改善表现?

1 个答案:

答案 0 :(得分:3)

标识MAX(x方法中的聚合ODBC很有可能在客户端(而非服务器端)完成。通过查看行计数加倍也会使查询时间加倍,可以轻松地对此进行交叉检查。

解决方案:如果这是一些极端情况,您可以在Postgres服务器端创建一个VIEW来计算,ODBC选择聚合值。