亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        利用SQL?。樱澹颍觯澹颉。玻埃埃邓饕晥D提高數(shù)據(jù)庫(kù)系統(tǒng)性能

        2009-07-31 06:59:04何育朋朱思銘
        關(guān)鍵詞:子句謂詞子集

        何育朋 朱思銘

        摘要:本文闡述如何使用SQL Server 2005 Enterprise Edition 的索引視圖改善數(shù)據(jù)庫(kù)系統(tǒng)的整體性能。

        關(guān)鍵詞:SQL Server 2005;database;DBMS

        1索引視圖的作用

        Microsoft SQL Server 視圖的主要作用是:

        1.1提供一種安全機(jī)制,將用戶(hù)限制到一個(gè)或多個(gè)基表的某個(gè)數(shù)據(jù)子集中。

        1.2提供一種機(jī)制,允許開(kāi)發(fā)人員自定義用戶(hù)通過(guò)邏輯方式查看存儲(chǔ)在基表中的數(shù)據(jù)的方式。

        在SQL Server 2005中,具有唯一的聚集索引的視圖稱(chēng)為索引視圖。

        2利用索引視圖提高系統(tǒng)性能的方法

        2.1可在視圖上使用非聚集索引。

        視圖上的非聚集索引可提供更好的查詢(xún)性能。與表上的非聚集索引類(lèi)似,視圖上的非聚集索引可提供更多選項(xiàng),供查詢(xún)優(yōu)化器在編譯過(guò)程中選擇。例如,如果查詢(xún)包含聚集索引所未涉及的列,那么優(yōu)化器可在計(jì)劃中選擇一個(gè)或多個(gè)輔助索引,避免對(duì)索引視圖或基表進(jìn)行費(fèi)時(shí)的完全掃描。

        對(duì)架構(gòu)添加索引會(huì)增加數(shù)據(jù)庫(kù)的開(kāi)銷(xiāo),因?yàn)樗饕枰掷m(xù)的維護(hù)。在索引數(shù)量和維護(hù)開(kāi)銷(xiāo)間尋求適當(dāng)?shù)钠胶恻c(diǎn)時(shí),應(yīng)謹(jǐn)慎權(quán)衡。

        2.2可在查詢(xún)優(yōu)化器中使用索引視圖。

        SQL Server 查詢(xún)優(yōu)化器自動(dòng)決定何時(shí)對(duì)給定的查詢(xún)執(zhí)行使用索引視圖。不必在查詢(xún)中直接引用視圖以供優(yōu)化器在查詢(xún)執(zhí)行計(jì)劃中使用。所以,現(xiàn)有的應(yīng)用程序可運(yùn)用索引視圖,而不用更改應(yīng)用程序本身。

        查詢(xún)優(yōu)化器通過(guò)考慮幾個(gè)條件來(lái)決定索引視圖能否涵蓋整個(gè)或部分查詢(xún)。這些條件對(duì)應(yīng)查詢(xún)中的一個(gè) FROM 子句并由下列這幾個(gè)部分組成:

        2.2.1查詢(xún) FROM 子句中的表必須是索引視圖 FROM 子句中的表的超集。

        2.2.2查詢(xún)中的聯(lián)接條件必須是視圖中的聯(lián)接條件的超集。

        2.2.3查詢(xún)中的聚合列必須可從視圖中的聚合列的子集派生。

        2.2.4查詢(xún)選擇列表中的所有表達(dá)式必須可從視圖選擇列表或未包含在視圖定義中的表派生。

        2.2.5如果與其他謂詞所匹配的行的超集相匹配,那么該謂詞將歸入另一個(gè)謂詞。例如,“T.a=10”歸入“T.a=10 and T.b=20”。任何謂詞都可歸入其自身。視圖中限制表值的那部分謂詞必須歸入查詢(xún)中限制相同表的那部分謂詞。此外,必須以 SQL Server 可驗(yàn)證的方式實(shí)現(xiàn)這一點(diǎn)。

        2.2.6屬于視圖定義中的表的查詢(xún)搜索條件謂詞的所有列必須出現(xiàn)在下列視圖定義的一項(xiàng)或多項(xiàng)中:

        (1)一個(gè) GROUP BY 列表。

        (2)視圖選擇列表(如不存在 GROUP BY)。

        (3)視圖定義中相同或等價(jià)的謂詞。

        情況(1)和(2)允許 SQL Server 對(duì)視圖的列應(yīng)用查詢(xún)謂詞,以便進(jìn)一步限制視圖的列。情況 (3) 比較特殊,它不需要對(duì)列進(jìn)行篩選,因此該列不必出現(xiàn)在視圖中。如果查詢(xún)不止包含一個(gè) FROM 子句(子查詢(xún)、派生表、UNION),優(yōu)化器可能選擇幾個(gè)索引視圖來(lái)處理查詢(xún),并將它們應(yīng)用到不同 FROM 子句。

        2.3可使用 NOEXPAND 視圖提示。

        當(dāng) SQL Server 處理按名稱(chēng)引用視圖的查詢(xún)時(shí),視圖的定義只有在僅引用基表時(shí)才會(huì)被正常擴(kuò)展。這個(gè)過(guò)程稱(chēng)為視圖擴(kuò)展。其屬于一種宏擴(kuò)展形式。

        NOEXPAND 視圖提示可強(qiáng)制查詢(xún)優(yōu)化器將視圖視為帶有聚集索引的普通表。其可防止視圖擴(kuò)展。只有在 FROM 子句中直接引用索引視圖,才會(huì)應(yīng)用 NOEXPAND 提示。例如:

        SELECT Column1, Column2, ...FROM Table1, View1 WITH (NOEXPAND) WHERE ...

        2.4可使用 EXPAND VIEWS 查詢(xún)提示。

        處理按名稱(chēng)引用視圖的查詢(xún)時(shí),除非對(duì)視圖引用添加 NOEXPAND 提示,否則 SQL Server 總會(huì)擴(kuò)展視圖。該提示會(huì)嘗試匹配索引視圖和擴(kuò)展查詢(xún),除非在查詢(xún)末尾的一個(gè) OPTION 子句中指定 EXPAND VIEWS 查詢(xún)提示。例如,假設(shè)數(shù)據(jù)庫(kù)中有一個(gè)索引視圖 View1,以下,根據(jù)其邏輯定義(其 CREATE VIEW 語(yǔ)句)對(duì) View1 進(jìn)行了擴(kuò)展,然后 EXPAND VIEWS 選項(xiàng)會(huì)阻止在計(jì)劃中使用 View1 的索引視圖來(lái)解析該查詢(xún)。使用語(yǔ)句如下:

        SELECT Column1, Column2, ... FROM Table1, View1 WHERE ...

        OPTION (EXPAND VIEWS)

        如要確保讓 SQL Server 通過(guò)從查詢(xún)所引用的基表直接訪問(wèn)數(shù)據(jù)來(lái)處理該查詢(xún),而不必訪問(wèn)索引視圖,那么可使用 EXPAND VIEWS。在某些情況下,EXPAND 視圖有助于消除因使用索引視圖而導(dǎo)致的鎖爭(zhēng)用。在測(cè)試應(yīng)用程序時(shí),NOEXPAND 和 EXPAND VIEWS 都可幫助用戶(hù)在使用和不使用索引視圖的情況下進(jìn)行性能評(píng)估。

        對(duì)數(shù)據(jù)庫(kù)系統(tǒng)確定一組適當(dāng)?shù)乃饕赡芎軓?fù)雜。如果在設(shè)計(jì)一般索引時(shí)需要考慮眾多可能性,那么對(duì)架構(gòu)添加索引視圖會(huì)大幅提高設(shè)計(jì)和潛在結(jié)果的復(fù)雜性。例如,索引視圖可用于:

        2.4.1查詢(xún)中引用的表的任何子集。

        2.4.2該表子集的查詢(xún)中的條件的任何子集。

        2.4.3組合的列。

        2.4.4聚合函數(shù)(比如:SUM)。

        2.5可應(yīng)用DTA優(yōu)化物理數(shù)據(jù)庫(kù)的設(shè)計(jì)。

        數(shù)據(jù)庫(kù)優(yōu)化顧問(wèn) (DTA) 是 SQL Server 2005 的一項(xiàng)功能,可有效優(yōu)化物理數(shù)據(jù)庫(kù)設(shè)計(jì)。使用 DTA 可讓管理員有一個(gè)更清晰的思路,可以更準(zhǔn)確地、有針對(duì)性地組合使用確定索引、索引視圖和分區(qū)策略,從而簡(jiǎn)化了物理數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程。

        3結(jié)束語(yǔ)

        下圖說(shuō)明了使用以上方法通常所能取得的性能改進(jìn)程度:

        實(shí)踐證明,靈活使用上述方法,能提高數(shù)據(jù)庫(kù)整體性能。

        參考文獻(xiàn):

        [1]Microsoft SQL Server 2005 Enterprise Edition English version helper document.

        [2] ROBIN DEWSON.《SQL SERVER 2005基礎(chǔ)教程》[M].北京:人民郵電出版社,2006.

        [3] SOLID QUALITY LEARNING[美].SQL SERVER 2005從入門(mén)到精通(應(yīng)用技術(shù)基礎(chǔ))[M],北京:清華大學(xué)出版社,2006.

        猜你喜歡
        子句謂詞子集
        由一道有關(guān)集合的子集個(gè)數(shù)題引發(fā)的思考
        命題邏輯中一類(lèi)擴(kuò)展子句消去方法
        拓?fù)淇臻g中緊致子集的性質(zhì)研究
        被遮蔽的邏輯謂詞
        ——論胡好對(duì)邏輯謂詞的誤讀
        命題邏輯可滿(mǎn)足性問(wèn)題求解器的新型預(yù)處理子句消去方法
        黨項(xiàng)語(yǔ)謂詞前綴的分裂式
        西夏研究(2020年2期)2020-06-01 05:19:12
        關(guān)于奇數(shù)階二元子集的分離序列
        西夏語(yǔ)的副詞子句
        西夏學(xué)(2018年2期)2018-05-15 11:24:42
        也談“語(yǔ)言是存在的家”——從語(yǔ)言的主詞與謂詞看存在的殊相與共相
        命題邏輯的子句集中文字的分類(lèi)
        日日爽日日操| 日韩av在线不卡一区二区| 肉体裸交丰满丰满少妇在线观看| 狠狠色狠狠色综合久久第一次| 无码伊人66久久大杳蕉网站谷歌| 国产不卡av一区二区三区| av天堂网手机在线观看| 一区二区三区四区草逼福利视频| 先锋影音人妻啪啪va资源网站| 亚洲精品久久久久久久蜜桃| 男女高潮免费观看无遮挡| 日本aⅴ大伊香蕉精品视频| 久久综合给日咪咪精品欧一区二区三| 一区五码在线| 国产丝袜美腿嫩模视频诱惑| 无码国产精品一区二区免费式芒果| 国产亚洲精品久久久久婷婷瑜伽 | 少妇性俱乐部纵欲狂欢电影| 欧美三级乱人伦电影| 女性自慰网站免费看ww| 美腿丝袜中文字幕在线观看| 国产精品女主播福利在线| 色欲欲www成人网站| 全免费a级毛片| 国产在线美女| 中文字幕亚洲精品高清| 久久综合九色欧美综合狠狠 | 国语自产精品视频在线看| 中文字幕亚洲情99在线| 在线观看精品视频一区二区三区 | 国产玉足榨精视频在线观看| 俺来也俺去啦最新在线| 久久青草国产免费观看| 国产av熟女一区二区三区密桃| 中文无码av一区二区三区| 精品人妻伦九区久久aaa片69| 亚洲人成影院在线高清| 午夜亚洲精品视频在线| 在线观看精品视频网站| 欧美色色视频| 国产一区二区三区护士|