Oracle下的資料分區技術

來源:互聯網
上載者:User

Oracle公司出品的ORACLE Enterprise 8.0.5以其優越的效能博得了廣大使用者的青睞, 
它以豐富的內嵌函數,PL/SQL支援,多平台,Application Server整合等,給開發人員提供 
了極大的靈活性。 
在ORACLE的使用者權限分配中,只提供對錶、函數、同義字、視圖、包等的Insert,Update, 
Select,Delete,Execute等操作,並未提供欄位級的使用權限設定實際上,對大型資料庫進列欄位級的 
使用權限設定雖然帶來了安全性方面的好處,但對於效能的存在一定的影響),因此,對於大型 
MIS系統,進行資料的分區是在所難免的。 
一般地,一個典型的MIS資料庫平台設計是這樣的: 

對使用者權限的分配是通過對ORACLE臨時系統資料表來實現的:  
1、在需要分區的表(CUSTOMER)中建立相關欄位,如SGRANT_NUM number(20)及所屬部門 SUNIT_ID varchar(10), 
2、對該表建立動態視圖 CUSTOMER_PV  
select * from CUSTOMER A  
where CD_WAREHOUSE.SUNIT_ID is null  
or exists ( 
select * from CUSTOMER B where A.SUNIT_ID = B.SUNIT_ID  
and ( B.SGRANT_NUM >= TO_NUMBER(SUBSTR(USERENV('CLIENT_INFO'), 1, 10))  
and ( B.SGRANT_NUM <= TO_NUMBER(SUBSTR(USERENV('CLIENT_INFO'), 11, 10)) ) ) 

3、在使用者登入系統時修改使用者環境 client_info 中的分區號; 
4、這樣,對設計者,不存在分區問題,對終端使用者,可定義該使用者的組織分區號來約束該使用者能夠存取的資料。 


優點: 
1、由伺服器自動完成,對設計無任何影響; 
2、速度快,對巨量資料無明顯影響; 

缺點: 
1、只能根據組織或其他)進行縱向分區,不夠靈活; 
2、技術實現複雜,主表的更改將直接影響視圖需要重建); 
3、一旦組織機構變化,則分區需要重新設定。 


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.