国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

SQLServer索引管理的六大鐵律

來源:懂視網 責編:小采 時間:2020-11-09 13:54:06
文檔

SQLServer索引管理的六大鐵律

SQLServer索引管理的六大鐵律:索引是以表列為基礎的數據庫對象。索引中保存著表中排序的索引列,并且紀錄了索引列在數據庫表中的物理存儲位置,實現了表中數據的邏輯排序。通過索引,可以加快數據的查詢速度和減少系統的響應時間;可以使表和表之間的連接速度加快。 但是,不是在任何時候
推薦度:
導讀SQLServer索引管理的六大鐵律:索引是以表列為基礎的數據庫對象。索引中保存著表中排序的索引列,并且紀錄了索引列在數據庫表中的物理存儲位置,實現了表中數據的邏輯排序。通過索引,可以加快數據的查詢速度和減少系統的響應時間;可以使表和表之間的連接速度加快。 但是,不是在任何時候

索引是以表列為基礎的數據庫對象。索引中保存著表中排序的索引列,并且紀錄了索引列在數據庫表中的物理存儲位置,實現了表中數據的邏輯排序。通過索引,可以加快數據的查詢速度和減少系統的響應時間;可以使表和表之間的連接速度加快。 但是,不是在任何時候

  索引是以表列為基礎的數據庫對象。索引中保存著表中排序的索引列,并且紀錄了索引列在數據庫表中的物理存儲位置,實現了表中數據的邏輯排序。通過索引,可以加快數據的查詢速度和減少系統的響應時間;可以使表和表之間的連接速度加快。

  但是,不是在任何時候使用索引都能夠達到這種效果。若在不恰當的場合下,使用索引反而會事與愿違。所以,在SQL Server數據庫中使用索引的話,還是需要遵守一定的規則。筆者覺得,主要是需要遵守六大鐵律。

  鐵律一:天下沒有免費的午餐,使用索引是需要付出代價的

  索引的優點有目共睹,但是,卻很少有人關心過采用索引所需要付出的成本。若數據庫管理員能夠對索引所需要付出的代價有一個充分的認識,也就不會那么隨意到處建立索引了。

  仔細數數,其實建立索引的代價還是蠻大的。如創建索引和維護索引都需要花費時間與精力。特別是在數據庫設計的時候,數據庫管理員為表中的哪些字段需要建立索引,要調研、要協調。如當建有索引的表中的紀錄又增加、刪除、修改操作時,數據庫要對索引進行重新調整。雖然這個工作數據庫自動會完成,但是,需要消耗服務器的資源。當表中的數據越多,這個消耗的資源也就越多。如索引是數據庫中實際存在的對象,所以,每個索引都會占用一定的物理空間。若索引多了,不但會占用大量的物理空間,而且,也會影響到整個數據庫的運行性能。

  可見,數據庫管理員若要采用索引來提高系統的性能,自身仍然需要付出不少的代價。數據庫管理員現在要考慮的就是如何在這兩個之間取得一個均衡。或者說,找到一個回報與投入的臨界點。

  鐵律二:對于查詢中很少涉及的列或者重復值比較多的列,不要建立索引

  在查詢的時候,如果我們不按某個字段去查詢,則在這個字段上建立索引也是浪費。如現在有一張員工信息表,我們可能按員工編號、員工姓名、或者出身地去查詢員工信息。但是,我們往往不會按照身份證號碼去查詢。雖然這個身份證號碼是唯一的。此時,即使在這個字段上建立索引,也不能夠提高查詢的速度。相反,增加了系統維護時間和占用了系統空間。這簡直就是搬起石頭砸自己的腳呀。

  另外,如上面的員工信息表,有些字段重復值比較多。如性別字段主要就是“男”、“女”;職位字段中也是有限的幾個內容。此時,在這些字段上添加索引也不會顯著的增加查詢速度,減少用戶響應時間。相反,因為需要占用空間,反而會降低數據庫的整體性能。

  數據庫索引管理中的第二條鐵律就是,對于查詢中很少涉及的列或者重復值比較多的列,不要建立索引。

  鐵律三:對于按范圍查詢的列,最好建立索引

  在信息化管理系統中,很多時候需要按范圍來查詢某些交易記錄。如在ERP系統中,經常需要查詢當月的銷售訂單與銷售出貨情況,這就需要按日期范圍來查詢交易記錄。如有時候發現庫存不對時,也需要某段時期的庫存進出情況,如5月1日到12月3日的庫存交易情況等等。此時,也是根據日期來進行查詢。

  對于這些需要在指定范圍內快速或者頻繁查詢的數據列,需要為其建立索引。因為索引已經排序,其保存的時候指定的范圍是連續的,查詢可以利用索引的排序,加快查詢時間,減少用戶等待時間。

  不過,若雖然可能需要按范圍來進行查詢,但是,若這個范圍查詢條件利用的不多的情況下,最好不好采用索引。如在員工信息表中,可能需要查詢 2008年3月份以前入職的員工明細,要為他們增加福利。但是,由于表中記錄不多,而且,也很少進行類似的查詢。若維這個字段建立索引,雖然無傷大雅,但是很明顯,索引所獲得的收益要低于其成本支出。對數據庫管理員來說,是得不償失的。

  再者,若采用范圍查詢的話,最好能利用TOP關鍵字來限制一次查詢的結果。如第一次按順序只顯示前面的500條記錄等等。把TOP關鍵字跟范圍一起使用,可以大大的提高查詢的效率。

  鐵律四:表中若有主鍵或者外鍵,一定要為其建立索引

  定義有主鍵的索引列,一定要為其建立索引。因為主鍵可以加速定位到表中的某一行。結合索引的作用,可以使得查詢的速度加倍。如在員工信息表中,我們往往把員工編號設置為主鍵。因為這不但可以提高查詢的速度,而且因為主鍵要求記錄的唯一,還可以保證員工編號的唯一性。此時,若再把這個員工編號字段設置為索引,則通過員工編號來查詢員工信息,其效率要比沒有建立索引高出許多。

  另外,若要使得某個字段的值唯一,可以通過兩種索引方式實現。一種就是上面所講的主鍵索引。還有一種就是唯一索引,利用UNIQUE關鍵字指定字段內容的唯一性。這兩種方式都會在表中的指定列上自動創建唯一索引。這兩種方式的結果沒有明顯的區別。查詢優化器不會區分到底是哪種方式建立的唯一性索引,而且他們進行數據查詢的方式也是相同的。

  若某張表中的數據列定義有外鍵,則最好也要為這個字段建立索引。因為外鍵的主要作用就在于表與表之間的連接查詢。若在外鍵上建立索引,可以加速表與表之間的連接查詢。如在員工基本信息表中,有一個字段為員工職位。由于員工職位經常在變化,在這里,存儲的其實只是一個員工職位的代碼。在另外一張職位信息表中詳細記錄著該職位的相關信息。此時,這個員工職位字段就是外鍵。若在這個字段上建立外鍵,則可以顯著提高兩張表的連接速度。而且,記錄越多,其效果越加明顯。

  所以,當表中有外鍵或者主鍵的時候,就最好為其建立索引。通過索引,可以強化主鍵與外鍵的作用,提高數據庫的性能。

  鐵律五:對于一些特殊的數據類型,不要建立索引

  在表中,有些字段比較特殊。如文本字段(TXT)、圖像類型字段(IMAGE)等等。如果表中的字段屬于這些數據類型,則最好不要為其建立索引。因為這些字段有一些共同的特點。如長度不確定,要么很長,幾個字符;要么就是空字符串。如文本數據類型常在應用系統的數據庫表中用來做備注的數據類型。有時候備注很長,但有時候又沒有數據。若這種類型的字段上建立索引,那根本起不了作用。相反,還增加了系統的負擔。

  所以,,在一些比較特殊的數據類型上,建立索引要謹慎。在通常情況下,沒有必要為其建立索引。但是,也有特殊的情況。如有時候,在ERP系統中,有產品信息這個表,其中有個產品規格這個字段。有時候,其長度可能長達5000個字符。此時,只有文本型的數據類型可以容納這么大的數據量。而且,在查詢的時候,用戶又喜歡通過規格這個參數來查詢產品信息。此時,若不為這個字段建立索引的話,則查詢的速度會很慢。遇到這種情況時,數據庫管理員只有犧牲一點系統資源,為其建立索引。

  從這里也可以看出,雖然以上幾條說的時鐵律,但是,是否需要遵循,還是需要數據庫管理員根據企業的實際情況,做出合理的選擇。

  鐵律六:索引可以跟Where語句的集合融為一體

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

