資料庫索引簡介
索引是對資料庫表的一列或多列的值進行排序的一種結構,使用索引可以提高數中特定資料的查詢速度,
索引的優點,
(1)通過建立唯一索引,可以保證資料庫表中每一行資料的唯一性。
(2)可以大大加快資料的查詢速度,這也是建立索引的最主要的原因。
(3)在實現資料的參照完整性方面,可以加速表與表之間的鏈結。
(4)在使用分組和排序字句進行資料查詢時。也可以顯著減少查詢中分組和排序的時間。
當然,增加索引也有許多不利的方面:
(1)建立索引和維護索引需要耗費時間,並且隨著資料量的增加所耗費的時間也會增加。
(2)除了資料表要佔據資料空間外,每乙個索引還要佔一定的物理空間,如果有大量的索引,索引可能會使資料檔案更快達到最大檔案尺寸,
(3)當對表中的資料進行增加,刪除和修改的時候,索引也要動態的維護,這樣就降低了資料的維護速度。
3索引的設計原則
索引設計不合理或者缺少索引都會影響資料庫和應用程式的效能,搞笑的索引對於獲得良好的效能非常重要。設計索引時,應考慮以下準則:
(1)索引並非越多越好。乙個表中如果有大量的索引,不僅占用磁碟空間,而且會影響insert,delete、update等語句的效能,因為更改表中的資料時,索引也要進行調整和更新。
(2)避免對經常更新的表進行過多的索引,並且索引的列應當盡量的可能少,而對經常用於查詢的字段應該建立索引,但要避免新增不必要的字段。
(3)資料量小的表最好不要使用索引,由於資料較少,查詢花費的時間可能比遍歷索引的時間還要短,索引可能不會產生優化效果。
(4)在條件表示式中會經常用到的不同值較多的列上建立索引,在不同值少的列上不要建立索引。比如在學生表的「性別」欄位上只用「男」和「女」兩個不同值,因此無需建立索引。在不同值少的列上建立索引不但不會提高查詢效率,反而會嚴重降低更新速度。
(5)當唯一性是某種資料本身的特徵時,指定唯一索引。使用唯一索引需能確保定義的列的資料完整性,以提高查詢速度。
(6)在頻繁進行排序或分組的列上建立索引(即進行group 邊緣或者 order by 操作)的列上建立索引,如果待排序的列有多個,可以在這些列上建立組合索引。
mysql 索引簡介
索引 是一種特殊的資料結構,可以用來快速查詢資料庫表中的特定記錄.是提高資料庫效能的重要方式.包括普通索引,唯一性索引,全文索引,單列索引,多列索引和空間索引.簡介 由資料庫表中的一列或多列組合而成,起作用是提高對錶中資料的查詢速度.設計原則 1.選擇唯一性索引 唯一性索引的值是唯一的,可以快速通過...
mysql索引簡介
參考資料 索引釋義 索引的分類 索引建立和刪除 索引的情景化應用 索引 index 是幫助mysql高效獲取資料的資料結構。提取句子主幹,就可以得到索引的本質 索引是資料結構。為什麼是索引,而不是直接的資料庫資料本身?查詢演算法只能應用於特定的資料結構,例如二分查詢適用於有序的資料,二叉樹查詢只能應...
mysql 索引簡介
索引 其實資料庫中的資料是按頁存放的 其實索引也是按頁存放的 所以本質上索引也佔硬碟空間 以最小的消耗,換取最大的利益 索引是一種有效組合資料的方式!為快速查詢到指定記錄做鋪墊 目的就是快速或者某個記錄!提高了資料庫的檢索速度!作用 大大提高資料庫的檢索速度 改善資料庫效能 mysql索引儲存型別分...