Vantageは、正規化されたCPU測定と未加工のCPU測定の両方を記録します。正規化されたCPU時間は、CPUの倍率をノード レベルの未加工のCPU時間に適用することによって得られます。
すべてのノード タイプに対する標準の共存倍率は、Open PDE startup.txtファイルのPDE始動パラメータで定義済みです。ノードごとの値は、他のコンポーネントが使用できるように、PDE始動によってvconfigおよびtosgetpma()構造に追加されます。このようにして、Vantageは複合ノード システムの正確な性能統計、特にCPUスキューおよび容量計画、つまり使用可能な容量に関する性能統計を提供します。
式は次のようになります。
Node_Scaling_Factor * Node_CPU_Time
- I/Oまたは環境によって制限されていないTeradataコンピュータ ノードの未加工の容量を測定する。
- 値を、データ アクセスの頻度、データ ロードの頻度、行処理の頻度、未加工のトランザクション頻度などの基本的な機能に基づかせる。
現在、5100が基本的な倍数値になります(1.00)。
DBQLおよびAMPUsageのAMPレベルのレポートでは、式は次のようになります。
Node_Scaling_Factor * AMP_CPU_Time
ResUsageとDBC.AMPUsageビュー
DBC.AMPUsageビューは、ResUsageデータでの情報の表示方法とは異なる方法でCPUの使用情報を表示します。
機能 | 表示内容 |
---|---|
ResUsage | システム数値。個々のユーザーまたはアカウントIDが区別されない。 |
DBC.AMPUsageビュー | 個々のユーザーまたはアカウントID別のAMP使用。 AMPUsageは論理I/O(物理I/Oではない)の数を測定します。 システムで使用されたCPU秒数の一部は、AMPUsageの対象となりません。そのため、ResUsageのCPUの値は常にAMPUsageの値よりも大きくなります。一般に、AMPUsageで収集されるCPU時間はResUsageの70~90%です。 |
DBC.AMPUsageビューについての詳細は、<Teradata Vantage™ - データ ディクショナリ、B035-1092>を参照してください。
ResNodeマクロ セットの使用
一般的に、容量計画には、ResUsageSpmaのみが必要です。このテーブルだけが、ResNodeマクロ セットを利用するために必要です。
- CPU使用
- ホット ノードまたはAMPを示す並列の効率
- 入出力に対するCPUの均衡
- ワークロードの特性を確かめるためのOS使用率とDBS使用率の比較
- メモリ使用率
- 可用性とプロセスのスワッピング(ページング)
- ネットワーク トラフィック
傾向の確認
- 1日または1週間のうちの様々な時点でシステムがどのくらいの率で使用されているか。
- 使用中のピークまたは利用可能サイクルはいつ生じるか。
CPU Busy
ResNodeマクロはCPU busyを平均秒数でレポートします。この情報はシステム全体の分析に使用できます。
- DSS環境では、ジョブ数が少なくてもCPUは簡単に100 %の使用率に近づくことがあります。
- 高CPU使用とは、かなりの期間にわたってAvg CPU Busy %が70%超であることを指します。
- DSS環境とトランザクション処理環境ではCPUの需要は異なった形態をとります。
ResNode列については、<Teradata Vantage™ - リソース利用マクロおよびテーブル、B035-1099>を参照してください。
DSS環境のCPUタスク
以下は、DSS操作時にノードでどのようにCPUタスクが実行されるかを示しています。
- 読み取りの準備:
- メモリ管理がデータ ブロック用のメモリを割り当てます。
- データベース ソフトウェアからファイル システムに通信します。
- ファイル システムからディスク コントローラーに通信します。
- 行を選定します。行がWHERE句条件を満たすかどうかを確かめます。
大部分のDSS操作ではフル テーブル スキャンが必要です。その場合、WHERE句条件の確認に比較的時間がかかります。一般的にフル テーブル スキャンは、インデックスやパーティションを除外する値をWHERE句で指定していないSQL文が原因で行なわれます。
- 行の処理:
- 結合
- ソート
- 集約
- 該当する行をスプール出力用にフォーマットします。
トランザクションとバッチ保守処理中のCPUタスク
以下は、トランザクション バッチ保守処理においてノードでどのようにCPUタスクが実行されるかを示しています。
テーブルには修飾行アクティビティが欠落していることに注意する必要があります。トランザクション処理では、PIまたはUSIの値がWHERE句に指定されるのが一般的です。読み取りそのものが行を修飾します。通常、トランザクション処理では、非インデックス列に照らし合わせた追加の条件検査は行なわれません。これらのCPUタスクはすべて、ノード上で行なわれます。
- 読み取りの準備:
- メモリ管理がデータ ブロック用のメモリを割り当てます。
- データベースからファイル システムへ通信します。
- ファイル システムからディスク コントローラーに通信します。
- 行の更新:
- データベースが、更新しようとする行を見つけ出します。
- メモリ管理が、作成しようとする新規データ ブロック用のメモリを割り振ります。
- データベースは、変更後の行を更新し、古い行をコピーします。
- データベースからファイル システムへ通信します。
- ファイル システムからディスク コントローラーに通信します。
並列ノードの効率
並列ノードの効率は、それぞれのノードによってワークロードがどのくらい均一に分担されているかの指標になります。それぞれのノードが等しく利用されればされるほど、並列性の効率は上がります。
並列ノードの効率性は、平均ノード使用率を最大ノード使用率で割って計算されます。並列ノードの効率では、ワークロードの大きさは考慮に入れられません。この場合には、ワークロードがどのくらい均一に各ノードで分担されているかだけが調べられます。
並列ノードの効率が100%に近ければ近いほど、それぞれのノードがうまく共同稼働していることになります。このパーセンテージが100%を下回るということは、その時間帯における一部のノードの稼動量が他のノードの稼動量よりも高いということを意味します。ノードの並列性効率が10分間にわたって60%を下回る状態が1回または2回以上発生する場合には、Vantageの並列性アーキテクチャは最大限の性能を達成していないことになります。
劣化した並列性の効率
- ノードが停止している。
- ノードあたりのAMP数が不均等である。
- スキューのあるテーブルが配布された。
- スキューのある結合または集合処理が行なわれた。
- TPAノードでVantage以外のアプリケーションが実行されている。
- システムに別々の速度のノードが共存している。
- テーブル配布が不適切である(これについてはDBC.TableSizeVで調べることができます)。
- SQL文の処理でスキューが生じた。
- ユーザーのCPU秒数(これについてはDBC.AMPusageで調べることができます)。
- スプール(これについてはDBC.DiskspaceVで調べることができます)。
CPU使用
以下のマクロは、CPU使用に関する情報を示します。
マクロ | テーブル | 目的 |
---|---|---|
ResCPUByNode | SPMA | 個々のノードでのCPUの使用率をレポートします。 |
ResCPUByPE | SVPR | ノードに関係なく、各パーシング エンジン(PE)によるCPUの使用率のレポート。 |
ResCPUByAMP | SVPR | それぞれのノードでの各AMPによるCPUの使用率のレポート。 |
これらのマクロについては、<Teradata Vantage™ - リソース利用マクロおよびテーブル、B035-1099>を参照してください。