??????
分區表:
?????? 分區表的目的是將同一張表中的數據分布在多個物理位置,提高訪問的性能。分區的物理位置為多個文件組。
可使用分區表來存儲銷售訂單,然后根據訂單日期將訂單記錄分布到不同文件組中。
??????? 此技術使用戶可以控制不同種類訂單的物理存儲,同時仍在一個表中對這些訂單進行維護。
利用分區表改善可管理性的好處:
? ??? ???????? 能夠實現單獨的備份策略。不同的數據集可能有不同的備份要求;
? ??? ???????? 可控制存儲介質。對表進行分區可使你根據數據的存取要求為數據選擇相應的存儲;
? ??? ???????? 實現索引管理。除了分區表外,還可分區索引。
??????
分區索引:
??? ????????? 與分區表類似,根據值范圍將索引進行水平分區。
?????????????? 對索引進行分區與表進行分區,都是為了提高性能。
??????
分區視圖:
? ? 橫向聯接跨一個或多個服務器的一組成員表中的已分區數據 , 使這些數據表好像來自一個表。
? 如果分區視圖不可更新,則它只能作為原始表的只讀副本。可更新的分區視圖可提供原始表的所有功能。當視圖是一組 SELECT 語句,這些語句各自的結果集使用 UNION ALL 語句合并在一起時,該視圖被視為可更新的分區視圖。
分區視圖的類型:
????? ?? SQL SERVER 2005 區分本地分區視圖和分布式分區視圖。在本地分區視圖中,所有參與表和該視圖都位于同一個 SQL SERVER 實例中。對數據進行本地分區的首選方法是使用分區表。
??????? 在分布式分區視圖中,至少有一個參與表位于其他區(遠程)服務器上。
? 使用分區視圖提升性能:
??????? 如果分區視圖中的表位于不同的服務器上,或者位于一臺多處理器的計算機上,則可對查詢中所涉及的每個表進行并行掃描,從而提高查詢性能。
? 注意:
??????? 不能對分區視圖創建索引。
????? ? 哪三種操作可以用來管理分區?每個操作的目的是什么?
答案:
??????? SPLIT 為一個分區函數引入一個新的邊界點;
??????? MERGE 從一個分區函數中刪除一個邊界點;
??????? SWITCH 在兩個表之間交換分區。
??????
操作步驟
:
? ? ? (1) 分區函數是數據庫中的一個獨立對象。定義數據分區的邊界點。創建分區函數是對一個表、索引或索引視圖進行分區的第一步。
分區函數指定用于分區數據的鍵的數據類型以及每個分區的邊界值。分區函數定義的分區數總比該函數定義的邊界值大 1 。
舉例:定義 datatime 分區鍵以及邊界值“ 01/01/2005” 、“ 01/01/2006” 和“ 01/01/2007” 的分區函數 4 個分區:
創建分區函數:
?? CREATE PARTITION FUNCTION pf_OrderDate (datetime)
AS RANGE RIGHT
FOR VALUES ('01/01/2005', '01/01/2006', 01/01/2007')
?
? (2) 對一個表、索引或索引視圖進行分區的第二步是創建一個分區方案。
分區方案將在分區函數中定義的分區映射到將物理存儲這些分區的文件組。
?????? 可將所有的分區映射到同一個文件組,也可將部分或全部分區映射到不同的文件組,根據具體需要定。
?????? 創建分區方案時,可以設置一個可選項,用于指定當分區函數中添加了一個分區時可使用的文件組,稱為 “ 下一個 ” 文件組。
CREATE PARTITION SCHEME ps_OrderDate
AS PARTITION pf_OrderDate
TO (fg1, fg2, fg3, fg4, fg5)
?
CREATE PARTITION SCHEME ps_OrderDate
AS PARTITION pf_OrderDate
ALL TO ([PRIMARY])
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
