數據庫:Oracle 11gOracle 11g此表的分區策略
我正在開發一個新建項目並設計數據庫模式。我有一個審計表,顧名思義, 最終將成長爲擁有大量記錄。以下是表定義(修剪無關列後)。
create table ClientAudit (
id number(19,0) primary key,
clientId number(19,0) not null,
createdOn timestamp with time zone default systimestamp not null
);
id是由oracle序列填充的自然數。
clientId是一個唯一的客戶端標識符。
爲了便於查詢的報告,我創建一個下面的視圖爲好,這給基於createdOn爲每個客戶端的最新記錄,:
create or replace view ClientAuditView
as
select * from (
select ca.*,max(ca.createdOn) keep (dense_rank last order by ca.createdOn)
over (partition by ca.clientId) maxCreatedOn
from ClientAudit ca
)
where createdOn=maxCreatedOn;
/
我不知道什麼應該在這裏,如果分區鍵我將分區ClientAudit表。
它應該是ClientId還是CreatedOn?
什麼應該是分區策略?