亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQ中索引的實現方式

發布時間:2021-09-15 14:21:18 來源:億速云 閱讀:146 作者:chen 欄目:數據庫

這篇文章主要介紹“MySQ中索引的實現方式”,在日常操作中,相信很多人在MySQ中索引的實現方式問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MySQ中索引的實現方式”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

首先,需要對相關背景知識進行了解:B-Tree & B+Tree、折半查找(Binary Search)、 數據庫的性能問題和數據的基本存儲結構。下面做簡要分析:
  1.B-Tree & B+Tree
  http://en.wikipedia.org/wiki/B%2B_tree
  http://en.wikipedia.org/wiki/B-tree
  2.半查找(Binary Search)
  http://en.wikipedia.org/wiki/Binary_search_algorithm
  3.數據庫的性能問題
  ① 磁盤IO性能非常低,嚴重的影響數據庫系統的性能。
  ② 磁盤順序讀寫比隨機讀寫的性能高很多。
  4.數據的基本存儲結構
  ①磁盤空間被劃分為許多大小相同的塊(Block)或者頁(Page).
  ② 一個表的這些數據塊以鏈表的方式串聯在一起。
  ③ 數據是以行(Row)為單位一行一行的存放在磁盤上的塊中,如圖所示.
  ④ 在訪問數據時,一次從磁盤中讀出或者寫入至少一個完整的Block。
  
  數據基本操作的實現
  基本操作包括:INSERT、UPDATE、DELETE、SELECT。
  1.SELECT
  ①定位數據
  ② 讀出數據所在的塊,對數據加工
  ③ 返回數據給用戶
  2.UPDATE、DELETE
  ①定位數據
  ②讀出數據所在的塊,修改數據
  ③寫回磁盤
  3.INSERT
  ①定位數據要插入的頁(如果數據需要排序)
  ②讀出要插入的數據頁,插入數據.
  ③ 寫回磁盤
  如何定位數據?
  4.表掃描(Table Scan)
  從磁盤中依次讀出所有的數據塊,一行一行的進行數據匹配。
  時間復雜度 是O(n), 如果所有的數據占用了100個塊。盡管只查詢一行數據,也需要讀出所有100個塊的數據。
   需要大量的磁盤IO操作,極大的影響了數據定位的性能。
  因為數據定位操作是所有數據操作必須的操作,數據定位操作的效率會直接影響所有的數據操作的效率。
  因此我們開始思考,如何來減少磁盤的IO?
  5.減少磁盤IO
  減少數據占用的磁盤空間:壓縮算法、優化數據存儲結構
  減少訪問數據的總量:讀出或寫入的數據中,有一部分是數據操作所必須的,這部分稱作有效數據。剩余的部分則不是數據操作必須的數據,稱為無效數據。例如,查詢姓名是‘張三’的記錄。那么這條記錄是有效記錄,其他記錄則是無效記錄。我們要努力減少無效數據的訪問。

到此,關于“MySQ中索引的實現方式”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

太和县| 吉安县| 东光县| 宽甸| 呼玛县| 崇左市| 桐柏县| 汉寿县| 光泽县| 石狮市| 牡丹江市| 汤阴县| 滦南县| 锦屏县| 大余县| 房山区| 商丘市| 宁夏| 大方县| 商城县| 庆城县| 南京市| 贡觉县| 临城县| 睢宁县| 黄平县| 咸阳市| 桃园市| 镶黄旗| 牙克石市| 通许县| 大田县| 庆元县| 高邮市| 呼伦贝尔市| 海丰县| 武胜县| 宜章县| 庆安县| 博客| 涪陵区|