PostgreSQL分頁索引問題定位

????去年年中做了一個用戶權(quán)益的控制功能俗慈,其中查詢用戶權(quán)益歷史記錄接口測試同學(xué)壓測發(fā)現(xiàn)100(線程)*100(循環(huán))的情況出現(xiàn)睛驳,部分請求超過10S相應(yīng)&很大一批數(shù)據(jù)出現(xiàn)超過1S的情況咆瘟。用戶量1000W+,表數(shù)據(jù)2000W+印蔗。多次測試性能差距較大客冈,多次測試發(fā)現(xiàn)的特征是:分頁設(shè)定為(2~5)頁的情況出現(xiàn)并發(fā)性能特別差,分頁設(shè)置為10的情況并發(fā)性能立馬提升赏殃。


1敷待、針對設(shè)定分頁設(shè)定為5的情況

????下面語句索引包含uid、update_date 兩個單獨索引(update_date主要是考慮后續(xù)的數(shù)據(jù)統(tǒng)計和分析使用需要)仁热,PG查詢優(yōu)化器根據(jù)updated_date 進行索引

2榜揖、分頁設(shè)置為10 的情況

查詢計劃是按照uid進行查詢的,根據(jù)uid索引之后的數(shù)據(jù)量就比較小了抗蠢,性能會立馬提升

????根據(jù)explain獲取執(zhí)行計劃之后举哟,查看了測試環(huán)境數(shù)據(jù)的分布情況,發(fā)現(xiàn)數(shù)據(jù)分布集中在update_date某個固定的時間段內(nèi)迅矛。所以分頁選擇limit2并且根據(jù)update_time desc的情況妨猩,PG的查詢優(yōu)化器就會自動選擇update_date作為索引,由于數(shù)據(jù)集中分布在update_date某個時間段诬乞,導(dǎo)致索引之后的數(shù)據(jù)量仍然非常大册赛,需要通過uid進行filter過濾,導(dǎo)致性能非常差震嫉。強制刪除update_date字段的索引之后森瘪,查詢強制走UID索引,性能明顯提升票堵。


PG沒有類似Mysql 強制索引查詢的指令(MySQL使用force?index(update_date))扼睬,故涉及到PG查詢分頁的情況,當(dāng)存在排序和過濾兩個字段均有索引的情況,最好先評估數(shù)據(jù)的分布情況窗宇,看看執(zhí)行計劃措伐,評估腳本性能。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末军俊,一起剝皮案震驚了整個濱河市侥加,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌粪躬,老刑警劉巖担败,帶你破解...
    沈念sama閱讀 222,729評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異镰官,居然都是意外死亡提前,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評論 3 399
  • 文/潘曉璐 我一進店門泳唠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來狈网,“玉大人,你說我怎么就攤上這事笨腥⊥夭福” “怎么了?”我有些...
    開封第一講書人閱讀 169,461評論 0 362
  • 文/不壞的土叔 我叫張陵扇雕,是天一觀的道長拓售。 經(jīng)常有香客問我窥摄,道長镶奉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,135評論 1 300
  • 正文 為了忘掉前任崭放,我火速辦了婚禮哨苛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘币砂。我一直安慰自己建峭,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 69,130評論 6 398
  • 文/花漫 我一把揭開白布决摧。 她就那樣靜靜地躺著亿蒸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪掌桩。 梳的紋絲不亂的頭發(fā)上边锁,一...
    開封第一講書人閱讀 52,736評論 1 312
  • 那天,我揣著相機與錄音波岛,去河邊找鬼茅坛。 笑死,一個胖子當(dāng)著我的面吹牛则拷,可吹牛的內(nèi)容都是我干的贡蓖。 我是一名探鬼主播曹鸠,決...
    沈念sama閱讀 41,179評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼斥铺!你這毒婦竟也來了彻桃?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,124評論 0 277
  • 序言:老撾萬榮一對情侶失蹤晾蜘,失蹤者是張志新(化名)和其女友劉穎叛薯,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體笙纤,經(jīng)...
    沈念sama閱讀 46,657評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡耗溜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,723評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了省容。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片抖拴。...
    茶點故事閱讀 40,872評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖腥椒,靈堂內(nèi)的尸體忽然破棺而出阿宅,到底是詐尸還是另有隱情,我是刑警寧澤笼蛛,帶...
    沈念sama閱讀 36,533評論 5 351
  • 正文 年R本政府宣布洒放,位于F島的核電站,受9級特大地震影響滨砍,放射性物質(zhì)發(fā)生泄漏往湿。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,213評論 3 336
  • 文/蒙蒙 一惋戏、第九天 我趴在偏房一處隱蔽的房頂上張望领追。 院中可真熱鬧,春花似錦响逢、人聲如沸绒窑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,700評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽些膨。三九已至,卻和暖如春钦铺,著一層夾襖步出監(jiān)牢的瞬間订雾,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,819評論 1 274
  • 我被黑心中介騙來泰國打工职抡, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留葬燎,地道東北人。 一個月前我還...
    沈念sama閱讀 49,304評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像谱净,于是被迫代替她去往敵國和親窑邦。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,876評論 2 361

推薦閱讀更多精彩內(nèi)容