天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

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

  一、準備

  在SQL Server 2005版本之后就有了表分區的概念與應用,在分區操作里面有一個叫做合并分區的功能,也被稱為刪除分區。分區所處的文件組和文件是不會被刪除的,只會對數據進行轉移合并。合并分區時需要注意所帶來的IO問題。

  合并分區常見情景:發現某個分區的數據很少,為了方便管理可以考慮合并分區。需要進行統計、四則運算的時候也可以考慮合并分區,這種情形下并沒有對比合并與分區之間的性能,如果某位童鞋有興趣和環境的話可以提供這方面的數據。

  查看分區方案的方式:在SQL Server Management Studio中,選擇數據庫-->存儲-->分區方案,右擊分區方案名,在彈出的菜單中選擇“編寫分區方案腳本為”-->CREATE-->新查詢編輯器窗口。

  二、測試

  (一)  環境:使用RANGE RIGHT作為分區函數的關鍵字,它表示這個值開始是屬于右邊界的。

  RANGE RIGHT FOR VALUES ('20100101','20110101','20120101','20130101') 

文件組

分區

取值范圍

[FG1]

1

[過去某年, 2010/01/01)

[FG2]

2

[2010/01/01, 2011/01/01)

[FG3]

3

[2011/01/01, 2012/01/01)

[FG4]

4

[2012/01/01, 2013/01/01)

[PRIMARY]

5

[2013/01/01, 未來某年)

  1. 測試一:刪除分區函數的第一個值

  當使用MERGE RANGE ('20100101'),合并后分區就相當于:

  RANGE RIGHT FOR VALUES ('20110101','20120101','20130101') 

文件組

分區

取值范圍

[FG?]

1

[過去某年, 2011/01/01)

[FG3]

2

[2011/01/01, 2012/01/01)

[FG4]

3

[2012/01/01, 2013/01/01)

[PRIMARY]

4

[2013/01/01, 未來某年)

  問題:是[FG1]合并到[FG2],還是[FG2]合并到[FG1]呢?

  測試結果:[FG2]合并到[FG1]

  2. 測試二:刪除分區函數的第二個值

  當使用MERGE RANGE ('20110101'),合并后分區就相當于:

  RANGE RIGHT FOR VALUES ('20100101','20120101','20130101') 

文件組

分區

取值范圍

[FG1]

1

[過去某年, 2010/01/01)

[FG?]

2

[2010/01/01, 2012/01/01)

[FG4]

3

[2012/01/01, 2013/01/01)

[PRIMARY]

4

[2013/01/01, 未來某年)

  問題:是[FG2]合并到[FG3],還是[FG3]合并到[FG2]呢?

  測試結果:[FG3]合并到[FG2]

  3. 測試三:刪除分區函數的最后一個值

  當使用MERGE RANGE ('20130101'),合并后分區就相當于:

  RANGE RIGHT FOR VALUES ('20100101','20110101','20120101')

文件組

分區

取值范圍

[FG1]

1

[過去某年, 2010/01/01)

[FG2]

2

[2010/01/01, 2011/01/01)

[FG3]

3

[2011/01/01, 2012/01/01)

[?]

4

[2012/01/01, 未來某年)

  問題:是[FG4]合并到[PRIMARY],還是[PRIMARY]合并到[FG4]呢?

  測試結果:[PRIMARY]合并到[FG4]

  (二)  環境:使用RANGE LEFT作為分區函數的關鍵字,它表示這個值開始是屬于左邊界的。

  RANGE LEFT FOR VALUES ('20100101','20110101','20120101','20130101')

文件組

分區

取值范圍

[FG1]

1

(過去某年, 2010/01/01]

[FG2]

2

(2010/01/01, 2011/01/01]

[FG3]

3

(2011/01/01, 2012/01/01]

[FG4]

4

(2012/01/01, 2013/01/01]

[PRIMARY]

5

(2013/01/01, 未來某年]

  1. 測試四:刪除分區函數的第一個值

  當使用MERGE RANGE ('20100101'),合并后分區就相當于:

  RANGE LEFTFOR VALUES ('20110101','20120101','20130101') 

文件組

分區

