Oracle 12c R2版本 Application Containers 特性(二)
在上一篇Oracle 12c R2版本 Application Containers 特性(一)中講解了Application Root/PDBs的建立以及“Application”的維護,本篇將介紹“Application Common Objects”,即公共物件。
公共物件是使用者在Application Container特性下建立的共享物件,且只能建立在Application Root中,共享給Application PDB,其有三種型別可共選擇,分別為:METADATA-LINKED、DATA-LINKED、EXTENDED DATA-LINKED.
-
METADATA-LINKED:共享公共物件的後設資料給Application PDB,不可以檢視公共物件在Application root記憶體儲的資料,在Appliation PDB內可插入本地資料。
-
DATA-LINKED:共享公共物件的後設資料和資料給Application PDB,在Appliation PDB中僅可查詢公共物件在Application root記憶體儲的資料,無法對其進行DML操作,也不可進行本地資料插入。
-
EXTENDED DATA-LINKED:共享公共物件的後設資料和資料給Application PDB,在Application PDB內可以查詢公共物件在Application root記憶體儲的資料,對Application root記憶體儲的資料不能進行DML操作,但在Application PDB內可插入本地資料,EXTENDED DATA-LIKED更像是METADATA-LIKED和DATA LIKED的結合。
如下是不同型別公共物件的後設資料和資料的儲存位置對照表:
指定共享屬性時有兩種方式,第一種使用系統引數default_sharing,另一種是在CREATE語句中指定SHARING的型別子句(該子句覆蓋default_sharing引數)。
下面是共享屬性的選擇:
-
METADATA
-
DATA
-
EXTENDED DATA
-
NONE
以下資料庫中的物件可以被建立為公共物件:
Analytic views
Attribute dimensions
Directories
External procedure libraries
Hierarchies
Java classes, Java resources, Java sources
Packages
Object tables
Object types
Object views
Sequences
Stored functions
Stored procedures
Synonyms
Tables (including temporary tables)
Triggers
Views
對於上面列出的物件,均可以在建立時指定METADATA或NONE選項,而DATA/EXTENDED DATA只能被如下物件建立時所指定:
-
Table(不包括物件型別表):METADATA, DATA, EXTENDED DATA
-
Views (不包括物件檢視):METADATA, DATA, EXTENDED DATA
-
Sequences:METADATA, DATA, NONE
如下測試將透過表來展示不同共享方式的差別
在qdatacon1中安裝Application:qd_reg1:
DATA-LINKED型別
建立sharing=data的表t_data,並且結束qd_reg1的安裝:
在qdcpdb1中同步qd_reg1:
在qdatacon1中向t_data插入資料:
在qdcpdb1內查詢t_data:
檢視在qdcpdb1中查詢t_data的執行計劃資訊:
以上執行計劃走的是DATA LINK FULL方式。
在qdcpdb1中對錶進行delete/insert:
data liked型別的物件資料儲存在Application root內,在Application PDB內無法對其進行DML操作。
在qdcpdb1內查詢資料的rowid資訊:
METADATA LIKED型別
建立sharing=metadata型別的表t_meta:
在qdcpdb1內同步qd_reg1:
在qdatacon1中插入資料:
在qdcpdb1內查詢:
metadata liked型別僅共享後設資料給Application PDB,在Application PDB內無法查詢共享物件在Application Root記憶體儲的資料。
在qdcpdb1中向t_meta插入資料:
在qdcpdb1內查詢t_meta資料的rowid資訊:
資料在本地儲存,可以獲得ROWID。
檢視執行計劃:
以上執行計劃走的TABLE ACCESS FULL。
在qdcpdb1中刪除資料:
EXTENDED DATA型別
建立sharing=extended data型別的表t_exte:
在qdcpdb1內同步:
在qdatacon1中插入資料:
在qdcpdb1中查詢並刪除資料:
qdcpdb1中可以訪問公共物件在Application root記憶體儲的資料,但是不能對其進行DML操作。
在qdcpdb1中插入資料:
0 QBackup儲存在 Application root內,1 QMonitor 儲存在本地。
在qdcpdb1內查詢資料的rowid資訊:
在qdcpdb1內將表t_exte truncate掉:
這裡僅將本地資料truncate掉了。
檢視執行計劃:
以上執行計劃走的EXTENDED DATA LINK。
這裡只做了TABLE的演示,關於其他物件的共享方式與之相近,不在演示。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28218939/viewspace-2145851/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 12c R2版本 Application Containers 特性(一)OracleAPPAI
- Oracle12c R2版本Application Containers特性(三)OracleAPPAI
- Oracle 12c 新特性(二)Oracle
- 2.3.1 About Application ContainersAPPAI
- Oracle 12C R2新特性-本地UNDO模式(LOCAL_UNDO_ENABLED)Oracle模式
- 2.3.1.1 Purpose of Application ContainersAPPAI
- ASM 翻譯系列第二彈:ASM 12C 版本新特性ASM
- Oracle 12c新特性Oracle
- Oracle 12c 新特性(四)Oracle
- Oracle 12c 新特性(三)Oracle
- Oracle 12c 新特性(一)Oracle
- oracle 12c 新特性之二:可以記錄DDL日誌Oracle
- 【12.2】Oracle 12C R2新特性-外部表支援分割槽了(Partitioning External Tables)Oracle
- 【12c Partitioning】Oracle 12c Partitioning特性Oracle
- Oracle 12c新特性--ASMFD(ASM Filter Driver)特性OracleASMFilter
- Oracle 12c新特性之Sequence的Session特性OracleSession
- Oracle 12C新特性-History命令Oracle
- Oracle 12c 兩個新特性Oracle
- Oracle 12C新特性In-MemoryOracle
- Oracle GoldenGate 12c 新特性OracleGo
- Oracle 12c啟用inmemory特性Oracle
- 2.3.1.1.3 Application Containers Use Case: Logical Data WarehouseAPPAI
- ORACLE 12C 優化器的一些新特性總結(二)Oracle優化
- Oracle 12c DG新特性Far SyncOracle
- Oracle 12c 新特性之 temp undoOracle
- ORACLE 12C新特性——CDB與PDBOracle
- Oracle 12C新特性-RMAN恢復表Oracle
- Oracle 12C 新特性之級聯truncateOracle
- 12c新特性-Oracle Sharding簡介Oracle
- Oracle 12C 新特性之 恢復表Oracle
- Oracle 12c新特性 - Hybrid histogram 3OracleHistogram
- Oracle 12c新特性 - Hybrid histogram 2OracleHistogram
- Oracle 12c新特性 - Hybrid histogram 1OracleHistogram
- Oracle 12c新特性 - Top frequency histogram 3OracleHistogram
- Oracle 12c新特性 - Top frequency histogram 2OracleHistogram
- Oracle 12c新特性 - Top frequency histogram 1OracleHistogram
- Oracle Database 12c十二大新特性OracleDatabase
- 【oracle 10g R2 新特性】Asynchronous CommitOracle 10gMIT