新聞中心
下面的文章主要介紹的是在SQL Server 2000 數(shù)據(jù)倉(cāng)庫(kù)中使用分區(qū)之分區(qū)的優(yōu)點(diǎn),SQL Server 2000 數(shù)據(jù)倉(cāng)庫(kù)中使用分區(qū)在實(shí)際操作中是經(jīng)常出現(xiàn)的,如果你對(duì)其相關(guān)知識(shí)有興趣了解的話(huà),你就可以瀏覽以下的文章了。

站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到五指山網(wǎng)站設(shè)計(jì)與五指山網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:成都網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)頁(yè)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋五指山地區(qū)。
分區(qū)視圖主要是聯(lián)接來(lái)自一組成員的水平分區(qū)的相關(guān)數(shù)據(jù),使數(shù)據(jù)看起來(lái)象來(lái)自同一張表。SQL Server 2000 區(qū)分本地分區(qū)視圖和分布式分區(qū)視圖。
在本地分區(qū)視圖中,所有相關(guān)表和視圖駐留在 SQL Server 的同一實(shí)例上。在分布式分區(qū)視圖中,相關(guān)表中至少有一張表駐留在其他某個(gè)(遠(yuǎn)程)服務(wù)器上。建議您不要將分布式分區(qū)視圖用于數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用程序。
矢量SQL Server 2000 數(shù)據(jù)倉(cāng)庫(kù)圍繞事實(shí)(標(biāo)量)和矢量構(gòu)建,從物理上通常表示為星形架構(gòu)和雪花形架構(gòu),極少有同時(shí)包含事實(shí)和矢量的完全非正交化的平面表。由于矢量架構(gòu)是最常見(jiàn)的關(guān)系型數(shù)據(jù)倉(cāng)庫(kù)結(jié)構(gòu),本文集中討論這類(lèi)架構(gòu)的分區(qū)。下面的建議也適用于其他通用數(shù)據(jù)倉(cāng)庫(kù)架構(gòu)。
分區(qū)的優(yōu)點(diǎn) :
數(shù)據(jù)修剪:
許多數(shù)據(jù)倉(cāng)庫(kù)管理員會(huì)定期將陳舊的數(shù)據(jù)歸檔。例如,一個(gè)單擊流SQL Server 2000 數(shù)據(jù)倉(cāng)庫(kù)可能只將詳細(xì)數(shù)據(jù)聯(lián)機(jī)保留三至四個(gè)月。其他常見(jiàn)的規(guī)則可能是聯(lián)機(jī)保留 13 個(gè)月、37 個(gè)月或 10 年,當(dāng)舊數(shù)據(jù)不在活動(dòng)窗口中時(shí)就歸檔并從數(shù)據(jù)庫(kù)中刪除。這種滾動(dòng)窗口結(jié)構(gòu)是大數(shù)據(jù)倉(cāng)庫(kù)通常采取的做法。
在沒(méi)有分區(qū)表的情況下,從數(shù)據(jù)庫(kù)中刪除舊數(shù)據(jù)的進(jìn)程需要一個(gè)很大的 DELETE 語(yǔ)句,例如:
DELETE FROM fact_table WHERE date_key < 19990101
執(zhí)行該語(yǔ)句開(kāi)銷(xiāo)會(huì)非常大,可能比同一張表的加載進(jìn)程需要更多的時(shí)間。相反,對(duì)于分區(qū)表,管理員重新定義 UNION ALL 視圖以排除最舊的表,然后將該表從數(shù)據(jù)庫(kù)中刪除(假設(shè)已確保備份該表),這個(gè)過(guò)程幾乎可以在瞬間完成。
后面我們會(huì)討論到,維護(hù)分區(qū)表的費(fèi)用也很高。如果數(shù)據(jù)修剪是采用分區(qū)的唯一原因,設(shè)計(jì)者應(yīng)考慮以數(shù)據(jù)分解的方式從未分區(qū)的表中刪除舊數(shù)據(jù)。在低優(yōu)先級(jí)進(jìn)程上連續(xù)運(yùn)行一個(gè)每次刪除 1000 行(用“set rowcount 1000”命令)的腳本,直至刪除所有希望刪除的數(shù)據(jù)。該技術(shù)可在大系統(tǒng)上有效運(yùn)用,比創(chuàng)建必要的分區(qū)管理系統(tǒng)更為直接。根據(jù)加載量和系統(tǒng)使用狀況,該技術(shù)適合于某些系統(tǒng),并應(yīng)該考慮在系統(tǒng)上進(jìn)行基準(zhǔn)測(cè)試。
加載速度:
加載數(shù)據(jù)最快的方法是將數(shù)據(jù)加載至空表或沒(méi)有索引的表。通過(guò)加載至較小的分區(qū)表,漸變加載進(jìn)程的效率將大大提高。
可維護(hù)性:
一旦已建成支持分區(qū)的SQL Server 2000 數(shù)據(jù)倉(cāng)庫(kù)分階段應(yīng)用程序,整個(gè)系統(tǒng)將變得容易維護(hù)。維護(hù)活動(dòng)(包括加載數(shù)據(jù)、備份和還原表)可以并行地執(zhí)行,這樣可以極大地改善性能。漸變填充下行數(shù)據(jù)流多維數(shù)據(jù)集的進(jìn)程可以被加速和簡(jiǎn)化。
查詢(xún)速度:
查詢(xún)速度不應(yīng)該作為對(duì)數(shù)據(jù)倉(cāng)庫(kù)關(guān)系型數(shù)據(jù)庫(kù)進(jìn)行分區(qū)的理由。對(duì)于分區(qū)和未分區(qū)的事實(shí)表,查詢(xún)性能都差不多。在正確設(shè)計(jì)的分區(qū)數(shù)據(jù)庫(kù)中,關(guān)系引擎僅在查詢(xún)計(jì)劃中包括解析查詢(xún)所需的相關(guān)分區(qū)。例如,如果數(shù)據(jù)庫(kù)按月分區(qū),查詢(xún)條件為 2000 年 1 月,則查詢(xún)計(jì)劃僅包括 2000 年 1 月的分區(qū)。結(jié)果查詢(xún)將對(duì)分區(qū)表正確執(zhí)行,與在分區(qū)鍵上帶有簇索引的已索引合并表上執(zhí)行的大體相同。
分享文章:SQLServer2000數(shù)據(jù)倉(cāng)庫(kù)中使用分區(qū)之分區(qū)的優(yōu)點(diǎn)
本文來(lái)源:http://m.fisionsoft.com.cn/article/djddcgo.html


咨詢(xún)
建站咨詢(xún)
