大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) 簡述MySQL數(shù)據(jù)庫開發(fā)核心原則

簡述MySQL數(shù)據(jù)庫開發(fā)核心原則

更新時間:2021-02-18 02:07:39 來源:動力節(jié)點 瀏覽2568次

MySQL是一種開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),MySQL作為目前系統(tǒng)開發(fā)中最常用的數(shù)據(jù)庫之一,因為其速度、可靠性和適應(yīng)性而備受開發(fā)者的青睞。然而為了避免我們在MySQL數(shù)據(jù)庫開發(fā)中遭遇致命的錯誤,我們需要恪守MySQL數(shù)據(jù)庫開發(fā)核心原則。以下所列出的5條MySQL數(shù)據(jù)庫開發(fā)核心原則是所有MySQL數(shù)據(jù)庫開發(fā)時應(yīng)該遵守的。希望可以引起重視。

1.盡量避免在數(shù)據(jù)庫中做運算

“使雞司夜,令貍執(zhí)鼠,皆用其能,上乃無事。”古人都早已參透各司其職,各盡其責(zé)的重要性,作為現(xiàn)代化的數(shù)據(jù)庫開發(fā)人員,我們更應(yīng)該讓數(shù)據(jù)庫做其本職工作,而不是”物盡其用”。所以,我們應(yīng)該盡量避免在數(shù)據(jù)庫中做一些運算,復(fù)雜運算轉(zhuǎn)移到程序端CPU,那里才是它的戰(zhàn)場。我們應(yīng)該避免在數(shù)據(jù)庫中使用復(fù)雜的運算函數(shù),畢竟術(shù)業(yè)有專攻,這不是數(shù)據(jù)庫的強項,處理復(fù)雜運算的任務(wù)就交給CPU好了。

2.盡量控制表字段數(shù)量

單表的字段數(shù)量不能太多,否則會影響數(shù)據(jù)庫的優(yōu)化。根據(jù)業(yè)務(wù)場景進行優(yōu)化調(diào)整,盡量調(diào)整表字段數(shù)少而精,這樣可以使得IO高效,能夠快速的遍歷全表,二區(qū)還能提高數(shù)據(jù)庫的并發(fā)性。

通過特定標準來控制字段數(shù)量,按照單表1G體積,500W行數(shù)據(jù)量進行評估:順序讀1G文件需N秒,單行不超過200Byte,單表不超50個純INT字段,單表不超20個CHAR(10)字段,建議單表字段數(shù)上限控制在20~50個。

3.平衡范式與冗余

數(shù)據(jù)庫表結(jié)構(gòu)的設(shè)計也講究平衡,以往我們經(jīng)常說要嚴格遵循三大范式,所以先來說說什么是范式。第一范式:單個字段不可再分。唯一性。第二范式:不存在非主屬性只依賴部分主鍵。消除不完全依賴。第三范式:消除傳遞依賴。用一句話來總結(jié)范式和冗余:冗余是以存儲換取性能,范式是以性能換取存儲。所以,一般在實際工作中冗余更受歡迎一些。模型設(shè)計時,這兩方面的具體的權(quán)衡,首先要以企業(yè)提供的計算能力和存儲資源為基礎(chǔ)。其次,一般互聯(lián)網(wǎng)行業(yè)中都根據(jù)Kimball模式實施數(shù)據(jù)倉庫,建模也是以任務(wù)驅(qū)動的,因此冗余和范式的權(quán)衡符合任務(wù)需要。例如,一份指標數(shù)據(jù),必須在早上8點之前處理完成,但計算的時間窗口又很小,要盡可能減少指標的計算耗時,這時在計算過程中要盡可能減少多表關(guān)聯(lián),模型設(shè)計時需要做更多的冗余。

4.拒絕三個B

由于數(shù)據(jù)庫的并發(fā)就像城市交通,呈非線性增長,這就要求我們在做數(shù)據(jù)庫開發(fā)的時候一定要注意高并發(fā)下的瓶頸,防止因高并發(fā)造成數(shù)據(jù)庫癱瘓。

這里的3B是指:

大SQL(BIG SQL):要減少

大事務(wù)(BIG Transaction)

大批量(BIG Batch)

5.盡量控制單表數(shù)據(jù)量

大家都知道單表數(shù)據(jù)量過大后會影響數(shù)據(jù)查詢效率,嚴重情況下會導(dǎo)致整個庫都卡住。一般情況下,按照一年內(nèi)單表數(shù)據(jù)量預(yù)估:純INT不超過1000W,含CHAR不超過500W,同時要盡量做好合理的分表,使單表數(shù)據(jù)量不超載,常見的分表策略有:通過USERID來分表(根據(jù)ID區(qū)間分表):在金融行業(yè)應(yīng)用較多,用戶量大、用戶特征明顯。按DATE分表(按天、周、月分表):在電信行業(yè)應(yīng)用非常多,如用戶上網(wǎng)記錄表、用戶短信表、話單表等。按AREA分表(省、市、區(qū)分表)。

實際上,這些MySQL數(shù)據(jù)庫開發(fā)的核心原則或者說MySQL數(shù)據(jù)庫開發(fā)的注意事項在網(wǎng)上有很多大同小異的版本,其實主要還是前輩用引以為鑒的歷史事件得出的寶貴的經(jīng)驗教訓(xùn)。準確的來說,這些原則就是MySQL數(shù)據(jù)庫開發(fā)的紅線,一旦觸及,可能會發(fā)生意想不到的后果。所以,小伙伴們請謹記這些MySQL數(shù)據(jù)庫開發(fā)的核心原則,使得我們的MySQL數(shù)據(jù)庫開發(fā)更加合理更加規(guī)范。在后面的MySQL教程中,對這些原則有很好的講解。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 九一精品| 国产成+人+综合+亚洲 欧美 | 波多野结衣一区二区 三区 波多野结衣一区二区三区 波多野结衣一区二区三区高清在线 | 久久是精品 | 伊人黄网 | 四虎精品永久免费 | 国产h片在线观看 | 亚洲国产综合自在线另类 | 国产码欧美日韩高清综合一区 | 久久se精品一区二区影院 | 日韩在线视频在线 | 亚洲福利视频精选在线视频 | 久久久精品久久久久久 | 香港a毛片免费全部播放 | 狠狠婷婷 | 手机在线一区二区三区 | 久久欧美精品欧美久久欧美 | 成人在线视频网 | 97福利视频| 美女网站色视频 | 成人夜夜 | 中文字幕最新中文字幕中文字幕 | 免费亚洲成人 | 国产一级aaa全黄毛片 | 99精品国产成人一区二区在线 | 97免费观看 | 羞羞视频在线观看视频 | 久久久久久色 | 男人天堂成人 | 久久精品一区二区三区不卡牛牛 | 国产精品午夜在线观看 | 羞羞网址 | 亚洲人成激情在线播放 | 久久国产精品亚洲va麻豆 | 精品视频免费播放 | 国产在线视频色综合 | 青青福利视频 | 色综合亚洲综合网站综合色 | 日日操夜夜操免费视频 | 人人爰人人人人人鲁 | 日本精品一区二区三区在线观看 |