取值范圍

[FG?]

1

(過去某年, 2011/01/01]

[FG3]

2

(2011/01/01, 2012/01/01]

[FG4]

3

(2012/01/01, 2013/01/01]

[PRIMARY]

4

(2013/01/01, 未來某年]

  問題:是[FG1]合并到[FG2],還是[FG2]合并到[FG1]呢?

  測試結果:[FG1]合并到[FG2]

  2. 測試五:刪除分區函數的第二個值

  當使用MERGE RANGE ('20110101'),合并后分區就相當于:

  RANGE LEFTFOR VALUES ('20100101','20120101','20130101') 

文件組

分區

取值范圍

[FG1]

1

(過去某年, 2010/01/01]

[FG?]

2

(2010/01/01, 2012/01/01]

[FG4]

3

(2012/01/01, 2013/01/01]

[PRIMARY]

4

(2013/01/01, 未來某年]

  問題:是[FG2]合并到[FG3],還是[FG3]合并到[FG2]呢?

  測試結果:[FG2]合并到[FG3]

  3. 測試六:刪除分區函數的最后一個值

  當使用MERGE RANGE ('20130101'),合并后分區就相當于:

  RANGE LEFTFOR VALUES ('20100101','20110101','20120101') 

文件組

分區

取值范圍

[FG1]

1

(過去某年, 2010/01/01]

[FG2]

2

(2010/01/01, 2011/01/01]

[FG3]

3

(2011/01/01, 2012/01/01]

[?]

4

(2012/01/01, 未來某年]

  問題:是[FG4]合并到[PRIMARY],還是[PRIMARY]合并到[FG4]呢?

  測試結果:[FG4]合并到[PRIMARY]

   三、結論

  下圖中形象的表述了邊界值(boundary_value)所處的分區,符號“()”表示不包含,“[]”表示包含,一個圓圈帶叉圖標表示需要刪除這個邊界值,當使用MERGE RANGE的時候,數據庫就需要刪除一個分區的數據,并把數據合并到另外一個分區中。你能從下圖看出結論嗎?

(圖1:分區函數為右邊界)

(圖2:分區函數為左邊界)

  結論:刪除的這個邊界值(boundary_value)屬于哪個分區,那么就會刪除這個分區,再向鄰近的分區合并。鄰近的意思是以這個邊界值為臨界點的兩個分區。圖1與圖2就很好的解釋了這個結論。

  四、參考文獻

  實戰分區表:SQL Server 2k5&2k8系列(三)

  SQLServer 2005中的分區表(四):刪除(合并)一個分區

  合并分區 

it知識庫SQL Server 合并(刪除)分區解惑,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲欧美中文字幕高清在线 | 日韩一区二区天海翼 | 久久免费特黄毛片 | 亚洲综合网国产精品一区 | 2018国产天天弄谢 | 草莓视频cm.888tw | caoporn 超碰在线视频 | 亚洲天堂一区二区三区 | 良家人妻无码专区九色颜射 | 少妇人妻偷人精品视蜜桃 | 99视频在线免费看 | 亚州精品视频 | 日本欧美高清一区二区视频 | 末成年美女黄网站色大片连接 | 精品视频一区二区三三区四区 | 99日韩精品| 亚洲AV一宅男色影视 | 99九九精品国产高清自在线 | 天天躁人人躁人人躁狂躁 | 日韩人妻精品久久日 | 亚洲免费三区 | 亚洲乱码一区二区三区香蕉 | 色爱区综合激情五月综合激情 | 国产福利视频一区二区 | 无码国产精品高潮久久9 | 国产亚洲制服免视频 | 在线免费观看亚洲视频 | 大陆老太交xxxxxhd在线 | 伦理片午夜在线视频 | 亚欧洲乱码视频一二三区 | 高h原耽肉汁动漫视频 | 国产精品99亚发布 | 欧美高清一区二区三 | 丰满人妻无码AV系列 | 老师的丝袜脚 | free18sex性自拍裸舞 | 久久综合网久久综合 | 久久精品国产96精品亚洲 | 久久亚洲黄色 | 亚洲天堂一区二区三区 | 龙泽罗拉av |