對資料庫索引使用的思考(未完成)

2021-05-22 12:47:50 字數 960 閱讀 5151

索引的使用有利有弊,需要總結一下,故找了一下資料總結了一下。

索引:與書中的索引一樣,資料庫中的索引使您可以快速找到表或索引檢視中的特定資訊。索引包含從表或檢視中乙個或多個列生成的鍵,以及對映到指定資料的儲存位置的指標。

聚集索引:聚集索引基於聚集索引鍵按順序排序和儲存表或檢視中的資料行。聚集索引按 b 樹索引結構實現,b 樹索引結構支援基於聚集索引鍵值對行進行快速檢索。

非聚集索引:既可以使用聚集索引來為表或檢視定義非聚集索引,也可以根據堆來定義非聚集索引。非聚集索引中的每個索引行都包含非聚集鍵值和行定位符。此定位符指向聚集索引或堆中包含該鍵值的資料行。索引中的行按索引鍵值的順序儲存,但是不保證資料行按任何特定順序儲存,除非對錶建立聚集索引。

唯一索引:唯一索引確保索引鍵不包含重複的值,因此,表或檢視中的每一行在某種程度上是唯一的。聚集索引和非聚集索引都可以是唯一索引。

包含列索引:一種非聚集索引,它擴充套件後不僅包含鍵列,還包含非鍵列。

原理分析:

是否使用索引以及使用哪種索引,其實就是需要我們在 insert、delete、update、merge 和 select 等命令之中進行效能上的權衡。因為在執行 insert、delete、update、merge 命令的時候是需要花時間和資源進行索引的維護的,所以並不是說加索引就能提高效能,這個是需要根據資料的實際使用而定的。

聚集索引和非聚集索引的不同如下:

聚集索引非聚集索引

索引與資料儲存在同乙個地方

索引與資料儲存在不同的地方

乙個表只能有乙個聚集索引

乙個表可以有多個非聚集索引

資料的儲存順序與索引一致

索引的儲存順序與資料不同

不能新增包含列

可以新增包含列

覆蓋查詢

使用索引的最佳實踐指南:1、

2、

關於資料庫大併發量(未完成)

乙個資料庫併發數量是有限制的,比如連線池有多大,如果超出了,怎麼處理。有時候就用固定連線數,每個連線處理乙個佇列。這是一種簡單的方式。也比較好理解。還有就是根據資料讀寫頻率,變化頻率不同,將表分為多種類別,不同類別資料放入不同的快取中,利用緩衝區資料減少資料庫操作。這種就只是考慮資料儲存層的設計 當...

Plink的高階使用方法(未完成)

之前寫了plink常用命令總結是對plink的一些基礎命令的簡單記錄,經過一段時間的使用,也寫了乙個使用plink對snp資料進行質量控制的簡單pipeline的記錄,現在再做一些總結,就稱為plink的高階使用方法吧。提取一段位置區間的所有snp plink bfile sample extrac...

對資料庫索引的理解?

資料庫索引,是資料庫管理系統中乙個排序的資料結構,以協助快速查詢 更新資料庫表中資料。索引的原理,對要查詢的字段建立索引其實就是把該字段按照一定的方式排序,建立的索引只對該字段有用,如果查詢的字段改變,那麼這個索引也就無效了。比如,圖書館的書是按照書名的第乙個字母排序的,如果你想要找作者叫張三的就不...