1. 程式人生 > >海量數量下的查詢效率提升

海量數量下的查詢效率提升

從上圖可以看到我在YCSB_KEY這一列(長度100)上建立了一個名字為index_ycsb_key的索引,每條索引長度都為102,想象一下當資料變的巨大無比的時候,索引的大小也是不可以小覷的。而且從這也可以看出,索引的長度和列型別的長度還不同,比如varchar它是變長的字元型別(請看MySQL資料型別分析),實際儲存長度是是實際字元的大小,但是索引卻是你宣告的長度的大小。你建立列的時候宣告100位元組,那麼索引長度就是這個位元組再加上2,它不管你實際儲存是多大。
  除了建立索引需要消耗時間,索引檔案體積會變的越來越大之外,建立索引也需要看的你儲存資料的特徵。當你儲存資料很大一部分都是重複記錄,那這個時候建立索引是百害而無一利。請先檢視MySQL索引介紹。所以,當很多資料重複的時候,索引帶來的查詢提升的效果是可以直接忽略的,但是這個時候你還要承受插入資料的時候建立索引帶來的效能消耗。