我們已經在PostgreSQL發現一個問題,因爲它不採用單查詢CPU的多核內龐大的數據。例如,我有8個CPU核心。我們有stock.move表中有4千萬條記錄。當我們在單個數據庫連接中應用大量查詢來生成報告時,我們發現只有一個內核被100%使用,其中所有其他7個內核都是空閒的。由於該查詢執行時間需要更長的時間,我們的odoo系統速度較慢。而問題在於postgresql內核。如果無論如何,我們可以在兩個或更多內核之間共享查詢,而不是在postgresql查詢執行中獲得性能提升。之所以Odoo正在緩慢時,有數據庫
我相信通過解決執行並行查詢,我們可以Odoo性能甚至更快。任何人對此有任何建議?
----------- *編輯這個問題,向您展示和PostgreSQL核心委員會* ---------
我在這裏張貼回答我從Postgresql數據庫的最高貢獻者之一得到的答案。 (我希望這個信息將是有益的)
你好西仁,
預期的行爲。 PostgreSQL不支持 單個查詢的並行CPU。這個主題是在高發展,而且很可能,這 功能將在計劃發行9.6〜9月2016年,但表 與40M行不是太大,所以大概更多的CPU應該不是太幫助 你(有一些開銷和處理多CPU 查詢)。你必須使用一些通常的技巧,如物化視圖,預覽... ...這些技巧的主要思想 - 不要嘗試 重複往往相同的計算。檢查PostgreSQL的健康狀況 - 索引, 真空處理,統計,..檢查硬件 - IO的速度。檢查 PostgreSQL配置 - shared_buffers,work_mem。有些查詢可能由於錯誤的估計而緩慢 - 檢查緩慢查詢的解釋。有 是一些工具,可以打破一些查詢更多的查詢,並開始 並行執行,但我沒有使用它。 https://launchpad.net/stado http://www.pgpool.net/docs/latest/tutorial-en.html#parallel
問候帕維爾Stehule
PostgreSQL是快速和更好的,在世界上的許多應用程序適用於PostgreSQL的databas和工作正常,但由於Odoo自己的ORM和它的架構非常非常緩慢。即使很多人重複大塊呼叫,並避免。 通過社區努力odoo擁有者現在私下爲企業製作並授權,現在社區沒有足夠的準備好解決他們糟糕的性能問題。 我本人親自託管odoo自己的更正和優化沒有改變postgres數據庫,工作得很好,更好+快。 –
@TejasTank你有什麼建議嗎? – m3asmi
@ m3asmi其配置服務器的私人技能連接snippetbucket.com尋求幫助。 –