JP1/Performance Management - Agent Option for Oracle
ディスク占有量は,パフォーマンスデータを収集するレコード数によって変化します。
PFM - Agent for Oracleのディスク占有量の見積もりについて説明します。
- <この項の構成>
- (1) システム全体のディスク占有量
- (2) Storeデータベース(Storeバージョン1.0)のディスク占有量
- (3) Storeデータベース(Storeバージョン2.0)のディスク占有量
(1) システム全体のディスク占有量
システム全体のディスク占有量の見積もり値をOSごとに記載します。
(a) Windowsの場合
PFM - Agent for Oracleのディスク占有量は,次のデータのファイルサイズによって変化します。
- Agent Storeデータベース
- PFM - Agent for Oracleのインスタンス数
- エージェントログ
上記を踏まえ,Windowsの場合の,システム全体のディスク占有量の見積もり値を次の表に示します。
表A-5 システム全体のディスク占有量(Windowsの場合)
PFM - Agent for Oracleの状態ディスク占有量(単位:メガバイト) Windows Server 2003,Windows Server 2008 インストール時※1 10 初期状態での運用※2 110 運用時 a + b
- (凡例)
- a:インスタンスごとのディスク占有量の和。
- 一つのインスタンスのディスク占有量の算出式を次に示します。
- c + d + 20
- b:インストール時のディスク占有量。
- c:Storeデータベースのディスク占有量。Storeデータベースのディスク占有量については,「(2) Storeデータベース(Storeバージョン1.0)のディスク占有量」または「(3) Storeデータベース(Storeバージョン2.0)のディスク占有量」を参照してください。
- d:エージェントログサイズ。エージェントログのファイルサイズの上限は,128メガバイトです。
- 注※1
- インストール時にはプログラム本体容量の2倍分のディスク容量が必要となります。
- 注※2
- 収集設定がSystem Stat Summary Interval(PI)レコードだけのPFM - Agent for Oracleのインスタンスが一つだけセットアップされている場合のことを示します。
(b) UNIXの場合
PFM - Agent for Oracleのディスク占有量は,次のデータのファイルサイズによって変化します。
- Agent Storeデータベース
- PFM - Agent for Oracleのインスタンス数
- エージェントログ
上記を踏まえ,UNIXの場合の,システム全体のディスク占有量の見積もり値を次の表に示します。
表A-6 システム全体のディスク占有量(UNIXの場合)
PFM - Agent for Oracleの状態ディスク占有量(単位:メガバイト) HP-UX Solaris AIX Linux (x86),Linux (x64) インストール時※1 40 20 40 20 初期状態での運用※2 140 120 140 120 運用時 a + b a + b a + b a + b
- (凡例)
- a:インスタンスごとのディスク占有量の和。
- 一つのインスタンスのディスク占有量の算出式を次に示します。
- c + d + 18
- b:インストール時のディスク占有量。
- c:Storeデータベースのディスク占有量。Storeデータベースのディスク占有量については,「(2) Storeデータベース(Storeバージョン1.0)のディスク占有量」または「(3) Storeデータベース(Storeバージョン2.0)のディスク占有量」を参照してください。
- d:エージェントログサイズ。エージェントログのファイルサイズの上限は,128メガバイトです。
- 注※1
- インストール時にはプログラム本体容量の2倍分のディスク容量が必要となります。
- 注※2
- 収集設定がSystem Stat Summary Interval(PI)レコードだけのPFM - Agent for Oracleのインスタンスが一つだけセットアップされている場合のことを示します。
(2) Storeデータベース(Storeバージョン1.0)のディスク占有量
(a) 見積もり式
Storeデータベースでは,各レコードは,レコードタイプごとに一つのファイルに格納されます。Storeデータベース(Storeバージョン1.0)のディスク占有量について,レコードタイプごとに次の表に示します。
表A-7 レコードタイプごとのStoreデータベースのディスク占有量
レコードタイプ ディスク占有量の見積もり式(単位:バイト) PIレコードタイプ X1+.....+Xa+3,500*a PDレコードタイプ Y1+.....+Yb+700*b
- (凡例)
- X:PIレコードタイプのレコードで履歴データを収集する各レコードのディスク占有量
- Xの算出式を次に示します。
- X={d*e+(c+1,900)*{(d*e)/(65,250-c)+1}※1}*f*1.5
- Y:PDレコードタイプのレコードで履歴データを収集する各レコードのディスク占有量
- Yの算出式を次に示します。
- Y={d*g+(c+1,900)*{(d*e)/(65,250-c)+1}※1*(g/e)※2}*1.5
- a:PIレコードタイプのレコードで履歴データを収集するレコード数
- b:PDレコードタイプのレコードで履歴データを収集するレコード数
- c:履歴データを収集する各レコードの固定部のサイズ※3
- d:履歴データを収集する各レコードの可変部のサイズ※3
- e:履歴データを収集する各レコードのインスタンス数※6(単数インスタンスレコードの場合は1)
- f:履歴データを収集する各レコードの保存レコード数※4
- g:履歴データを収集する各レコードの保存レコード数の上限値※5
- 注※1
- {(d*e)/(65,250-c)+1}の計算結果は,小数点以下を切り捨ててください。
- 注※2
- (g/e)の計算結果は,小数点以下を切り捨ててください。
- 注※3
- 各レコードの固定部および可変部のサイズについては,「6. レコード」を参照してください。
- 注※4
- PIレコードタイプのレコードの場合,収集したデータがある一定の区分(時,日,週,月,および年単位)に自動的に要約されるので,分,時,日,週,月,および年の部分の保存レコード数を考慮して計算する必要があります。デフォルトの保存期間と保存レコード数を次の表に示します。
表A-8 データの種類と保存レコード数
データの種類 保存期間 保存レコード数
(収集間隔が1分の場合)分単位 1日 1,440 時単位 7日 168 日単位 1年 366 週単位 1年 52 月単位 1年 12 年単位 制限なし (収集年数)*1
- 注※5
- 保存レコード数については,「付録F.1 Agent Storeサービスのプロパティ一覧」を参照してください。
- 注※6
- 各レコードのインスタンス数の算出方法を次の表に示します。SQL*Plusなどで監視対象のOracle Databaseにアクセスし,SQL文を実行しインスタンス数を算出してください。また,算出方法を記載しているレコードに関しては,算出方法に従い算出してください。SQL*Plusを使用した場合の実行手順を以下に示します。
- 実行手順例
- SQL*Plusを起動します。
- 以下の権限が付与されているユーザで監視対象のOracle Databaseに接続してください。
・CREATE SESSION
・SELECT ANY DICTIONARY
・SELECT ANY TABLE
- インスタンス数を確認したいレコードについて,「表A-9 レコードのインスタンス数の算出方法」に記載されているSQL文を実行してください。
- COUNT(*)カラムに表示された件数が対象となるレコードのインスタンス数となります。
- 注意
- インスタンス数に関しては,監視対象となるOracle Databaseの動的情報となります。そのため,監視対象のOracle Databaseに対する接続数などの要因によりインスタンス数が動的に増減するため,見積もりする際は算出された最大の値を適用してください。
表A-9 レコードのインスタンス数の算出方法
項番 レコード インスタンス数取得SQL文,または算出方法 1 PI インスタンス数は1です 2 PI_PIBC SELECT count(*)
FROM v$waitstat3 PI_PICS インスタンス数は1です 4 PI_PIDB インスタンス数は1です 5 PI_PIDD SELECT count(*)
FROM v$rowcache6 PI_PIDF 下記の2種のSQL文から求められる結果の加算値です
- SELECT count(*)
FROM v$datafile a, v$filestat b, sys.dba_data_files c
WHERE a.file#=b.file# AND b.file#=c.file_id
- SELECT count(*)
FROM v$tempfile a, v$tempstat b, dba_temp_files c
WHERE a.file#=b.file# AND b.file#=c.file_id(+)
7 PI_PIDS SELECT count(*)
FROM v$dispatcher, v$process
WHERE addr=paddr8 PI_PIEV SELECT count(*)
FROM v$session_event a, v$session b
WHERE a.sid=b.sid AND time_waited>=09 PI_PIGC インスタンス数は1です 10 PI_PIIO SELECT count(*)
FROM v$sess_io a, v$session b, v$process c
WHERE a.sid=b.sid AND b.paddr=c.addr11 PI_PILA SELECT count(*)
FROM v$latchholder a, v$session b,
v$latch c, v$latchname d, v$process e
WHERE c.latch#=d.latch# AND a.laddr(+)=c.addr
AND a.pid=e.pid(+) AND e.addr=b.paddr(+)12 PI_PILC SELECT count(*)
FROM v$librarycache13 PI_PILO SELECT /*+ ORDERED */ count(*)
FROM v$lock a, v$session b
WHERE a.sid=b.sid AND a.block >= 014 PI_PIMT インスタンス数は1です 15 PI_PIPL SELECT count(*)
FROM v$lock_activity16 PI_PIPP※1 インスタンス数は0です 17 PI_PIPQ SELECT count(*)
FROM v$pq_slave18 PI_PIRS SELECT count(*)
FROM v$rollstat a, v$rollname b, sys.dba_rollback_segs c
WHERE a.usn=b.usn AND c.segment_name=b.name19 PI_PIS2 SELECT count(*)
FROM (SELECT DISTINCT sid
FROM v$sesstat a, v$statname b
WHERE a.statistic#=b.statistic#)20 PI_PISE SELECT count(*)
FROM v$system_event21 PI_PISH SELECT count(*)
FROM v$shared_server a, v$process b
WHERE a.paddr=b.addr22 PI_PISR SELECT count(*)
FROM v$sort_segment23 PI_PIST SELECT count(*)
FROM v$sysstat24 PI_PITR SELECT COUNT(*)
FROM v$transaction a, v$session b
WHERE RAWTOHEX(ses_addr)=RAWTOHEX(saddr)25 PI_PITS SELECT count(*)
FROM sys.dba_tablespaces26 PI_PMDB インスタンス数は1です 27 PI_PMDF 下記の2種のSQL文から求められる結果の加算値です
- SELECT count(*)
FROM v$datafile a, v$filestat b, sys.dba_data_files c WHERE a.file#=b.file# AND b.file#=c.file_id
- SELECT count(*)
FROM v$tempfile a, v$tempstat b, dba_temp_files c WHERE a.file#=b.file# AND b.file#=c.file_id(+)
28 PI_PMTS SELECT count(*)
FROM sys.dba_tablespaces29 PD インスタンス数は1です 30 PD_PCI インスタンス数は1です 31 PD_PCTS SELECT count(*)
FROM sys.dba_tablespaces32 PD_PDAS インスタンス数は1です 33 PD_PDBA SELECT count(*)
FROM v$backup_async_io34 PD_PDBC SELECT count(*)
FROM v$waitstat35 PD_PDBP SELECT count(*)
FROM v$buffer_pool a, v$buffer_pool_statistics b
WHERE a.id=b.id36 PD_PDBS SELECT count(*)
FROM v$backup_sync_io37 PD_PDC SELECT count(*)
FROM v$sqlarea a, sys.audit_actions b
WHERE a.command_type=b.action38 PD_PDCF SELECT count(*)
FROM v$controlfile39 PD_PDCI SELECT count(*)
FROM v$circuit a, v$session b,
v$process c, v$process d, v$process e
WHERE a.saddr=b.saddr AND a.server=c.addr(+)
AND a.dispatcher=d.addr(+) AND a.waiter=e.addr(+)40 PD_PDCS インスタンス数は1です 41 PD_PDDB インスタンス数は1です 42 PD_PDDD SELECT count(*)
FROM v$rowcache43 PD_PDDF 下記のすべてのSQL文から求められる結果の合算値です
- SELECT count(*)
FROM v$datafile a, v$filestat b, sys.dba_data_files c
WHERE a.file#=b.file# AND b.file#=c.file_id
- SELECT count(*)
FROM v$tempfile a, v$tempstat b, dba_temp_files c
WHERE a.file#=b.file# AND b.file#=c.file_id(+)
44 PD_PDDL※1 インスタンス数は0です 45 PD_PDDO SELECT count(*)
FROM v$db_object_cache46 PD_PDDS SELECT count(*)
FROM v$dispatcher, v$process
WHERE addr=paddr47 PD_PDEL PD_PDELレコード収集間隔内にOracleアラートログに対して書き込まれた以下のメッセージの件数。
"DBA-", "EXP-", "IMP-", "LCC-", "OER-",
"ORA-", "PCC-", "PLS-", "RTL-", "TNS-"
PD_PDELレコードの収集間隔内で,Oracleアラートログに書き込まれる最大値をインスタンス数としてください。
Oracleアラートログは,以下のSQL文で取得できるパスに存在する "alert_<Oracle_SID>.log" ファイルです。
- Oracle 11gより前のバージョンの場合
SELECT name, value
FROM v$parameter
WHERE name='background_dump_dest'
- Oracle 11g以降のバージョンの場合
SELECT name, value
FROM v$diag_info
WHERE name='Diag Trace'
48 PD_PDES※3 SELECT count(*)
FROM v$sqlarea, sys.user$
WHERE ( (disk_reads/decode(executions,0,1,executions) > 1000
OR buffer_gets/decode(executions,0,1,executions) > 10000)
AND (parsing_user_id = user#) )49 PD_PDEV SELECT count(*)
FROM v$session_event a, v$session b
WHERE a.sid=b.sid AND time_waited>=050 PD_PDGC インスタンス数は1です 51 PD_PDI インスタンス数は1です 52 PD_PDIA インスタンス数は1です 53 PD_PDLA SELECT count(*)
FROM v$latchholder a, v$session b,
v$latch c, v$latchname d, v$process e
WHERE c.latch#=d.latch# AND a.laddr(+)=c.addr
AND a.pid=e.pid(+) AND e.addr=b.paddr(+)54 PD_PDLC SELECT count(*)
FROM v$librarycache55 PD_PDLO SELECT /*+ ORDERED */ count(*)
FROM v$lock a, v$session b
WHERE a.sid=b.sid AND a.block >= 056 PD_PDLS インスタンス数は1です 57 PD_PDLW SELECT count(*)
FROM dba_waiters a, v$session b, v$session c
WHERE a.holding_session=b.sid AND a.waiting_session=c.sid58 PD_PDMT インスタンス数は1です 59 PD_PDNH※1 インスタンス数は0です 60 PD_PDNL インスタンス数は1です 61 PD_PDO SELECT count(*)
FROM v$option62 PD_PDOC SELECT count(*)
FROM v$open_cursor a, v$session b
WHERE a.sid=b.sid63 PD_PDOP SELECT count(*)
FROM v$process64 PD_PDP SELECT count(*)
FROM v$parameter65 PD_PDPQ SELECT count(*)
FROM v$pq_slave66 PD_PDPS SELECT count(*)
FROM v$pq_sysstat67 PD_PDQU SELECT count(*)
FROM v$queue, v$process
WHERE addr(+)=paddr68 PD_PDRL SELECT count(*)
FROM v$resource_limit69 PD_PDRS SELECT count(*)
FROM v$rollstat a, v$rollname b, sys.dba_rollback_segs c
WHERE a.usn=b.usn AND c.segment_name=b.name70 PD_PDS SELECT count(*)
FROM v$session a, v$process b
WHERE a.paddr=b.addr71 PD_PDS2 SELECT count(*)
FROM (SELECT DISTINCT sid
FROM v$sesstat a, v$statname b
WHERE a.statistic#=b.statistic#)72 PD_PDS3 インスタンス数は1です 73 PD_PDSE SELECT count(*)
FROM v$system_event74 PD_PDSG SELECT count(*)
FROM v$sgastat75 PD_PDSH SELECT count(*)
FROM v$shared_server, v$process
WHERE paddr=addr76 PD_PDSM 下記のすべてのSQL文から求められる結果の合算値です
- SELECT count(*)
FROM sys.dba_segments
- SELECT count(*)
FROM v$sort_segment
77 PD_PDSQ※2 インスタンス数は0です 78 PD_PDSR SELECT count(*)
FROM v$sort_segment79 PD_PDSS SELECT count(*)
FROM v$sesstat a, v$session b, v$statname c
WHERE a.sid=b.sid AND a.statistic#=c.statistic# AND value>=080 PD_PDST SELECT count(*)
FROM v$sysstat81 PD_PDTA SELECT count(*)
FROM v$access a, v$session b
WHERE a.sid=b.sid82 PD_PDTF SELECT count(*)
FROM sys.dba_tablespaces83 PD_PDTL SELECT count(*)
FROM v$locked_object a, sys.dba_objects b
WHERE a.object_id=b.object_id84 PD_PDTR SELECT count(*)
FROM v$transaction a, v$session b
WHERE RAWTOHEX(ses_addr)=RAWTOHEX(saddr)85 PD_PDTS SELECT count(*)
FROM sys.dba_tablespaces86 PD_PDV SELECT count(*)
FROM product_component_version87 PD_PDWA SELECT count(*)
FROM v$session_wait a, v$session b
WHERE a.sid=b.sid AND a.wait_time>=088 PD_STAT インスタンス数は1です
- 注※1
- 予約レコードのため使用できません。
- 注※2
- リアルタイムでだけ使用できるレコードです。
- 注※3
- SQL文の実行結果が5以上の場合,インスタンス数は5としてください。
- 注意
- パフォーマンスデータがStoreデータベースに格納される際,幾つかのフィールドが追加されます。追加されるフィールドは,ディスク占有量に含まれるため,新たに容量を見積もる必要はありません。
(b) 見積もり例
- 見積もり例1
- OSがWindowsで,Tablespace Interval(PI_PITS)について,PI_PITS以外のPIレコードタイプを保存設定していない場合。表A-7に示した変数a〜fが次の値とします。
a=1 c=678 d=291 e=2 f=4,078
- (eの求め方)
- 表A-9の,レコードのインスタンス数の算出方法を参照してください。今回はe=2とします。
- (fの求め方)
- PI_PITSの収集間隔を1分,年単位の収集年数を1年として,リテンションの設定が表A-7の注※4のとおりである場合。
(1,440+168+366+52+12+1)*2(eの値)=4,078レコード f=4,078
- Xの算出式
X={d*e+(c+1,900)*{d*e/(65,250-c)+1}}*f*1.5 X={291*2+(678+1,900)*{291*2/(65,250-678)+1}}*4,078*1.5 ={582+(2,578)*{582/64,572+1}}*6,117 ={582+2,578*1}*6,117 =3,160*6,117 =19,329,720(バイト) =約19(メガバイト)
- 見積もり例2
- OSがWindowsで,PDレコードタイプのTablespace(PD_PDTS)について,PD_PDTS以外のPDレコードタイプを保存設定していない場合。
b=1 c=678 d=117 e=3 g=2,232
- (eの求め方)
- 表A-9の,レコードのインスタンス数の算出方法を参照してください。今回はe=3とします。
- (gの求め方)
- リテンションの設定のデフォルトは10,000レコードです。
- 収集間隔を3,600秒にして1か月分のデータを保存したい場合。
- g=24レコード(1日分)*31(1か月)*3(eの値)=2,232レコード
- g=2,232レコード
- Yの算出式
Y={d*g+(c+1,900)*{(d*e)/(65,250-c)+1}*(g/e)}*1.5 Y={117*2,232+(678+1,900)*{(117*3)/(65,250-678)+1}*(2,232/3)}*1.5 ={117*2,232+2,578*{351/64,571+1}*744}*1.5 ={261,144+2,578*1*744}*1.5 ={261,144+1,918,032}*1.5 =2,179,176*1.5 =3,268,764(バイト) =約3(メガバイト)
(3) Storeデータベース(Storeバージョン2.0)のディスク占有量
Storeデータベース(Storeバージョン2.0)のディスク占有量について説明します。
(a) 見積もり式
ディスク占有量,ファイル数,ディレクトリ数,およびStoreサービスがオープンするファイル数の見積もりについて説明します。
●ディスク占有量
Storeデータベースのディスク占有量は,レコードタイプごとのディスク占有量の総和となります。PIレコードタイプについては,さらに集約区分ごとのディスク占有量の総和となります。
- レコードタイプごとのディスク占有量Xの見積もり式(単位:バイト)
- X={(e+2)*f+(d+60)*{((e+2)*f)/(65,250-d)+1}※1}*a/b*(c+1)*1.1
- a:レコードタイプ,集約区分ごとに値が異なります。表A-10を参照してください。
- b:レコードタイプ,集約区分ごとに値が異なります。表A-10を参照してください。
- c:履歴データの保存期間設定値※3。レコードタイプ,集約区分ごとに指定する単位が異なります。単位については表A-10を参照してください。
- d:履歴データを収集する各レコードの固定部のサイズ※4
- e:履歴データを収集する各レコードの可変部のサイズ※4
- f:履歴データを収集する各レコードのインスタンス数(単数インスタンスレコードの場合は1)※5。インスタンス数が2以上の場合,4の倍数に切り上げます。例えばインスタンス数が2の場合は,f=4となります。インスタンス数が13の場合は,f=16となります。インスタンス数が1の場合は,f=1となります。
表A-10 a,b,およびcに設定する値
レコードタイプ 集約区分 a b c PI 分 1,440 1+(g-1)/60※2 保存期間(単位:日) 時 24 1+(g-1)/3,600※2 保存期間(単位:日) 日 7 1+(g-1)/86,400※2 保存期間(単位:週) 週 1 1+(g-1)/604,800※2 保存期間(単位:週) 月 1 1+(g-1)/2,592,000※2 保存期間(単位:月) 年 1 1+(g-1)/31,622,400※2 10(固定値) PD − 1,440 g/60 保存期間(単位:日)
- (凡例)
- g:履歴データの収集インターバル設定値(単位:秒)
- −:該当しない
- 注※1
- {((e+2)*f)/(65,250-d)+1}の計算結果は,小数点以下を切り捨ててください。
- 注※2
- PIレコードタイプのbの計算結果は,小数点以下を切り捨ててください。
- 注※3
- Storeバージョン2.0の場合のデフォルトの保存期間と保存レコード数を次の表に示します。
表A-11 デフォルトの保存期間と保存レコード数(Storeバージョン2.0の場合)
レコードタイプ データの種類 保存期間 保存レコード数
(収集間隔が1分の場合)PI 分単位 1日 1,440 時単位 7日 168 日単位 54週 378 週単位 54週 54 月単位 12か月 12 年単位 10年 (収集年数)*1 PD − 7日 10,080
- (凡例)
- −:該当しない
- 注※4
- 各レコードの固定部・可変部のサイズについては,「6. レコード」のレコードサイズを参照してください。
- 注※5
- レコードごとのインスタンス数については,「(2) Storeデータベース(Storeバージョン1.0)のディスク占有量」を参照してください。
●ファイル数
Storeデータベースで作成されるファイル数Nの見積もり式を次に示します。
N=20+2*( (A11+A12+...+A1l+l)+ (A21+A22+...+A2l+l)+ (A31+A32+...+A3l+l)+ (A41+A42+...+A4l+l)+ (A51+A52+...+A5l+l)+ (11*l)+ (B1+B2+...+Bm+m) )l:PIレコードで収集しているレコードの数
m:PDレコードで収集しているレコードの数
A11〜A1l:PIレコードタイプのレコードごとの分レコードの保存期間設定値(単位:日)
A21〜A2l:PIレコードタイプのレコードごとの時レコードの保存期間設定値(単位:日)
A31〜A3l:PIレコードタイプのレコードごとの日レコードの保存期間設定値(単位:週)
A41〜A4l:PIレコードタイプのレコードごとの週レコードの保存期間設定値(単位:週)
A51〜A5l:PIレコードタイプのレコードごとの月レコードの保存期間設定値(単位:月)
B1〜Bm:PDレコードタイプのレコードごとの保存期間設定値(単位:日)
●ディレクトリ数
Storeデータベースで作成されるディレクトリ数Nの見積もり式を次に示します。
N=25+2*((A1max)+(A2max)+(A3max)+(A4max)+(A5max)+11+(Bmax))l:PIレコードで収集しているレコードの数
m:PDレコードで収集しているレコードの数
A1max:PIレコードタイプで収集しているレコードの集約区分が「分」のデータの保存期間設定値の最大値(単位:日)
A2max:PIレコードタイプで収集しているレコードの集約区分が「時」のデータの保存期間設定値の最大値(単位:日)
A3max:PIレコードタイプで収集しているレコードの集約区分が「日」のデータの保存期間設定値の最大値(単位:週)
A4max:PIレコードタイプで収集しているレコードの集約区分が「週」のデータの保存期間設定値の最大値(単位:週)
A5max:PIレコードタイプで収集しているレコードの集約区分が「月」のデータの保存期間設定値の最大値(単位:月)
Bmax:PDレコードタイプのレコードごとの保存期間設定値の最大値(単位:日)
●Storeサービスがオープンするファイル数
Storeサービスがオープンするディレクトリ数Nの見積もり式を次に示します。
N=20+2*(6*l+m)l:PIレコードで収集しているレコードの数
m:PDレコードで収集しているレコードの数
(b) 見積もり例
PFM - Agent for OracleのStoreデータベース(Storeバージョン2.0)の見積もりについて,具体例を用いて説明します。
●ディスク占有量
PI_PITSとPD_PDTSを収集する設定にした場合を例に挙げて説明します。
PI_ PITSレコードの見積もりについて説明します。「(a) 見積もり式」のディスク占有量の見積もり式の,a〜gの値を調べます。
d=678
e=291
f=今回は3とする
g=今回は60秒とする
次に,分レコード,時レコードなどそれぞれの計算を行います。
- 分レコード
- a=1,440
- b=1+(60-1)/60 = 1.98 ・・・ =1(小数点以下切り捨て)
- c=今回は3日とする
- 見積もり式を次に示します。
X(分)={(291+2)*4+(678+60)*{((291+2)*4)/(65,250-678)+1}}*1,440/1* (3+1)*1.1 ={1,172+738*1}*6,336 =1,910*6,336 =12,101,760(バイト)=約12メガバイト
- 時レコード
- a=24
- b=1+(60-1)/3,600 = 1.01 ・・・ =1(小数点以下切り捨て)
- c=今回は3日とする
- 見積もり式を次に示します。
X(時)={(291+2)*4+(678+60)*{((291+2)*4)/(65,250-678)+1}}*24/1* (3+1)*1.1 ={1,172+738*1}*105.6 =1,910*105.6 =201,696(バイト)=約0.2メガバイト
- 日レコード
- a=7
- b=1+(60-1)/86,400 = 1.00 ・・・ =1(小数点以下切り捨て)
- c=今回は1週とする
- 見積もり式を次に示します。
X(日)={(291+2)*4+(678+60)*{((291+2)*4)/(65,250-678)+1}}*7/1* (1+1)*1.1 ={1,172+738*1}*15.4 =1,910*15.4 =29,414(バイト)=約0.03メガバイト
- 週レコード
- a=1
- b=1+(60-1)/604,800 = 1.00 ・・・ =1(小数点以下切り捨て)
- c=今回は1週とする
- 見積もり式を次に示します。
X(週)={(291+2)*4+(678+60)*{((291+2)*4)/(65,250-678)+1}}*1/1* (1+1)*1.1 ={1,172+738*1}*2.2 =1,910*2.2 =4,202(バイト)=約0.005メガバイト
- 月レコード
- a=1
- b=1+(60-1)/2,592,000 = 1.00 ・・・ =1(小数点以下切り捨て)
- c=今回は1か月とする
- 見積もり式を次に示します。
X(月)={(291+2)*4+(678+60)*{((291+2)*4)/(65,250-678)+1}}*1/1* (1+1)*1.1 ={1,172+738*1}*2.2 =1,910*2.2 =4,202(バイト)=約0.005メガバイト
- 年レコード
- a= 1
- b=1+(60-1)/31,622,400 = 1.00 ・・・ =1(小数点以下切り捨て)
- c=10(固定)
- 見積もり式を次に示します。
X(年)={(291+2)*4+(678+60)*{((291+2)*4)/(65,250-678)+1}}*1/1* (10+1)*1.1 ={1,172+738*1}*12.1 =1,910*12.1 =23,111(バイト)=約0.03メガバイト以上から,PI_PITSの見積もりは次のようになります。
X(合計)=X(分)+X(時)+X(日)+X(週)+X(月)+X(年) =12.27メガバイト =約13メガバイト次にPD_PDTSレコードの見積もりについて説明します。
a=1,440
b=60/60 =1
c=7日とする
d=678バイト
e=117バイト
f=今回は10とする
g=今回は60秒とする
見積もり式を次に示します。
X={(117+2)*12+(678+60)*{((117+2)*12)/(65,250-678)+1}}*1,440/1*(7+1)* 1.1 ={1,428+738*1}}*12,672 =2,166*12,672 =27,447,552(バイト)=約27メガバイトしたがって,必要なディスク占有量はPI_PITS+PD_PDTS=40メガバイトとなります。
●ファイル数
PI,PI_PITS,PD,およびPD_PDTSを収集する場合を例に挙げて説明します。「(a) 見積もり式」のファイル数の見積もり式の,可変値を調べます。
l:PIレコードで収集しているレコードの数=2
m:PDレコードで収集しているレコードの数=2
A11〜A1l:PIレコードタイプのレコードごとの分レコードの保存期間設定値(単位:日)=今回は3日とする
A21〜A2l:PIレコードタイプのレコードごとの時レコードの保存期間設定値(単位:日)=今回は3日とする
A31〜A3l:PIレコードタイプのレコードごとの日レコードの保存期間設定値(単位:週)=今回は1週とする
A41〜A4l:PIレコードタイプのレコードごとの週レコードの保存期間設定値(単位:週)=今回は1週とする
A51〜A5l:PIレコードタイプのレコードごとの月レコードの保存期間設定値(単位:月)=今回は1月とする
B1〜Bm:PDレコードタイプのレコードごとの保存期間設定値(単位:日)=今回は10日とする
Storeデータベースで作成されるファイル数Nの見積もり式を次に示します。
N=20+2*( (A11+A12+...+A1l+l)+ (A21+A22+...+A2l+l)+ (A31+A32+...+A3l+l)+ (A41+A42+...+A4l+l)+ (A51+A52+...+A5l+l)+ (11*l)+ (B1+B2+...+Bm+m)+ ) =20+2*{ [3(PI分)+3(PI_PITS分)+2]+ [3(PI分)+3(PI_PITS分)+2]+ [1(PI分)+1(PI_PITS分)+2]+ [1(PI分)+1(PI_PITS分)+2]+ [1(PI分)+1(PI_PITS分)+2]+ [11*2]+ [10(PD分)+10(PD_PDTS分)+2] } =20+2*{8+8+4+4+4+22+22}=164●ディレクトリ数
PI,PI_PITS,PD,およびPD_PDTSを収集する場合を例に挙げて説明します。
l:PIレコードで収集しているレコードの数=2
m:PDレコードで収集しているレコードの数=2
A1max:PIレコードタイプで収集しているレコードの集約区分が"分"のデータの保存期間設定値の最大値(単位:日)=今回は3日とする(考え方:PIが2日,PI_PITSが3日の場合は3日となります)
A2max:PIレコードタイプで収集しているレコードの集約区分が「時」のデータの保存期間設定値の最大値(単位:日)=今回は3日とする
A3max:PIレコードタイプで収集しているレコードの集約区分が「日」のデータの保存期間設定値の最大値(単位:週)=今回は1週とする
A4max:PIレコードタイプで収集しているレコードの集約区分が"週"のデータの保存期間設定値の最大値(単位:週)=今回は1週とする
A5max:PIレコードタイプで収集しているレコードの集約区分が「月」のデータの保存期間設定値の最大値(単位:月)=今回は1月とする
Bmax:PDレコードタイプのレコードごとの保存期間設定値の最大値(単位:日)=今回は10日とする(考え方:PD_PDTSが8日,PDが10日の場合は10日となります)
Storeデータベースで作成されるディレクトリ数Nの見積もり式を次に示します。
N=25+2*((A1max)+(A2max)+(A3max)+(A4max)+(A5max)+11+(Bmax)) =25+2*(3+3+1+1+1+11+10)=85●Storeサービスがオープンするファイル数
PI,PI_PITS,PD,およびPD_PDTSを収集する場合を例に挙げて説明します。
l:PIレコードで収集しているレコードの数=2
m:PDレコードで収集しているレコードの数=2
Storeサービスがオープンするディレクトリ数Nの見積もり式を次に示します。
N=20+2*(6*l+m) =20+2*(6*2+2)=48
All Rights Reserved. Copyright (C) 2009, 2010, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2009, 2010, Hitachi Systems & Services, Ltd.