一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

SQL Server 表分區(qū)注意事項(xiàng)

 icecity1306 2014-10-30

一、表分區(qū)文章索引

SQL Server 合并(刪除)分區(qū)解惑

SQL Server 2005 分區(qū)模板與實(shí)例

SQL Server 動(dòng)態(tài)生成分區(qū)腳本

SQL Server 2005 自動(dòng)化刪除表分區(qū)設(shè)計(jì)方案

 

二、目的

這段時(shí)間,在SQL Server的生產(chǎn)環(huán)境中嘗試了不同方式的表分區(qū),積累了一些這方面的經(jīng)驗(yàn),這里就表分區(qū)的一些注意事項(xiàng)做些記錄。

 

三、注意事項(xiàng)

1.      表分區(qū)的邊界值問(wèn)題,在使用Left和Right的時(shí)候需要注意,特別是在時(shí)間分割上需要特別注意,通常情況下,以00:00:00.000是最可靠的,這種分割就需要使用到Right,如果是Left的話就需要設(shè)置為23:59:59.997;更多信息請(qǐng)參考:SQL Server 合并(刪除)分區(qū)解惑

2.      對(duì)于分區(qū)值的第一個(gè)值,符合這個(gè)值之前的數(shù)值都會(huì)給分配到第一個(gè)分區(qū)中,而使用Left和Right的區(qū)別就是這個(gè)分區(qū)值會(huì)被分配到第一個(gè)分區(qū)還是第二個(gè)分區(qū)而已;

3.      SQL Server 2005 中的分區(qū)表和索引也提到在時(shí)間分區(qū)上的例子,RANGE RIGHT FOR VALUES ('20001001 00:00:00.000', '20010101 00:00:00.000', '20010401 00:00:00.000', '20010701 00:00:00.000'),更加簡(jiǎn)便的形式就是RANGE RIGHT FOR VALUES ('20001001', '20010101', '20010401', '20010701'),完全撇開了時(shí)分秒的問(wèn)題了。

4.      通常情況下,我們會(huì)以一個(gè)表Id(int),并且是自增作為分區(qū)字段,這樣分區(qū)的好處就是很容易區(qū)分歷史數(shù)據(jù)了(假如你的歷史數(shù)據(jù)是以插入到表的時(shí)間來(lái)區(qū)別的話),而且對(duì)分區(qū)的操作隔離也是最明顯的。這里有一個(gè)模板就是針對(duì)Id為例子的范文:SQL Server 2005 分區(qū)模板與實(shí)例

5.      當(dāng)以Id作為分區(qū)函數(shù)值并不能滿足你的需求的時(shí)候,你可能需要考慮不一樣的東西了,因?yàn)樵趧?chuàng)建Id為主鍵的時(shí)候,默認(rèn)的情況下就是為這個(gè)主鍵創(chuàng)建為聚集索引的,所以以Id為分區(qū)字段的話,Id自增,就會(huì)順序的被放到遞增的分區(qū)文件中。這里假如你想以分類標(biāo)識(shí)ClassId作為分區(qū)的話,那么你有幾種選擇,一個(gè)就是把Id+ClassId作為非聚集的主鍵(PRIMARY KEY NONCLUSTERED),創(chuàng)建ClassId為聚集索引(CLUSTERED),這樣就可以以ClassId作為分區(qū)字段了;另外一個(gè)選擇就是:Id+ClassId作為聚集的主鍵(PRIMARY KEY CLUSTERED),這樣就不用另外創(chuàng)建一個(gè)索引了??梢詤⒖嘉墨I(xiàn):已分區(qū)索引的特殊指導(dǎo)原則

6.      對(duì)聚集索引進(jìn)行分區(qū)時(shí),聚集鍵必須包含分區(qū)依據(jù)列。對(duì)非唯一的聚集索引進(jìn)行分區(qū)時(shí),如果未在聚集鍵中明確指定分區(qū)依據(jù)列,默認(rèn)情況下 SQL Server 將在聚集索引鍵列表中添加分區(qū)依據(jù)列。如果聚集索引是唯一的,則必須明確指定聚集索引鍵包含分區(qū)依據(jù)列。對(duì)唯一的非聚集索引進(jìn)行分區(qū)時(shí),索引鍵必須包含分區(qū)依據(jù)列。對(duì)非唯一的非聚集索引進(jìn)行分區(qū)時(shí),默認(rèn)情況下 SQL Server 將分區(qū)依據(jù)列添加為索引的非鍵(包含性)列,以確保索引與基表對(duì)齊。如果索引中已經(jīng)存在分區(qū)依據(jù)列,SQL Server 將不會(huì)向索引中添加分區(qū)依據(jù)列。可以參考文獻(xiàn):已分區(qū)索引的特殊指導(dǎo)原則(要理解上面的描述,需要一點(diǎn)功底)