SQLServer索引管理的六大鐵律

SQLServer索引管理的六大鐵律:索引是以表列為基礎的數據庫對象。索引中保存著表中排序的索引列,并且紀錄了索引列在數據庫表中的物理存儲位置,實現了表中數據的邏輯排序。通過索引,可以加快數據的查詢速度和減少系統的響應時間;可以使表和表之間的連接速度加快。 但是,不是在任何時候
推薦度:
標簽: 管理 server 六大
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 成人免费视频77777 | 中文字幕第一页亚洲 | 国产高清不卡码一区二区三区 | 亚欧美色 | 亚洲欧美一区二区三区国产精品 | 国产一级视频 | 免费国产线观看免费观看 | 欧美日韩色 | 国产成人91一区二区三区 | 国产成人不卡亚洲精品91 | 国内精品久久久久激情影院 | 日韩 亚洲 欧美 中文 高清 | 欧美日韩啪啪 | 欧美人与动性xxxxx杂性 | 亚洲 另类 在线 欧美 制服 | 日韩色网 | 国产国产成人精品久久 | 久久亚洲精选 | 欧美va免费精品高清在线 | 久久精品亚洲一区二区 | 精品欧美一区二区在线观看 | 精品成人一区二区三区免费视频 | 欧美第一页在线观看 | 国产成人精品综合久久久 | 伊人久久中文字幕久久cm | 麻豆亚洲一区 | 日本a黄| 国产成人a一区二区 | 国产精品一二区 | 国产v片在线观看 | 国产在线精品一区二区 | 欧美 韩国 精品 另类 综合 | 91在线一区二区 | 国产成人精品.一二区 | 亚洲国产精品久久久久666 | 伊人中文字幕 | 亚洲欧美日韩另类精品一区二区三区 | 欧美精品亚洲 | 亚洲v视频| 可以看的毛片 | 亚洲第一区视频 |