溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

用sequoiasql-postgresql創(chuàng)建一個關聯(lián)表怎么優(yōu)化

發(fā)布時間:2021-12-22 16:52:25 來源:億速云 閱讀:232 作者:iii 欄目:數(shù)據(jù)庫

本篇內容介紹了“用sequoiasql-postgresql創(chuàng)建一個關聯(lián)表怎么優(yōu)化”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

【用戶咨詢】 
用sequoiasql-postgresql創(chuàng)建一個關聯(lián)表,存入500W數(shù)據(jù)。在創(chuàng)建索引的情況下,用pg進行簡單的group by查詢,平均耗時是50秒,是否可以進一步優(yōu)化? 
【問題描述】 
1.集群部署情況 
   三臺主機對應一個分區(qū)組,每臺主機均部署有coord、cata、data節(jié)點。 
2.表屬性 
   一個500w數(shù)據(jù)的關聯(lián)表b_qt_swdj和一個800w數(shù)據(jù)的pg原生表b_qt_swdj1,兩個表結構相同,一共39個字段。 
3.sample和語句 
   對關聯(lián)表執(zhí)行查詢: 
   ①SELECT sw_scjy_yb,count(se_scjy_yb) as count FROM b_qt_swdj group by sw_scjy_yb; 
   ②SELECT count(1) from b_qt_swdj; 
   對原生表執(zhí)行查詢: 
   ③SELECT sw_scjy_yb,count(se_scjy_yb) as count FROM b_qt_swdj1 group by sw_scjy_yb; 
   ④SELECT count(1) from b_qt_swdj1; 
    用db內置sql執(zhí)行①,耗時57秒。執(zhí)行②,耗時33秒。 
    用pg執(zhí)行①,耗時50秒。執(zhí)行②,耗時44秒。

用pg執(zhí)行③,耗時8秒。執(zhí)行④,耗時3秒。 
4.網(wǎng)絡帶寬 
    傳輸數(shù)據(jù)時約為46MB/S。 

【解決辦法】 
SELECT sw_scjy_yb,count(se_scjy_yb) as count FROM b_qt_swdj1 group by sw_scjy_yb;在pg耗時和使用sdb內置sql耗時差不多,都是50S左右。跟pg關系不大。 
從pg的訪問計劃(見截圖三)來看,絕大部分耗時也是在select上。 
建議一:應該考慮在sdb端對表做分區(qū),提高數(shù)據(jù)抽取并發(fā)度去提高性能。 
建議二:對于大表的統(tǒng)計推薦使用SparkSQL作為sql引擎。 

“用sequoiasql-postgresql創(chuàng)建一個關聯(lián)表怎么優(yōu)化”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網(wǎng)站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI