![]() |
1
4
缓慢的部分显然是从表中获取数据,因为索引访问似乎非常快。您可以优化RAM使用参数(请参见 http://wiki.postgresql.org/wiki/Performance_Optimization 和 http://www.varlena.com/GeneralBits/Tidbits/perf.html ),或通过发出CLUSTER命令优化表中数据的布局(请参见 http://www.postgresql.org/docs/8.3/static/sql-cluster.html ).
应该这么做。 |
![]() |
2
2
除了Daniel的回答之外,集群操作是一个一次性的过程,它重新排列了磁盘上的数据。其目的是从更少的磁盘块中获取2000个结果行。
由于这是虚拟数据,用于了解如何快速查询它,因此我建议重新加载它,以更接近生成时如何加载它的模式。我认为数据是一天一次生成的,这将有效地导致
如果没有这些,并且有随机生成的数据,您很可能需要对磁盘头执行2000次以上的查找。 我还要检查你在Windows 7上运行的其他任何东西没有给那些你不需要的读取增加时间,比如确保读取的块不包含病毒签名,或者同时执行自动计划的磁盘碎片整理(导致磁盘头几乎不可能接近上次的位置读取了数据库块)。 |
![]() |
3
0
|
|
Johnny T · 基于当前值的SQL合并表[重复] 6 月前 |
![]() |
Peter Schofield · 类型转换Postgresql 7 月前 |
![]() |
Kevin Smeeks · Pyspark JDBC分区读取 7 月前 |
![]() |
Andrus · 如何在sql中查找第二个匹配项 7 月前 |