MySql性能調優01-[數據結構和索引]

數據結構和索引

  • 什么是索引
    • 索引的種類
    • 常見索引數據結構和區別
      • 二叉樹
    • 紅黑樹

什么是索引

在這里插入圖片描述

索引的種類

在Mysql中索引是在存儲引擎層實現的,而不是在服務層實現的

  • 按數據結構分:B+tree索引、Hash索引、Full-text索引
  • 按存儲結構分:聚簇索引、非聚簇索引
  • 按字段特性分:主鍵索引、唯一索引、普通索引、全文索引
  • 按字段個數分:單例索引、聯合索引

常見索引數據結構和區別

  • 二叉樹、紅黑樹、B樹、B+數
  • 區別:樹的高度影響獲取數據的性能(每一個樹節點就是一次磁盤IO)

二叉樹

特點:每一個節點最多有兩個子節點,左小右大。在數據隨機性情況下樹杈越明顯。

將以下表的id設置為索引
就是將id列按照二叉樹的數據結構存儲起來
在這里插入圖片描述
如果數據是順序一次進入
樹的高度會很高(就是一個鏈表結構),此時元素的查找效率就等于鏈表查詢O(n),數據檢索效率將極為低下。
在這里插入圖片描述

紅黑樹

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/43297.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/43297.shtml
英文地址,請注明出處:http://en.pswp.cn/web/43297.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【Python百日進階-Web開發-Peewee】Day296 - 查詢示例(五)聚合2、遞歸

文章目錄 14.6.13 列出每個指定設施的預訂總小時數 List the total hours booked per named facility14.6.14 列出每位會員在 2012 年 9 月 1 日之后的首次預訂 List each member’s first booking after September 1st 201214.6.15 生成成員名稱列表,每行包含成員總數 Produc…

閑話銀行家舍入法,以及在程序中如何實現

前言 相信對于四舍五入的舍入法,大家都耳熟能詳,但對于銀行家舍入法,可能就會比較少接觸了! 可是在金融界,銀行家舍入法可是大名鼎鼎的主角之一,主要應用于金融領域和涉及貨幣計算的場合。 那么&#xf…

異步輪詢 Web API 的實現與 C# 示例

在現代軟件開發中,異步輪詢 Web API 是一種常見的做法,尤其是在需要定期從服務器獲取數據更新的場景下。C# 作為一種功能強大的編程語言,提供了豐富的異步編程支持,使得實現異步輪詢變得相對簡單。本文將介紹如何使用 C# 快速實現…

Google Guava Cache簡介

目錄 簡介和Redis的區別 簡介 Google Guava 是一個開源的 Java 庫,其中提供了一系列強大的工具來簡化 Java 開發工作。其中,Guava Cache 組件提供了一個內存緩存的實現,可以顯著提高應用程序的性能。這是一個高效且靈活的緩存解決方案&#…

conda 創建新的虛擬環境報錯

conda 創建新的虛擬環境報錯 CorruptedEnvironmentError: The target environment has been corrupted. Corrupted environments most commonly occur when the conda process is force-terminated while in an unlink-link transaction. 把錯誤的文件刪除如A.json 再重新運行…

JavaWeb-js(4)

js事件 在前端頁面中,js程序大多數是由事件來驅動的,當觸發某些事件的時候,可以使用js負責響應。 js事件由三部分組成: 事件源——》指的是被觸發的對象; 事件類型——》如何觸發的事件,如:鼠標單擊、雙擊、鍵盤操作等;…

釣魚網站制作-克隆163企業郵箱

這里克隆163企業郵箱比較費勁,和之前的還不一樣,這個克隆的目錄比較多,發現好多工具都克隆不全,要不就是缺少圖片要不就是缺少功能 首先效果 可以看到成功記錄賬戶密碼,接下來再來偽裝到域名 這里克隆網站使用神器 …

stm32使用單通道規則組ADC

Driver_ADC.c 如果需要關閉adc轉換,只需要設置CNT,將其置為0,后面再轉換一次就停止了。 #include "Driver_ADC.h"void Driver_ADC1_Init(void) {/* 1. 時鐘配置 *//* 1.1 adc時鐘 */RCC->APB2ENR | RCC_APB2ENR_ADC1EN;RCC-&g…

bev 之 fastBEV

