久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    Mysql某個表有近千萬數據,CRUD比較慢,如何優化?

     sunnqyint 2020-11-22

    我是【會點代碼的大叔】,每天為你分享程序員干貨,關注并私信我數字“1”,送你一份程序員大禮包。

    MySQL 數據庫某張表近千萬的數據,CRUD比較慢,如何優化?

    說實話,這個數據量級, MySQL 單庫單表支撐起來完全沒有問題的,所以首先還是考慮數據庫本身的優化。

    從上圖可以看到,數據庫優化通常可以通過以上幾點來實現:

    • 硬件升級:也就是花更多的錢,升級我們數據庫硬件配置,包括 CPU、內存、磁盤、網絡等等,但是這個方案成本高,而且不一定能起到非常好的效果。
    • 數據庫配置:修改數據庫的配置,有可能讓我們的 CRUD 操作變得更快,不過我也不建議大家把經歷放在這一點上面;首先,數據庫的配置通常由專業的 DBA 來負責;第二,大部分時候,默認的數據庫配置在大多數情況下已經是最優配置了。

    對于開發人員來說,我們需要把注意力放在后面三點:

    數據結構的優化,也就是表結構的優化

    • 數據類型的選擇:選用合適的數據結構。什么叫做'合適的數據結構',比如性別字段,M表示男F表示女,那么一個 char(1) 就足夠了,如果存儲人的年齡,那么就沒有必要使用 INT 這么大范圍的字段了;
    • 適當的拆分:千萬不要試圖把所有的字段放在一張表中,因為這會非常影響性能,通常一張表的字段最好不要超過 30 個;
    • 適當的冗余:如果一些常用的字段,可能會用在不同的維度,那么我們可以把這些字段設計在多張表中,因為這樣可能會減少表關聯;
    • 字段盡量設置成 not Null,盡量帶有默認值。

    SQL 語句的優化

    優化 SQL 語句執行速度的方法有很多,比如:

    • 盡量使用索引,盡量避免全表掃描,提高查詢速度;
    • 當然你不能無限制地建立索引;維護索引也會影響性能,會降低 DML 操作的速度;
    • 注意 SQL 語句的書寫,有一些錯誤的寫法可能會導致索引失效;
    • 盡量避免在 where 子句中對字段進行 Null 值判斷(當然我們在表設計中,直接建議不要有 Null);
    • 條件值多的情況下,盡量不要使用 in 和 not in ;
    • select 的時候,使用具體的字段代替 * 號
    • 避免返回大量數據,增加分頁;

    減少數據庫的訪問

    • 我們可以通過增加本地緩存或分布式緩存的方式,將熱點數據存儲到緩存中,以減少數據庫的訪問;
    • 終極大招,如果是一個不合理的需求,我們可以拒絕做這個需求,這樣也算是'減少了數據庫訪問'。

    說完了 MySQL 本身的優化,如果數據量進一步增大的話,我們還有什么優化的方案呢?

    讀寫分離

    主庫用于寫,從庫用于讀,將讀寫分散在不同的數據庫上,利用多臺機器的資源,來提高數據庫的可用性和性能。

    分庫分表

    如果數據持續增多,超過了單臺 MySQL 的支撐上限,那么只能用【分庫分表】這一招了;我們可以采用一定的路由規則,將數據保存到不同的數據庫中。

    當然,如果不是“迫不得已”,我是不太建議分庫分表的,因為這樣極大地增加了系統的復雜程度,并且會帶來更多的問題需要開發人員解決。

    以上就是常用的 MySQL 優化方案,如果是千萬級數據量,優化 MySQL 本身即可。

    會點代碼的大叔 | 原創

    一個寫代碼的架構師,專注程序員的學習和成長,關注并私信我數字“1”,送你一份程序員大禮包。

      本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
      轉藏 分享 獻花(0

      0條評論

      發表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 中文字幕无码免费久久99| 在线A毛片免费视频观看| 办公室强奷漂亮少妇同事| 综合图区亚洲欧美另类图片| 日日躁夜夜躁狠狠躁超碰97| 最新亚洲人成网站在线影院| 亚洲精品无码AV人在线播放 | 97久久综合亚洲色hezyo| 东京热人妻丝袜无码AV一二三区观| 久久久久久久波多野结衣高潮| 欧美人与禽2o2o性论交| 性虎精品无码AV导航| 精品无码一区二区三区AV| 国产成人综合95精品视频 | 无码射肉在线播放视频| 欧美丰满熟妇bbbbbb| 久久SE精品一区精品二区| 精品国产精品中文字幕| 国产清纯在线一区二区| 国产精品欧美福利久久| 精品亚洲欧美无人区乱码| 亚洲人妻精品中文字幕| 99久久99久久免费精品小说| 日韩在线成年视频人网站观看| 国产精品V欧美精品V日韩精品| 人妻少妇456在线视频| 老司机久久99久久精品播放免费| 国产69精品久久久久99尤物| 国产卡一卡二卡三免费入口| 精品无码一区在线观看| 亚洲欧美日韩愉拍自拍美利坚| 国产精品自产拍在线观看中文| 日本怡春院一区二区三区| 亚洲一区久久蜜臀av| 美女内射视频WWW网站午夜| 人人超人人超碰超国产| 日韩有码中文字幕国产| 欧美精品亚洲精品日韩专区一乛方| 亚洲精品色无码AV试看| 亚洲精品一区二区美女| 中文有无人妻VS无码人妻激烈|