<del id="d4fwx"><form id="d4fwx"></form></del>
      <del id="d4fwx"><form id="d4fwx"></form></del><del id="d4fwx"><form id="d4fwx"></form></del>

            <code id="d4fwx"><abbr id="d4fwx"></abbr></code>
          • MySQL數(shù)據(jù)庫性能優(yōu)化之存儲引擎選擇

            MyISAM

            成都創(chuàng)新互聯(lián)公司專注于網(wǎng)站建設(shè)|企業(yè)網(wǎng)站維護|優(yōu)化|托管以及網(wǎng)絡(luò)推廣,積累了大量的網(wǎng)站設(shè)計與制作經(jīng)驗,為許多企業(yè)提供了網(wǎng)站定制設(shè)計服務(wù),案例作品覆蓋汽車玻璃修復(fù)等行業(yè)。能根據(jù)企業(yè)所處的行業(yè)與銷售的產(chǎn)品,結(jié)合品牌形象的塑造,量身開發(fā)品質(zhì)網(wǎng)站。

            1.特性

            不支持事務(wù):MyISAM存儲引擎不支持事務(wù),所以對事務(wù)有要求的業(yè)務(wù)場景不能使用

            表級鎖定:其鎖定機制是表級索引,這雖然可以讓鎖定的實現(xiàn)成本很小但是也同時大大降低了其并發(fā)性能

            讀寫互相阻塞:不僅會在寫入的時候阻塞讀取,MyISAM還會在讀取的時候阻塞寫入,但讀本身并不會阻塞另外的讀

            只會緩存索引:MyISAM可以通過key_buffer緩存以大大提高訪問性能減少磁盤IO,但是這個緩存區(qū)只會緩存索引,而不會緩存數(shù)據(jù)

            2.適用場景

            不需要事務(wù)支持(不支持)

            并發(fā)相對較低(鎖定機制問題)

            數(shù)據(jù)修改相對較少(阻塞問題)

            以讀為主

            數(shù)據(jù)一致性要求不是非常高

            3.最佳實踐

            盡量索引(緩存機制)

            調(diào)整讀寫優(yōu)先級,根據(jù)實際需求確保重要操作更優(yōu)先

            啟用延遲插入改善大批量寫入性能

            盡量順序操作讓insert數(shù)據(jù)都寫入到尾部,減少阻塞

            分解大的操作,降低單個操作的阻塞時間

            降低并發(fā)數(shù),某些高并發(fā)場景通過應(yīng)用來進行排隊機制

            對于相對靜態(tài)的數(shù)據(jù),充分利用Query Cache可以極大的提高訪問效率

            MyISAM的Count只有在全表掃描的時候特別高效,帶有其他條件的count都需要進行實際的數(shù)據(jù)訪問

            InnoDB

            1.特性

            具有較好的事務(wù)支持:支持4個事務(wù)隔離級別,支持多版本讀

            行級鎖定:通過索引實現(xiàn),全表掃描仍然會是表鎖,注意間隙鎖的影響

            讀寫阻塞與事務(wù)隔離級別相關(guān)

            具有非常高效的緩存特性:能緩存索引,也能緩存數(shù)據(jù)

            整個表和主鍵以Cluster方式存儲,組成一顆平衡樹

            所有Secondary Index都會保存主鍵信息

            2.適用場景

            需要事務(wù)支持(具有較好的事務(wù)特性)

            行級鎖定對高并發(fā)有很好的適應(yīng)能力,但需要確保查詢是通過索引完成

            數(shù)據(jù)更新較為頻繁的場景

            數(shù)據(jù)一致性要求較高

            硬件設(shè)備內(nèi)存較大,可以利用InnoDB較好的緩存能力來提高內(nèi)存利用率,盡可能減少磁盤 IO

            3.最佳實踐

            主鍵盡可能小,避免給Secondary index帶來過大的空間負擔

            避免全表掃描,因為會使用表鎖

            盡可能緩存所有的索引和數(shù)據(jù),提高響應(yīng)速度

            在大批量小插入的時候,盡量自己控制事務(wù)而不要使用autocommit自動提交

            合理設(shè)置innodb_flush_log_at_trx_commit參數(shù)值,不要過度追求安全性

            避免主鍵更新,因為這會帶來大量的數(shù)據(jù)移動

            NDBCluster

            1.特性

            分布式:分布式存儲引擎,可以由多個NDBCluster存儲引擎組成集群分別存放整體數(shù)據(jù)的一部分

            支持事務(wù):和Innodb一樣,支持事務(wù)

            可與MySQLd不在一臺主機:可以和mysqld分開存在于獨立的主機上,然后通過網(wǎng)絡(luò)和mysqld通信交互

            內(nèi)存需求量巨大:新版本索引以及被索引的數(shù)據(jù)必須存放在內(nèi)存中,老版本所有數(shù)據(jù)和索引必須存在與內(nèi)存中

            2.適用場景

            具有非常高的并發(fā)需求

            對單個請求的響應(yīng)并不是非常的critical

            查詢簡單,過濾條件較為固定,每次請求數(shù)據(jù)量較少,又不希望自己進行水平Sharding

            3.最佳實踐

            盡可能讓查詢簡單,避免數(shù)據(jù)的跨節(jié)點傳輸

            盡可能滿足SQL節(jié)點的計算性能,大一點的集群SQL節(jié)點會明顯多余Data節(jié)點

            在各節(jié)點之間盡可能使用萬兆網(wǎng)絡(luò)環(huán)境互聯(lián),以減少數(shù)據(jù)在網(wǎng)絡(luò)層傳輸過程中的延時

            注:以上三個存儲引擎是目前相對主流的存儲引擎,還有其他類似如:Memory,Merge,CSV,Archive等存儲引擎的使用場景都相對較少,這里就不一一分析了,如果有朋友感興趣,后面再補充吧。

            本文出自http://www.2cto.com/database/201605/506253.html

            新聞名稱:MySQL數(shù)據(jù)庫性能優(yōu)化之存儲引擎選擇
            標題路徑:http://www.jbt999.com/article12/jispdc.html

            成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站導(dǎo)航、響應(yīng)式網(wǎng)站靜態(tài)網(wǎng)站、App開發(fā)、Google

            廣告

            聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

            網(wǎng)站建設(shè)網(wǎng)站維護公司

              <del id="d4fwx"><form id="d4fwx"></form></del>
              <del id="d4fwx"><form id="d4fwx"></form></del><del id="d4fwx"><form id="d4fwx"></form></del>

                    <code id="d4fwx"><abbr id="d4fwx"></abbr></code>
                  • 免费看做爱的网站 | 黑人大屌三 。p 黄片免费观看永久 | 国产女人操逼视屏免费播 | 亚洲一级电影在线 | 操逼视频精品 |