前面我們提到bev 之 LSS, 知道視覺的BEV方案的主要痛點在于: 1、depth 的預測 2、圖像特征到BEV特征之間的視圖變換消耗大量計算 LSS 為什么需要D維深度 占據大量消耗的原因是LSS 對每個圖像特征點引入深度D,即假設每個像素上存在可能的D維深度。也就是假設不同像…

ubuntu18虛擬機克隆后不能上網和磁盤損壞問題

小學期直接給學弟學妹們自己配好的克隆的虛擬機,結果出現了這兩種問題,參考了網上好多資料,太多了忘了存了,花了好久的時間才解決,這里記錄一下。 磁盤損壞問題: 網絡無法連同問題,ip addr發現…

特征融合篇 | YOLOv10改進之在Neck網絡中添加加權雙向特征金字塔BiFPN

前言:Hello大家好,我是小哥談。在計算機視覺任務中,特征金字塔網絡(FPN)是一種常用的方法,它通過構建不同尺度的特征圖來捕獲不同尺度的目標。然而,傳統的FPN存在一些缺點,如特征融合…

解鎖Postman的API參數化:動態請求的秘訣

🔑 解鎖Postman的API參數化:動態請求的秘訣 在API測試的世界里,參數化是構建靈活、可重用請求的關鍵。Postman作為API開發和測試的領軍工具,提供了強大的參數化功能,允許用戶創建動態、個性化的API請求。本文將深入探…

計算機網絡--tcpdump和iptable設置、內核參數優化策略

tcpdump工具 tcpdump命令: 選項字段: 過濾表達式: 實用命令: TCP三次握手抓包命令: #客戶端執行tcpdump 抓取數據包 tcpdump -i etho tcp and host 192.168.12.36 and port 80 -W timeout.pcapnetstat命令 netst…

7.10飛書一面面經

問題描述 Redis為什么快? 這個問題我遇到過,但是沒有好好總結,導致答得很亂。 答:Redis基于內存操作: 傳統的磁盤文件操作相比減少了IO,提高了操作的速度。 Redis高效的數據結構:Redis專門設計…

java算法day11

二叉樹的遞歸遍歷二叉樹的非遞歸遍歷寫法層序遍歷 遞歸怎么寫? 按照三要素可以保證寫出正確的遞歸算法: 1.確定遞歸函數的參數和返回值: 確定哪些參數是遞歸的過程中需要處理的,那么就在遞歸函數里加上這個參數, 并且…

第二證券:銷量暴跌95%,這一巨頭市值蒸發超3000億元!

在多重要素刺激下,PCB工作站上風口。 波音銷量墮入停滯 6月僅售出3架客機 據央視財經,在一系列丑聞的影響下,波音公司本年出售遭到明顯沖擊。當地時間9日,波音發布的數據閃現,在以前一個月,該公司僅賣出…

關于Java面向對象的一些問題(2024.7.10)

package question20240710;public class Question {/*1. 什么叫做多態,條件是什么?2. 使用多態特性,帶來了什么樣的好處?3. 使用多態特性,注意什么樣的弊端?4. 關于多態的弊端我們如何解決?5. 在…

excel有條件提取單元格特定文本(篩選純文字的單元格或含有數字的單元格、單元格提取不同的文本長度)

實際工作背景 需要對導出的銀行流水中的數十個村以及對應的村小組進行分組統計,但是初始的表格中村和小組是混在一起的,如下圖所示: 目的:將大樹村和大樹村小組名稱分別篩選出來 1.觀察發現,大樹村小組的單元格第4…

代碼隨想錄算法訓練營第四十九天| 647. 回文子串、 516.最長回文子序列

647. 回文子串 題目鏈接:647. 回文子串 文檔講解:代碼隨想錄 狀態:不會 思路: dp[i][j] 表示字符串 s 從索引 i 到索引 j 這一段子串是否為回文子串。 當s[i]與s[j]不相等,那沒啥好說的了,dp[i][j]一定是fa…

構建與操作共享棧

歸納編程學習的感悟, 記錄奮斗路上的點滴, 希望能幫到一樣刻苦的你! 如有不足歡迎指正! 共同學習交流! ??歡迎各位→點贊 ??+ 收藏? + 留言???既然選擇了遠方,當不負青春,砥礪前行! 共享棧是一種優化的棧實現方式,它允許兩個或多個棧共享同一段連續的內存空間…