成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

數據庫優化不為人知道的階段

運維 數據庫運維
面試的時候,經常會被面試官問到數據庫優化方面的知識點。今天來總結一下數據庫優化應該經過幾個階段,我覺得這樣回答是一個比較優的答案。

 [[316202]]

面試的時候,經常會被面試官問到數據庫優化方面的知識點。今天來總結一下數據庫優化應該經過幾個階段,我覺得這樣回答是一個比較優的答案。

0x01:SQL優化及應用程序優化

一個系統總是從小到大,所以在系統還是小型系統的時候。首先應該注重表的設計,合理使用主鍵、外鍵、索引;字段選用合適的數據類型、合適的數據長度。使用SQL考慮索引什么情況是有效的;什么時候是失效的,避免使用索引失效的SQL。

另外應該程序優化也很重要,比如能批量執行SQL,就不要在程序中循環執行SQL。使用各種框架的緩存也非常重要,例如,如果使用MyBatis時,就好合理使用MyBatis的一級緩存和二級緩存;使用Hibernate時,就好合理使用Hibernate的一級緩存和二級緩存等。

0x02:數據庫讀寫分類

當業務量達到一定程度時,可以考慮數據庫的讀寫分離方案,讓讀寫業務分離。但是一定要考慮如何解決寫庫與讀庫的數據一致性問題。目前,很多開源的讀寫分離服務和框架。主要基于如下兩種方案:

  • 應用程序根據業務邏輯來判斷,增刪改等寫操作命令發給寫庫,查詢命令發給讀庫。
  • 利用中間件來做代理,負責對數據庫的請求識別出讀還是寫,并分發到不同的數據庫中。

0x03:引入緩存數據庫

NoSQL數據庫目前也是大行其道,特別Redis數據庫。例如使用Redis緩存服務器,可以把一些常用、不經常變化的數據緩存到內存。在內存讀取數據的數據要比在硬盤讀取的速度不知道快多少倍。引入緩存數據庫增加了系統的復雜度,另外還有考慮關系型數據庫與NoSQL數據庫數據一致性的問題。

0x04:垂直拆分

一個數據庫由很多表的構成,每個表對應著不同的業務,垂直切分是指按照業務將表進行分類,分布到不同的數據庫上面,這樣也就將數據或者說壓力分擔到不同的庫上面,如下圖:

數據庫優化不為人知道的階段

優點:

  • 拆分后業務清晰,拆分規則明確
  • 系統之間整合或擴展容易
  • 數據維護簡單

缺點:

  • 部分業務表無法join,只能通過接口方式解決,提高了系統復雜度
  • 受每種業務不同的限制存在單庫性能瓶頸,不易數據擴展跟性能提高
  • 事務處理復雜

0x05:水平拆分

垂直拆分后遇到單機瓶頸,可以使用水平拆分。相對于垂直拆分的區別是:垂直拆分是把不同的表拆到不同的數據庫中,而水平拆分是把同一個表拆到不同的數據庫中。

相對于垂直拆分,水平拆分不是將表的數據做分類,而是按照某個字段的某種規則來分散到多個庫之中,每個表中包含一部分數據。簡單來說,我們可以將數據的水平切分理解為是按照數據行的切分,就是將表中 的某些行切分到一個數據庫,而另外的某些行又切分到其他的數據庫中,主要有分表,分庫兩種模式。如下圖:

數據庫優化不為人知道的階段

分庫模式

數據庫優化不為人知道的階段

分表模式

優點:

  • 不存在單庫大數據,高并發的性能瓶頸
  • 對應用透明,應用端改造較少
  • 按照合理拆分規則拆分,join操作基本避免跨庫
  • 提高了系統的穩定性跟負載能力

缺點:

  • 拆分規則難以抽象
  • 分片事務一致性難以解決
  • 數據多次擴展難度跟維護量極大
  • 跨庫join性能較差

 

責任編輯:張燕妮 來源: 今日頭條
相關推薦

2010-08-05 11:14:12

Flex優勢

2010-09-03 08:52:38

CSS

2020-02-20 12:02:32

Python數據函數

2013-08-09 09:27:08

vCentervSphere

2010-04-19 16:09:22

Oracle控制文件

2012-10-11 10:05:41

數據中心數據中心發展模塊化

2011-11-08 13:41:27

蘋果siri人工智能數據中心

2011-11-15 10:25:56

IBMWindows

2014-08-18 10:44:31

斯諾登

2010-09-06 14:19:54

CSS

2012-11-30 14:13:01

2021-02-05 09:58:52

程序員Windows系統

2017-03-28 08:40:14

2011-11-14 10:06:16

IBM大型機支持Windows系統POWER7

2011-10-19 16:19:27

iOS 5蘋果

2022-01-23 11:30:54

暗數據云安全網絡安全

2015-11-27 10:13:19

數據中心

2021-03-11 09:54:34

零日漏洞漏洞黑客

2021-11-09 07:34:34

Python函數代碼

2023-11-09 08:05:40

IDEA開發工具
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 狠狠涩| 成人网视频 | av手机在线看| 国产精品伦一区二区三级视频 | 在线成人| 三级免费毛片 | 欧美一级在线免费观看 | 欧美精品乱码99久久影院 | 无毛av | 国产精品成人在线播放 | 97精品视频在线 | 久久乐国产精品 | 99re视频 | 91精品国产综合久久久动漫日韩 | 久久久精品 | 成人精品视频在线观看 | 精品国产一区二区三区久久久四川 | 81精品国产乱码久久久久久 | 久久99精品国产99久久6男男 | 粉嫩一区二区三区性色av | 精品欧美乱码久久久久久1区2区 | 高清一区二区视频 | 国产一区二区三区精品久久久 | 国产综合欧美 | 亚洲欧美在线免费观看 | 精品99在线 | 色天堂视频 | 久久国内精品 | 免费在线成人 | 亚洲一区二区电影网 | 久久久久久久久久爱 | 中文字幕精品视频 | 精产国产伦理一二三区 | 日韩高清国产一区在线 | 亚洲三区视频 | 国产精品视频入口 | re久久| 久久久国产一区二区三区 | 中文字幕一区二区三区四区五区 | 精品国产欧美一区二区三区成人 | 电影91久久久 |