7.      如果你需要在你的分區(qū)上創(chuàng)建全文索引,那么你創(chuàng)建分區(qū)的時(shí)候就需要注意了,因?yàn)槿乃饕枰ㄒ凰饕闹С?,而且這個(gè)唯一索引不能是復(fù)合索引,只能是單個(gè)字段的唯一索引。這個(gè)索引的要求:“unique, single-column, non-nullable index”。

8.     如果我們的分區(qū)值是隨著時(shí)間的變化而增加的話,那么我們?cè)谠O(shè)置表分區(qū)之后,系統(tǒng)跑了一段時(shí)間之后,那么最后一個(gè)分區(qū)占用的空間就會(huì)越來(lái)越大,除非你在創(chuàng)建分區(qū)的時(shí)候已經(jīng)確認(rèn)了這些分區(qū)值不會(huì)再增加了,在MSDN的文檔中:SQL Server 2005 中的分區(qū)表和索引,里面提到的月份表分區(qū)、地區(qū)分區(qū)這些固定分區(qū)值,這并沒(méi)有很好的表達(dá)在生產(chǎn)環(huán)境中所面臨的分區(qū)值在不斷增長(zhǎng)的問(wèn)題。所以這里就針對(duì)這個(gè)問(wèn)題做了一個(gè)Job,這個(gè)Job可以動(dòng)態(tài)、自動(dòng)化的完成刪除分區(qū)(交換分區(qū)),修改分區(qū)函數(shù)、分區(qū)方案等操作。進(jìn)入閱讀:SQL Server 2005 自動(dòng)化刪除表分區(qū)設(shè)計(jì)方案

9.      在MSDN自動(dòng)化分區(qū)的前驅(qū):SQL2005PartitioningScripts.exe,里面有些是值得參考的,但是開發(fā)一個(gè)適合自己業(yè)務(wù)需求的自動(dòng)化分區(qū)也是必要的,有興趣的可以閱讀:SQL Server 動(dòng)態(tài)生成分區(qū)腳本,這里主要解決了創(chuàng)建表分區(qū)過(guò)程中反復(fù)修改文件組、文件的名稱設(shè)置的問(wèn)題。

 

四、參考文獻(xiàn)

SQL Server 2005 中的分區(qū)表和索引

已分區(qū)索引的特殊指導(dǎo)原則

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    搡老熟女老女人一区二区| 久久亚洲国产视频三级黄| 欧美黄色黑人一区二区| 欧美人妻少妇精品久久性色 | 亚洲色图欧美另类人妻| 亚洲国产四季欧美一区| 日本熟女中文字幕一区| 国产又爽又猛又粗又色对黄| 一级片黄色一区二区三区| 国产精品一区二区成人在线| 偷自拍亚洲欧美一区二页| 免费午夜福利不卡片在线 视频 | 99国产一区在线播放| 国产激情一区二区三区不卡| 精品香蕉一区二区在线| 久久热在线免费视频精品| 欧美日韩综合在线第一页| 亚洲欧美天堂精品在线| 久久少妇诱惑免费视频| 国产精品亚洲综合色区韩国| 99久久人妻中文字幕| 91老熟妇嗷嗷叫太91| 国产一区二区不卡在线播放| 亚洲黄色在线观看免费高清| 欧美二区视频在线观看| 日本高清一区免费不卡| 亚洲国产另类久久精品| 狠狠干狠狠操亚洲综合| 欧美日韩国产精品第五页| 婷婷基地五月激情五月| 亚洲精品小视频在线观看| 91精品国产av一区二区| 亚洲国产成人爱av在线播放下载 | 夫妻激情视频一区二区三区| 国内午夜精品视频在线观看| 午夜色午夜视频之日本| 91亚洲国产—区=区a| 成人午夜爽爽爽免费视频| 亚洲中文在线观看小视频| 日韩一区二区三区在线日| 99久久精品午夜一区二|