那天夜里的時候,我去十三哥屋里找他,他正在敲代碼。平時我找他, 都是談技術,畢竟都是程序員,除了這一點,其它的共同愛好,我們也沒有。
不過這一次,不是談技術。房子要到期了,我是要問他,是繼續(xù)合租,還是各尋它途。 他說要去北方,他女朋友在北方。這點我理解,我要去東南,我女朋友在東南。
租房的事情談過后,他向我揚揚眉,有個好東西,說要告訴我。 我知道,他在炫耀,他想裝逼,他有準備。 我想用嘲笑,壓制他的炫耀,但我沒有,而是故做平靜的說:說說看。
他說他們公司,遇到一個問題,一個 mongodb 的數(shù)據庫,查詢時間太長。 我點點頭,表示讓他繼續(xù)。他說之前還好,數(shù)據量比較少,這段時間業(yè)務很好, 數(shù)據開始增多,查詢經常超時。我皺下眉,表示一下困惑。他繼續(xù)說, 索引也加了,能優(yōu)化的都優(yōu)化了,仍然超時。我看著他,沒有表情,等著他繼續(xù)。 他停頓了一下,然后問我,你覺得怎么辦?我說我想想。
我不說話,看著屋頂。他笑著看著我,看著我苦苦的思索,等待著我的答案。 我低下頭,沒有說答案,而是問向他,他們是怎么解決的。
他說那天下午,他們老大找到他,講了相同的事情,問了相同的問題,他也沒有回答。 他的老大笑笑,說可以"分表"啊。之前的表里面,放著所有的記錄,數(shù)據快到六百萬時, 出現(xiàn)了查詢超時,如果按照業(yè)務劃分,可以分成十幾個表,每個業(yè)務的數(shù)據,只放到自己的表里, 每個表的數(shù)據,都會降低很多。 他們建了新表,舊表保持原樣,只在舊表增加,不再進行查詢,查詢操作,都轉移到了新表。 新表的字段,也由舊表的九個,變?yōu)楝F(xiàn)在的四個,這四個是必須的,多余的全部去除。 他們分表過后,效果確實很好,每次都不超時。