單表一億?還是全庫1億?
如皋網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,如皋網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為如皋上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢,請找那個售后服務(wù)好的如皋做網(wǎng)站的公司定做!
1.首先可以考慮業(yè)務(wù)層面優(yōu)化,即垂直分表。
垂直分表就是把一個數(shù)據(jù)量很大的表,可以按某個字段的屬性或使用頻繁程度分類,拆分為多個表。
如有多種業(yè)務(wù)類型,每種業(yè)務(wù)類型入不同的表,table1,table2,table3.
如果日常業(yè)務(wù)不需要使用所有數(shù)據(jù),可以按時間分表,比如說月表。每個表只存一個月記錄。
2.架構(gòu)上的優(yōu)化,即水平分表。
水平分表就是根據(jù)一列或多列數(shù)據(jù)的值把數(shù)據(jù)行放到多個獨(dú)立的表里,這里不具備業(yè)務(wù)意義。
如按照id分表,末尾是0-9的數(shù)據(jù)分別插入到10個表里面。
可能你要問,這樣看起來和剛才說的垂直分表沒什么區(qū)別。只不過是否具備業(yè)務(wù)意義的差異,都是按字段的值來分表。
實(shí)際上,水平分表現(xiàn)在最流行的實(shí)現(xiàn)方式,是通過水平分庫來實(shí)現(xiàn)的。即剛才所說的10個表,分布在10個mysql數(shù)據(jù)庫上。這樣可以通過多個低配置主機(jī)整合起來,實(shí)現(xiàn)高性能。
最常見的解決方案是cobar,這個帖子介紹的比較完善,可以看看。
cobar的邏輯層次圖:
不過這種分庫方式也是有一定局限性的,需要應(yīng)用程序做相應(yīng)的配合,比如說分庫的情況下,雖然可以實(shí)現(xiàn)跨庫查詢,但是不能進(jìn)行相關(guān)的group?by計算。
另外,之前關(guān)于水平分表的實(shí)現(xiàn)方式,也可以通過表分區(qū)來實(shí)現(xiàn)。
mysql優(yōu)化的方式有很多,選擇上主要還是要考慮個人的實(shí)際情況,如代碼不可控的情況下,就不適合選擇按字段屬性分表的情況,這樣可能會帶來大量的重構(gòu)以及很多不可預(yù)期的風(fēng)險。
而架構(gòu)的優(yōu)化,雖然對應(yīng)用是透明的,但對sql的寫法有很多局限性,比如說不能使用聚合函數(shù)等等,同時也需要有充足的硬件資源,只有一臺服務(wù)器的情況下是沒有意義的。
相比起來,代價最低的是按時間分表或分區(qū),這兩種辦法對應(yīng)用來說都是透明的。
分區(qū)只需要一次本地數(shù)據(jù)遷移的操作。
而通過分表把現(xiàn)網(wǎng)數(shù)據(jù)和歷史數(shù)據(jù)分離,唯一的代價是定期的數(shù)據(jù)維護(hù)。
一般如果表里面有1億數(shù)據(jù)的情況下,索引的問題應(yīng)該是常識了,這方面我就不說了。
另外如果覺得答的不錯多給點(diǎn)分。
幫一樓的個哥們補(bǔ)充一下吧,你做兩個表
第一個表是商品表。包含商品id,商品名,品牌,商品型號,等等
第二個是商品信息表。字段包括商品id,屬性英文名稱,屬性中文名稱,屬性值。
比如我有一個三星的電視
在第一個表里面寫
id=1,商品名=三星電視,品牌=三星,商品型號=32XXXXX。。。。
第二個表里面寫
id=1,屬性英文名:LCDTYPE,屬性中文名:液晶類型,屬性值:LED
id=1,屬性英文名:size,屬性中文名:液晶尺寸,屬性值:32
。。。。。。
選中某個表,然后右鍵點(diǎn)擊,選擇“設(shè)計表”即可。
也可以左鍵點(diǎn)擊某個表(即選中某表),在上面輔助菜單欄里有“打開表”、“設(shè)計表”、“新建表”等按鈕可點(diǎn)擊,點(diǎn)擊“設(shè)計表”按鈕即可。
進(jìn)入后,會彈出新的操作窗口,新窗口的菜單欄里有常用的修改表結(jié)構(gòu)的按鈕,右鍵點(diǎn)擊某列字段也可以彈出相應(yīng)的修改表的操作按鈕。
其它摸索著看提示操作即可,還是很簡單的。
修改好表后點(diǎn)擊菜單欄上的“保存”按鈕即可。
注:若要查看修改表的sql語句,必須在“保存”之前點(diǎn)擊“SQL預(yù)覽”按鈕。
本文標(biāo)題:mysql多表怎么設(shè)計 多對多表怎么設(shè)計
網(wǎng)頁地址:http://jinyejixie.com/article14/heppge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、用戶體驗(yàn)、品牌網(wǎng)站建設(shè)、軟件開發(fā)、外貿(mào)網(wǎng)站建設(shè)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)