ssdb守宮 mysql表數(shù)據(jù)量太大,達到了1億多條數(shù)據(jù),除了分庫分表之外,還有沒有其他的解決方式?
mysql表數(shù)據(jù)量太大,達到了1億多條數(shù)據(jù),除了分庫分表之外,還有沒有其他的解決方式?在正常配置下,MySQL只能承載2000萬數(shù)據(jù)(同時讀寫,表中有大文本字段,單服務器)?,F(xiàn)在已經(jīng)超過1億,而且還在
mysql表數(shù)據(jù)量太大,達到了1億多條數(shù)據(jù),除了分庫分表之外,還有沒有其他的解決方式?
在正常配置下,MySQL只能承載2000萬數(shù)據(jù)(同時讀寫,表中有大文本字段,單服務器)?,F(xiàn)在已經(jīng)超過1億,而且還在增加,建議按以下方式處理:
1子表。它可以按時間或一定的規(guī)則進行拆分,以便盡可能地查詢子表中的數(shù)據(jù)庫。這是最有效的方法。特別是寫,放入一個新表,并定期同步。如果記錄不斷更新,最好將寫入的數(shù)據(jù)放在redis中,并定期同步表3的大文本字段,將它們分隔成一個新的獨立表。對于較大的文本字段,可以使用NoSQL數(shù)據(jù)庫
4優(yōu)化體系結(jié)構(gòu),或者優(yōu)化SQL查詢,避免聯(lián)合表查詢,盡量不要使用count(*)、in、recursion等性能消耗語句
5使用內(nèi)存緩存,或者在前端讀取時增加緩存數(shù)據(jù)庫。重復讀取時,直接從緩存中讀取。
以上是一種低成本的管理方法,基本上幾個服務器就可以做到,但是管理起來有點麻煩。
當然,如果整體數(shù)據(jù)量特別大,而且我們不在乎投資成本,就用集群,用tidb
蘇聯(lián)的西81軍演。1981年9月4日,在波羅的海沿岸,蘇軍出動了10多個聯(lián)合兵團和近衛(wèi)坦克部隊,在前線航空、遠程航空、陸防空軍戰(zhàn)役突擊演練的配合下開展了聯(lián)合作戰(zhàn)。蘇軍展示了由新型T-80坦克和T-72坦克組成的裝甲集群。在集團軍戰(zhàn)術(shù)導彈部隊(這些彈道導彈將在實戰(zhàn)中用于戰(zhàn)術(shù)核打擊)和機械化步兵的配合下,實現(xiàn)了裝甲集群對預定戰(zhàn)役目標的沖擊。演習中,蘇聯(lián)出現(xiàn)了空降突擊旅、戰(zhàn)役機動群(又稱OMG群)等一大批新的作戰(zhàn)系統(tǒng),裝備有空襲分隊、陸軍航空分隊、自行火炮分隊、機動防空分隊、機動后勤分隊和工程保障分隊等,可以突圍此次戰(zhàn)斗攻擊群是在北約前沿核戰(zhàn)術(shù)背景下進行的),波羅的海軍艦編隊還出動了基輔號重型航母巡洋艦,掩護海軍步兵的重型突擊登陸。演習中,蘇軍還進行了大量復雜條件下的大規(guī)模快速推進訓練,總兵力超過50萬人。除東歐國家代表外,北約觀察員也應邀觀摩演習。北約軍事代表在觀察分析演習情況后認為,蘇軍所展示的戰(zhàn)斗力能夠在8天內(nèi)從東德出發(fā)點完全突破英吉利海峽,對整個西歐社會造成沖擊。