DBC.DiskSpaceVビューは、データベースまたはユーザー レベルでのディスク領域使用量に関するAMP情報を返します。さらに、スプール領域使用量も報告できます。DBC.DiskSpaceVの数値は、問合わせを実行依頼するユーザーが所有する領域についてのみ計算されます。システム全体についての情報を得るためには、階層の最上位ユーザー(大抵は、サイトの管理ユーザー)としてログオンします。
DBC.DiskSpaceVのMaxProfileSpool列とMaxProfileTemp列に問合わせて、プロファイルに割り当てられた領域の量を調べることができます。制限されたビュー(DBC.DiskSpaceVX)のMaxSpoolおよびMaxTempに問合わせると、個々のユーザー領域の領域制限が取得されます。以下の問合わせでは、DBC.DiskSpaceVから取得できる情報を示します。
取得する情報 | 実行する問合せ |
---|---|
システム全体のディスク領域の合計 | SELECT SUM(MaxPerm) FROM DBC.DiskSpaceV; |
現在使用中のディスク領域 | SELECT SUM(CurrentPerm), SUM(MaxPerm), ((Cast(Sum(Currentperm) as float) / NullifZero(Cast(Sum(maxperm) as float)) *100)) (Title '%MaxPerm', Format 'zz9.99') FROM DBC.DiskSpaceV; |
特定のデータベースのディスク領域 | SELECT sum(maxperm) FROM DBC.DiskSpaceV WHERE databasename='xxxx'; |
スプール用に使用可能なディスク領域の比率 | SELECT (((cast(SUM(MaxPerm) as float) - cast(SUM(CurrentPerm) as float)) / NULLIFZERO(cast(SUM(MaxPerm) as float))) * 100) (TITLE'% Avail for Spool', format'zz9.99') FROM DBC.DiskSpaceV; |
システム内の各データベースが使用している領域の比率 | SELECT Databasename (format 'X(12)') ,SUM(maxperm) ,SUM(currentperm) ,((cast(SUM(currentperm) as float))/ NULLIFZERO (cast(SUM(maxperm) as float)) * 100) (FORMAT 'zz9.99%', TITLE 'Percent // Used') FROM DBC.DiskSpaceV GROUP BY 1 ORDER BY 4 DESC WITH SUM (currentperm), SUM(maxperm); |
固定領域が不足しているユーザー | SELECT Databasename (format 'X(12)') ,SUM(maxperm) ,SUM(currentperm) ,((cast(SUM(currentperm) as float))/ NULLIFZERO (cast(SUM(maxperm) as float)) * 100) (format 'zz9.99%', TITLE 'Percent // Used') FROM DBC.DiskSpaceV GROUP BY 1 HAVING (cast(SUM(currentPerm) as float) / NULLIFZERO(cast(SUM(maxperm) as float))) > 0.9 ORDER BY 4 DESC; |
大量のスプールを使用しているユーザー | SELECT databasename ,SUM(peakspool) FROM DBC.DiskSpaceV GROUP BY 1 HAVING SUM(peakspool) > 5000000000 ORDER BY 2 DESC; 値500000000の部分は、サイトに適した値に変更できます。大容量の領域があるサイトでは、スプール使用量とスプール制限の許容度が高い可能性があります。
|