動態(tài)性能視圖 物化視圖和普通視圖的區(qū)別?
物化視圖和普通視圖的區(qū)別?普通視圖和物化視圖根本不是一回事。兩者的區(qū)別很難綜合起來。首先,了解基本概念。普通視圖不存儲任何數(shù)據(jù)。它只有定義。在查詢中,它被轉(zhuǎn)換成相應(yīng)的定義SQL來查詢。物化視圖是將數(shù)據(jù)
物化視圖和普通視圖的區(qū)別?
普通視圖和物化視圖根本不是一回事。兩者的區(qū)別很難綜合起來。首先,了解基本概念。普通視圖不存儲任何數(shù)據(jù)。它只有定義。在查詢中,它被轉(zhuǎn)換成相應(yīng)的定義SQL來查詢。物化視圖是將數(shù)據(jù)轉(zhuǎn)換成一個表,該表實際存儲數(shù)據(jù)。這樣,就不需要查詢大量表中的數(shù)據(jù)。如果表很大,很多操作將在臨時表空間中完成。共同觀點有三個特點:1。這是一種簡化設(shè)計和代碼的方法。它不能提高性能。它的存在只會降低性能(例如,一個視圖中有七個表,另一個視圖中有八個表)。程序員不知道。將兩個視圖關(guān)聯(lián)起來形成另一個視圖非常方便。真是慘不忍睹)。2它的存在并沒有給設(shè)計帶來方便,它是安全的。從對其他用戶授權(quán)或查看的角度看,多個表關(guān)聯(lián)只能查看,不能修改。也可以使用readonly控制單個表。當(dāng)然,有些項目是基于視圖進(jìn)行面向?qū)ο箝_發(fā)的,也就是說,在視圖上安裝觸發(fā)器。就我個人而言,我不這么認(rèn)為。雖然開發(fā)方便,但未必是好事。三。從不同的角度查看不同的維度,視圖可以劃分維度和權(quán)限,集成多個維度,也就是說,您可以從不同的角度看到所需的內(nèi)容,而表只是一個實體,通常維度較少(例如,人員表與標(biāo)識表、人員表關(guān)聯(lián))維度統(tǒng)計可以從人員表中查看,不同類型的身份可以從身份(那些人或多少人)中查看,其次是另一個如系統(tǒng)視圖用戶表、選項卡、用戶對象這些視圖,不同的用戶看到的肯定不一樣,看自己的東西。OLAP系統(tǒng)中使用了物化視圖。當(dāng)然,一些OLTP系統(tǒng)的一小部分功能沒有得到改進(jìn)。由于表關(guān)聯(lián)的高成本,很多人把成本轉(zhuǎn)移到開發(fā)中去。當(dāng)然,Oracle也提供了這個功能,即將視圖(或一個大SQL)信息轉(zhuǎn)換成物理數(shù)據(jù)存儲,之后提供了不同的策略:定時刷或及時刷、增量刷或全局刷等,您可以根據(jù)實際情況進(jìn)行選擇。簡言之,你不好的是表,而不是視圖。