我有一个Postgres实例构建一个GIN索引。它看着约20万行,到目前为止大约需要9个小时。谁知道最终需要多久?问题在于,当我希望使用更多的90%时,它使用了大约2%的CPU。有什么办法可以强制它加速吗?Postgres在索引编译期间没有使用足够的CPU!
2
A
回答
2
主要的瓶颈可能是磁盘IO而不是CPU。
如果你在Windows机器上,你可以使用Process Explorer(免费软件)来检查磁盘IO,如果在Unix上,使用iostat,sar,DTrace(在一段时间内没有完成后者,所以不能100%确定最好的工具)
相关问题
- 1. Mongodb编译/编译错误:Ubuntu上没有足够的内存
- 2. C#多线程没有使用足够的CPU
- 3. 如何在没有足够的磁盘空间时优化Solr索引?
- 4. java netbeans没有足够的内存来编译
- 5. Android没有足够的存储空间
- 6. pthread_create没有足够的空间
- 7. 没有足够的空间GOT
- 8. Java JDK没有足够的空间
- 9. Andengine:FontException没有足够的字母空间
- 10. LWJGL - texture.bind没有足够的空间
- 11. Android。没有足够的空间sdcard
- 12. 在使用Lucene索引期间搜索没有响应
- 13. Android广告没有足够空间
- 14. 没有足够的参数?
- 15. 当没有足够的空间时使用替代布局
- 16. 复合键的索引是否足够?
- 17. 引用没有编译时使用
- 18. 编译期间未定义的引用
- 19. 在编译期间编译
- 20. 有没有足够强大的中级C++编译的上网本?
- 21. postgres空间索引
- 22. TransportWithMessageCredential没有足够的证书足够的WCF服务?
- 23. 值没有足够多态
- 24. 没有足够的内存用于parfor
- 25. 虽然有足够的空间可用,但数组索引超出范围
- 26. 没有足够的代码引用符号?
- 27. Amazon EC2的自动缩放CPU利用率闹钟 - 没有足够的数据
- 28. 没有足够的空间来显示在Android的admob
- 29. ASP.NET应用程序磁盘上没有足够的空间
- 30. 在泊坞窗精简池中没有足够的空间
你确定性能是受CPU限制的吗? – jball 2010-03-16 21:09:42
不,我不确定。我只是对它没有使用的CPU数量感到惊讶。整个表的转储达到130 MB。它使用了2.6%的CPU和2.7%的RAM,每个备件都足够了。 – Joe 2010-03-16 21:13:15
您是否为maintenance_work_mem设置了适当数量的RAM?编辑:没有锁阻止索引的制作? – 2010-03-16 21:16:43