要效能就要反正規化,說要正規化的大概學校學的巴,沒有處理big data的經驗,iSCSI的,您是來亂的嗎?,效能卡在IO還用iSCSI,SSD葛屁現在的資料救援公司已經可以救了,你們資料庫可以用鏡像,分散查詢,將title基本資料直接寫入,例如會員資料存chiang不要存ID=1有個一兩分鐘的時間差還可以接受,或者將LIST頁面快取30秒,如果是ORACLE可以開Materialized Views,mysql用big data就傷腦筋了,把每個分類建立一個table分散在不同的raidMSSQL可以分散tabletable一開始就要locate目標大小,例如預計會有五千萬筆,實際資料有12G,一開始就占12G的實體空間,讓資料是連續,index不要亂建,不是每個欄位都要有,要檢視沒有效益的就砍了,in要看清楚哪邊的table大,join和in在不同的資料量會有不同的效能,不見得哪個比較好,結論換SSD安全性沒有問題,請買企業等級,還有70%的資料庫效能問題在於資料庫設計、程式撰寫的問題,並非硬體不足,找外包、專家花幾十萬比較實際、便宜。
Big Data: NoSQL可以考慮不用錢的:apache cassandra 我之前有看過到某個版本後支援SQL/index 等等...http://wiki.apache.org/cassandra/GettingStarted另外也可以try apache hadoop...瓶頸如果在網路tcp/ip...也可以把db server 的tcp port多開幾個..程式分散從不同的tcp port 連進 DB..
我們有一台IBM 3650裝SSD跑DB,IO效能很好~~7顆60GB做RAID 5,一顆hot spare。(去年買的規格,不到50萬,現在同價格應該可以買到更大的容量)不過全SSD感覺只適用在中小型的DB,幾百GB以下的都還不錯用。容量大的SSD價格太貴了,通常很少人會買,HP 400GB SLC一顆7千多美金,用MLC的也要3千塊不過還是要看預算吧!50萬以內的預算,又想要高IOPS那我覺得SSD是不錯的選擇如果有上百萬的預算,那找有auto tire的storage應該是比較適合,全SSD還是有一定的風險
我是總務, 做事也站在企業的永續成長來思考.看了這各方專業人仕的建議,怎沒人提到要問蔣大,目前01資料庫總容量多少,應該是自有機房 ??現今存取的快取開多大,每日資料膨脹多少空間,如何備份資料庫(全備、異動 之週期),備份時間要花多久,多少人力。是"專業??"代操,還是01職員。((也不用管垂直或水平澎脹,蓋地球上尚未有大到倒掉的資料庫))要先知道這些數據,才能用上各方大德的思考方向,去以二到三倍的成長模式來司考.不管是優化軟硬 , 或是效能至上, 預算C/P , 資料安全, 這三者的權重分配連搬家有分機車搞定或是出動堅達總要先問.
03006476700 wrote:我們公司的資料庫就是用SSD架設的速度真的是沒話說但是就像是上述幾位說的從語法下手,精簡才是王道我們也一直有在精簡語法因為SSD一出事會一整個很不穩定RAID我覺得是個不錯的選項現在我們公司的架構是SSD+鏡像備份還有定時的異地資料的備份天天都跑就是怕SSD掛掉給你參考嚕..(恕刪) 請問架設多久了,SSD多久會掛幾顆???頻率?感請賜教一下^^xu.6 wrote:如果要用SSD突破IO瓶頸,那可能得用pci-e的ssd得用錢堆出來的 ...(恕刪) 是阿,很夭壽,看過一片1.6T的pci-e的ssd,要價半台車子,頭皮一陣發麻
非常謝謝大家的熱心回答,網友提供的很多方式我們都已經嘗試過,甚至也已經在用了,可能是我們能力遇到瓶頸吧,我們會再努力試著調整跟解決看看我們目前的情況大概是55GBdatabase,16顆73GB SAS 15000轉硬碟 RAID 6,ext3檔案格式,64GB memory cache,每日增加約30MB,QPS平均2000高的話大概是3200利用這個機會也來徵人一下,如果有伙伴有大型網站的維運經驗,非常歡迎加入我們,有興趣的請跟我聯絡喔!
chiang wrote:非常謝謝大家的熱心回...(恕刪) 在資料庫前端加上SQL負載平衡器,多分幾台SQL做cluster SQL Database再加上2-tier備份主機這樣應該比一味的處理主機內部I/O的瓶頸方便多了