4章.大規模ワークロードの管理 第 DB2 9.5 Work Load Manager ビジネス・ユニットの名前
by user
Comments
Transcript
4章.大規模ワークロードの管理 第 DB2 9.5 Work Load Manager ビジネス・ユニットの名前
ビジネス・ユニットの名前 第4章.大規模ワークロードの管理 DB2 9.5 Work Load Manager PSU_temp_0522 <第1.10版 2008年 12月> 本書に含まれている情報は、正式なIBMのテストを受けていません。また、明記にしろ、暗黙的にしろ、なんらの保証もなしに配布されるものです。 この情報の使用またはこれらの技術の実施は、いずれも、使用先の責任において行われるべきものであり、それらを評価し、実際に使用する環境に統合する 使用先の判断に依存しています。それぞれの項目は、ある特定の状態において正確であることがIBMによって調べられていますが、他のところで同じまたは同 様の結果が得られる保証はありません。これらの技術を自身の環境に適用することを試みる使用先は、自己の責任において行う必要があります。 © Copyright IBM Japan Systems Engineering Co., Ltd. 2008 2009/3/178/3/05 この文書のデータの利用または公開には、 最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 目次 第1章.大規模DBへの挑戦 第2章.区分化によるアクセス効率の向上 – 1. パーティションDB – 2. パーティション表 – 3. マルチディメンション・クラスタリング(MDC)表 – 4. ハイブリッド構成 第3章.圧縮によるストレージ格納効率の向上 第4章.大規模ワークロードの管理(WLM) PSU_temp_0522 2 2 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 目次: 第4章.大規模ワークロードの管理(WLM) 大規模DBにおけるワークロード管理の必要性 DB2 Workload Manager V9.5とは DB2 Workload Managerの利用例 – サービスクラスの作成とワークロードの分類 – Threshold(しきい値)評価 – Work Action Setを利用する – AIX WLMと連携した実行優先度の調整 – WLMに関連するイベント・モニター – 使用例① Thresholdに抵触したアクティビティーのモニター – 使用例② WLM統計情報の利用 参考:Performance ExpertによるWLM情報の参照 PSU_temp_0522 3 3 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 大規模DBにおけるワークロード管理の必要性 課題 •大規模データベースでは、大規模な検索処理や情報処理によって大量のシステムリソースが消費 される。 •多様なワークロードの存在する場合、その他のクリティカルな業務処理が遅延してしまうなどの 懸念がある。 •様々な業務のバッチやオンライン処理に対して、その重要度に応じて適正なリソース配分を行い、 システムの安定稼動を実現しサービスレベルを確保したい。 解決策 DB2が提供するWorkload Managerを活用する 大規模 情報解析 PSU_temp_0522 4 4 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Manager V9.5とは ワークロードを管理し、リソースの有効活用とシステムの安定稼動を実現 – 目的に応じたワークロードの分類 – 実行優先度の制御 – 閾値管理 きめ細やかなワー – レポーティング クロード分類 優先度を上げる 目的に応じたレ ポーティング 高優先度実行環境 優先度の高い処理 ワークロードの 分類 実行優先度の制御 優先度の低い処理 ワークロードの 分類 低優先度実行環境 優先度を下げる 同時実行数の管理 システム全体に影響を与えてしまう ような処理は実行を許可しない さまざまなタイプの閾値管理 (大 規模クエリー、暴走クエリーの抑制、 同時実行数制御など) PSU_temp_0522 実行中アプリ ケーションの 閾値監視 ※従来のQuery Patroller, Governor 同等機能を統合してエンジン組み込みの機能として提供 5 5 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Managerの利用例 利用例: • 定められたウィンドウ内でバッチを確実に完了させるため、バッチ処理の実行優先度を 高くしたい。 • 逆に、オンライン汎用検索処理については、実行優先度を低くしたい。 • 汎用検索処理については、以下の閾値を設け、DBサーバーが過負荷状態になることを避けたい。 見積もりコストが10万を超えるものは実行しない。 一時点での同時実行数は10までとし、10を超えるものについては、キューで待機させる。 実行時間が30分を超えるものについては、処理をキャンセルする。 オプション: 同じアプリケーションから実行されるステートメントであっても、そのコストの大小によって実行優先 度を変えたい。 AIXのWLM機能と連携してより厳密にCPU利用率を制限したい。 日々実行される処理の実行時間やコストの変化を監視したい。 PSU_temp_0522 6 6 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Managerの利用例 SERVICE CLASSの作成 高優先度(バッチ)および、低優先度(汎用検索)のSERVICE 高優先度(バッチ)および、低優先度(汎用検索)のSERVICECLASSを作成する CLASSを作成する WORKLOADの作成 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ ぞれのユーザーがそれぞれ優先度の異なるSERVICE ぞれのユーザーがそれぞれ優先度の異なるSERVICECLASSで実行されるようにする。 CLASSで実行されるようにする。 THRESHOLDの設定 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 処理の実行を抑制する。 処理の実行を抑制する。 WORK ACTION SETの設定 振り分けられたワークロードをその活動タイプ(DDL,DML,READ/WRITE.コストの大きさな 振り分けられたワークロードをその活動タイプ(DDL,DML,READ/WRITE.コストの大きさな ど)によって更に分類する。 ど)によって更に分類する。 AIX WLMとの連携 AIX AIXWLMを利用してより厳密にCPU使用量を制限する。 WLMを利用してより厳密にCPU使用量を制限する。 WLMモニタリング PSU_temp_0522 WLMが提供するモニター機能を利用する。 WLMが提供するモニター機能を利用する。 7 7 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Managerの利用例 SERVICE CLASSの作成 高優先度(バッチ)および、低優先度(汎用検索)のSERVICE 高優先度(バッチ)および、低優先度(汎用検索)のSERVICECLASSを作成する CLASSを作成する WORKLOADの作成 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ ぞれのユーザーがそれぞれ優先度の異なるSERVICE ぞれのユーザーがそれぞれ優先度の異なるSERVICECLASSで実行されるようにする。 CLASSで実行されるようにする。 THRESHOLDの設定 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 処理の実行を抑制する。 処理の実行を抑制する。 WORK ACTION SETの設定 振り分けられたワークロードをその活動タイプによって更に分類する。 振り分けられたワークロードをその活動タイプによって更に分類する。 AIX WLMとの連携 AIX AIXWLMを利用してより厳密にCPU使用量を制限する。 WLMを利用してより厳密にCPU使用量を制限する。 WLMモニタリング PSU_temp_0522 WLMが提供するモニター機能を利用する。 WLMが提供するモニター機能を利用する。 8 8 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 サービスクラスの作成とワークロードの分類 DB2 WORKLOAD SC_HIGH APPL1 接続USER=USER10 優先度を上 げる SERVICE CLASS WL_HIGH 個別にレポー ト SC_LOW APPL2 接続USER=USER20 WL_LOW 個別に閾値 監視 優先度を下 げる • アクティビティーを管理するために、まずはWORKLOADによって分類を行う。 • 分類されたアクティビティーはWORKLOADに関連付けられた、SERVICE CLASSの中で実行される。 • 実行されるSERVICE CLASSを分けることで、個別に閾値を設けたり、優先度を変えたり、レポートをとること が可能。 PSU_temp_0522 9 9 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 サービスクラスの作成とワークロードの分類(サービスクラスの優先度設定) 処理が実行されるサービスクラスによって、リソースの優先順位を変更可能 – CPU優先度 (AGENT PRIORITY) • • – 設定値: WINDOWS: (-6 ∼ +6), UNIX (+20 ∼ -20) ※UNIXでは”ー20”がもっとも優先度が高い設定 AIX WLMと統合も可能 I/Oプリフェッチ優先度(PREFETCH PRIORITY) • 設定値: HIGH,MIDIUM,LOW ・ AGENT PRIORITY = -20 Service Class WORKLOAD SC_REPORT_H ・ PREFETCH PRIORITY=HIGH REPORT#1 (高優先度) 接続USER=USER50 REPORT#2 (低優先度) SC_REPORT_H SC_REPORT_L SC_REPORT_L 接続USER=USER60 ・ AGENT PRIORITY = +20 ・ PREFETCH PRIORITY=LOW • 優先度の高い大規模表検索処理と、優先度の低い大規模表検索処理を同時に実行する • それぞれの処理が実行されるサービスクラスのAGENT PRIORITYとPREFETCH PRIORITYを変化させて効果を確認する。 PSU_temp_0522 10 10 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 サービスクラスの作成とワークロードの分類(作成例) • SERVICE CLASSとWORKLOADの作成例 サービスクラスの作成 --CREATE SERVICE CLASS ---CREATE SERVICE CLASS -CREATE SERVICE CLASS SC_HIGH AGENT PRIORITY -20; CREATE SERVICE CLASS SC_HIGH AGENT PRIORITY -20; CREATE SERVICE CLASS SC_LOW AGENT PRIORITY +20; CREATE SERVICE CLASS SC_LOW AGENT PRIORITY +20; --CREATE WORKLOAD ---CREATE WORKLOAD -CREATE WORKLOAD WL_HIGH SYSTEM_USER ('USER10') CREATE WORKLOAD WL_HIGH SYSTEM_USER ('USER10') SERVICE CLASS SC_HIGH SERVICE CLASS SC_HIGH ; ; CREATE WORKLOAD WL_LOW SYSTEM_USER ('USER20') CREATE WORKLOAD WL_LOW SYSTEM_USER ('USER20') SERVICE CLASS SC_LOW SERVICE CLASS SC_LOW ; ; ワークロードの作成。 サービスクラスと関連 付ける PSU_temp_0522 11 11 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Managerの利用例 SERVICE CLASSの作成 高優先度(バッチ)および、低優先度(汎用検索)のSERVICE 高優先度(バッチ)および、低優先度(汎用検索)のSERVICECLASSを作成する CLASSを作成する WORKLOADの作成 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ ぞれのユーザーがそれぞれ優先度の異なるSERVICE ぞれのユーザーがそれぞれ優先度の異なるSERVICECLASSで実行されるようにする。 CLASSで実行されるようにする。 THRESHOLDの設定 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 処理の実行を抑制する。 処理の実行を抑制する。 WORK ACTION SETの設定 振り分けられたワークロードをその活動タイプによって更に分類する。 振り分けられたワークロードをその活動タイプによって更に分類する。 AIX WLMとの連携 AIX AIXWLMを利用してより厳密にCPU使用量を制限する。 WLMを利用してより厳密にCPU使用量を制限する。 WLMモニタリング PSU_temp_0522 WLMが提供するモニター機能を利用する。 WLMが提供するモニター機能を利用する。 12 12 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 Threshold(しきい値)評価 例) 見積もりコストが10万を超 えるアクティビティーは実行しな い アクティビティー 実行終了 予測的しきい値 の評価 アクティビティー 実行開始 反応的しきい 値の評価 (進行中) 並列度のしき い値評価 アクティビティー 実行の要求 例) アクティビティの並 列度が10を超えた場合 はキューに待機させる。 例)異常に長い時間がか かっている処理や、検索 結果行が膨大な処理を 検出し停止する PSU_temp_0522 13 13 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 Threshold(しきい値)評価 (例1) 見積もりコストによる閾値 •EstimatedSQLCostが10000を越えるSQLを実行前に予測し、実行させない。 CREATE THRESHOLD th_estcost FOR SERVICE CLASS SC_REPORT2 ACTIVITIES ENFORCEMENT DATABASE WHEN ESTIMATEDSQLCOST > 10000 STOP EXECUTION SERVICE CLASS WORKLOAD Report Query USER=USER20 ; SC_REPORT2 WL_REPORT2 コストの高い処理 [db2inst1]# db2 "select * from db2inst1.stock" [db2inst1]# db2 "select * from db2inst1.stock" SQL4712N The threshold "TH_ESTCOST" has been exceeded. Reason code = "7". SQL4712N The threshold "TH_ESTCOST" has been exceeded. Reason code = "7". SQLSTATE=5U026 SQLSTATE=5U026 PSU_temp_0522 14 14 閾値違反によっ てエラーが返る が接続は保持 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 Threshold(しきい値)評価 (例2) 同時並行実施数による閾値 •Report Queryをユーザー同時並行実行数10で実行 •1アプリケーションが実行され、5アプリケーションがキューで待機し、残りはしきい値違反となり実行されない WORKLOAD Report Query USER=USER30 ×10 SC_REPORT2 WL_REPORT2 THRESHOLD th_queues WHEN CONCURRENTDBCOORDACTIVITIES > 1 AND QUEUEDACTIVITIES > 5 STOP EXECUTION Violation of threshold ×× ×× queue ×× ×× Executing ! PSU_temp_0522 15 15 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 Threshold(しきい値)評価 (例3)結果行数・実行時間(Activity Time)による閾値 •30行以上の結果セットが返す時点でSQLを停止する。 •実行時間の長いクエリー実行が停止される。 DB2 WORKLOAD Report Query USER=USER20 SC_REPORT WL_REPORT THRESHOLD th_sqlrows WHEN SQLROWSRETURNED > 30 COLLECT ACTIVITY DATA WITH DETAILS AND VALUES STOP EXECUTION MEMO: このほかにも、以下の閾値が設定できます。 CONNECTIONIDLETIME SQTEMPSPACE THRESHOLD th_totalacttime WHEN ACTIVITYTOTALTIME > 5 MINUITES PSU_temp_0522 16 16 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Managerの利用例 SERVICE CLASSの作成 高優先度(バッチ)および、低優先度(汎用検索)のSERVICE 高優先度(バッチ)および、低優先度(汎用検索)のSERVICECLASSを作成する CLASSを作成する WORKLOADの作成 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ ぞれのユーザーがそれぞれ優先度の異なるSERVICE ぞれのユーザーがそれぞれ優先度の異なるSERVICECLASSで実行されるようにする。 CLASSで実行されるようにする。 THRESHOLDの設定 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 処理の実行を抑制する。 処理の実行を抑制する。 WORK ACTION SETの設定 振り分けられたワークロードをその活動タイプによって更に分類する。 振り分けられたワークロードをその活動タイプによって更に分類する。 AIX WLMとの連携 AIX AIXWLMを利用してより厳密にCPU使用量を制限する。 WLMを利用してより厳密にCPU使用量を制限する。 WLMモニタリング PSU_temp_0522 WLMが提供するモニター機能を利用する。 WLMが提供するモニター機能を利用する。 17 17 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 Work Action Setを利用する どんなときに使うのか? – WORKLOADよりも更に細かく、”活動のタイプ”によって処理を分類する。 – “活動のタイプ”としてREAD,WRITE,LOAD,DML,DDL,COSTの大きさによって分類できる Work Class Set Cost < 10000 →light Cosrt > 10000→heavy 同じユーザー、アプリの中でも、 クエリーの軽重によって、制御 ポリシーを変えたい SC_REPORT3 Service Sub Class DB2 Report Query 1 -USER=USER40 WORKLOAD WL_REPO RT3 Report Query 2 WORK ACTION SET SSC_LIGHT_R WAS_ REPORT3 Service Sub Class SSC_HEAVY_R -USER=USER40 THRESHOLD th_queues2 Service Class WHEN CONCURRENTDBCOORD ACTIVITIES > 1 AND QUEUEDACTIVITIES >2 STOP EXECUTION • 同じ”USER40”で接続されるアプリから実行される処理を、TIMERONコストが10000以下の処理とそれ以上の処理に分類し、それぞ れSSC_LIGHT_R、SSC_HEAVY_Rというサービス・サブクラスに関連付ける。 •SSC_HEAVY_RにはConcurrent workloadのThresholdを設定したり、優先度を変更するなどして、コストの高い処理の並行度を制限 することができる。 PSU_temp_0522 18 18 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Managerの利用例 SERVICE CLASSの作成 高優先度(バッチ)および、低優先度(汎用検索)のSERVICE 高優先度(バッチ)および、低優先度(汎用検索)のSERVICECLASSを作成する CLASSを作成する WORKLOADの作成 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ ぞれのユーザーがそれぞれ優先度の異なるSERVICE ぞれのユーザーがそれぞれ優先度の異なるSERVICECLASSで実行されるようにする。 CLASSで実行されるようにする。 THRESHOLDの設定 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 処理の実行を抑制する。 処理の実行を抑制する。 WORK ACTION SETの設定 振り分けられたワークロードをその活動タイプによって更に分類する。 振り分けられたワークロードをその活動タイプによって更に分類する。 AIX WLMとの連携 AIX AIXWLMを利用してより厳密にCPU使用量を制限する。 WLMを利用してより厳密にCPU使用量を制限する。 WLMモニタリング PSU_temp_0522 WLMが提供するモニター機能を利用する。 WLMが提供するモニター機能を利用する。 19 19 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 AIX WLMと連携した実行優先度の調整 • DB2サービスクラスを特定のAIX WLMに関連付けることで、AIX WLMを利用したCPUリソース管理が可能 • CPUリソースのhard limit %などの詳細設定可能 • サービスクラス毎のCPU使用率をOSからモニター可能 DB2 WORKLOAD Service Class SC_OLTP_HIGH OLTP WL_OLTP_H USER=USER10 REPORT SC_OLTP_LOW WL_OLTP_L USER=USER20 AIX WLM SERVICE CLASS aixOLTP limit=default share=default aixREPORT (limit= 100,50....10....) • OLTP系のアプリケーションと、REPORT系のアプリケーションを同時に実行 • REPORT系処理がOLTP系の処理に影響を与えないように、REPORT系のCPU割り当てに制限を設ける • AIX WLM の hard limit % を利用し、REPORTに与えるCPU使用量の制限を 変化させてみる (100%, 50%, 20%, 10%, 1%) MEMO: AIX WLMの説明 PSU_temp_0522 20 20 hard limit: リソース競合がなくても有効な絶対的な最大 (%指定) © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 AIX WLMと連携した実行優先度の調整 Wlmstats – AIXコマンドであるwlmstatsを使用すると、AIX WLMによってリソース管理が行われていることが確認 できる CPU% ONLY OLTP CPU% REPORT_hardlimit=10 only OLTP 80 70 CPU% CPU% 60 50 OLTP 40 30 20 10 0 OLTP REPORT 40 30 20 CPU% REPORT_hardlimit=1 limit 100% 40 20 0 PSU_temp_0522 OLTP REPORT CPU% 80 60 limit 1% 80 70 100 CPU% 60 50 10 0 CPU% REPORT_maxlimit=100 21 21 limit 10% 80 70 60 50 40 30 20 OLTP REPORT 10 0 MEMO: AIX hard limitは効果があるが、OLTP処理が終 了しても、あまったCPUリソースをREPORTが使用できな かった。 ただし、処理の実行中に、コマンド(wlmcntrl)で hard limitを変更することは可能。 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 DB2 Workload Managerの利用例 SERVICE CLASSの作成 高優先度(バッチ)および、低優先度(汎用検索)のSERVICE 高優先度(バッチ)および、低優先度(汎用検索)のSERVICECLASSを作成する CLASSを作成する WORKLOADの作成 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ 優先度の高い実行ユーザー(バッチ処理)と、低い実行ユーザー(汎用検索)を振り分け、それ ぞれのユーザーがそれぞれ優先度の異なるSERVICE ぞれのユーザーがそれぞれ優先度の異なるSERVICECLASSで実行されるようにする。 CLASSで実行されるようにする。 THRESHOLDの設定 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 優先度の低い(汎用検索用)サービスクラスに閾値を設定し、システムに影響を与える大規模 処理の実行を抑制する。 処理の実行を抑制する。 WORK ACTION SETの設定 振り分けられたワークロードをその活動タイプによって更に分類する。 振り分けられたワークロードをその活動タイプによって更に分類する。 AIX WLMとの連携 AIX AIXWLMを利用してより厳密にCPU使用量を制限する。 WLMを利用してより厳密にCPU使用量を制限する。 WLMモニタリング PSU_temp_0522 WLMが提供するモニター機能を利用する。 WLMが提供するモニター機能を利用する。 22 22 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 WLMに関連するイベント・モニター 以下の3つのイベントモニターがWLM用に新しく追加された – ACTIVITIES イベント・モニター • SERVICE CLASS, WORKLOAD 等で発生した個別のアクティビティー情報 • COLLECT ACTIVITY DATAキーワードを設定したSERVICE CLASS, WORKLOAD, WORK ACTIONについて情報が取得される。→ 取りたいものだけ取る – THRESHOLD VIOLATIONS イベント・モニター • THRESHOLDS違反のイベント情報 – STATISTICS イベント・モニター • WLM統計情報の履歴分析に利用 CREATE EVENT MONITOR--event-monitor-name--FOR----------------> >--+-| nonwlm-event-monitor |-+-------------------------------->< '-| wlm-event-monitor |----' wlm-event-monitor |--+-ACTIVITIES-----------+-------------------------------------> MEMO: モニターデータの記録先として、 表またはファイルが選べる。(表を選択し 場合、必要な表が自動的に作成されます) イベントモニターのレコードは自動的に消 えないため、定期的にプルーニングする必 要がある。 +-THRESHOLD VIOLATIONS-+ '-STATISTICS-----------' PSU_temp_0522 23 23 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 使用例① Thresholdに抵触したアクティビティーのモニター • イベントモニターによって記録された内容から、閾値違反の記録を確認することができる。 THRESHOLD VIOLATIONSイベントモニ ターとACTIVITYイベント モニターを使用する。 CREATE EVENT MONITOR "THREVIO" CREATE EVENT MONITOR "THREVIO" FOR THRESHOLD VIOLATIONS FOR THRESHOLD VIOLATIONS WRITE TO TABLE ; WRITE TO TABLE ; CREATE EVENT MONITOR "DB2ACTIVITIES" CREATE EVENT MONITOR "DB2ACTIVITIES" FOR ACTIVITIES FOR ACTIVITIES WRITE TO TABLE ; WRITE TO TABLE ; イベントモニター用テーブルに 記録されたモニター情報より、 閾値違反の履歴を情報を抽出 CLIENT ACT WOR QUERY_ THRESH APPL_N ACTIVITY_TYP THRESHOLD_PRE _APP_N IVIT KLOA CARD_ES OLD_MAX TIME_OF_VIOLATION AME E DICATE AME Y_ID D_ID TIMATE VALUE db2bp db2bp db2bp PSU_temp_0522 24 24 1 2 3 READ_DML READ_DML READ_DML 5 5 5 EstimatedSQLCost 1000000 10000 EstimatedSQLCost 1000000 10000 EstimatedSQLCost 1000000 10000 THRESHO LD_ACTIO STMT_TEXT N 2008-01-24-00.21.11.000000 Continue select * from db2inst4.stock 2008-01-24-00.21.38.000000 Continue select * from db2inst4.stock 2008-01-24-00.25.44.000000 Stop select * from db2inst4.stock 閾値違反のアクションとしては、停止と 継続(モニターのみ)が選択できる。 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 使用例② WLM統計情報の利用 • BIN_TOP STATISTIC EVENTMONITORの使用用途 • 実行されたアクティビティーのサマリー統計を分布情報として見る •アクティビティーの活動時間の分布や、コストの分布、キュー滞留時間 の分布 •特定のインターバルで統計情報を取ることができる •詳細な情報を取得したいSERVICE SUBCLASSまたは WORKACTIONに対してCOLLECT AGGREGATE キーワードを指定 NUMBER_IN_BIN CoordActExecTime 実行時間の分布 10000 8000 6000 4000 2000 0 NUMBER_IN_BIN CoordActExecTime -1 2 5 12 29 6 8 1 58 3 69 8 58 99 7 64 7 8 13 1 57 5 32 18 1 84 0 16 2 85 25 13 0 0 1 4 1 0 25 58 36 16 37 1 50 9 03 8 39 00 0 1 3 7 1 7 3 9 9 2 16 2 NUMBER_IN_BIN CoordActEstCost 30000 25000 20000 15000 10000 5000 0 NUMBER_IN_BIN CoordActEstCost -1 PSU_temp_0522 25 25 コストの分布 3 12 44 8 15 7 9 0 2 7 0 0 9 5 5 6 1 99 708 51 5 928 6 84 44 0 03 2 095 2 8 3 1 112 399 41 6 1 -1 1 2 3 5 8 12 19 29 44 68 103 158 241 369 562 858 1309 1997 3046 4647 7089 10813 16493 25157 38373 58532 89280 136181 207720 316840 483283 737162 1124409 1715085 2616055 3990325 6086529 9283913 14160950 21600000 NUMBER_IN_BIN CoordActExecTime BIN_TOP NUMBER_IN_BIN CoordActEstCost 0 -1 95822 1 1580 2 252 3 903 5 1898 8 3684 12 7203 19 8861 29 8813 44 8005 68 6574 103 5333 158 2962 241 1734 369 1361 562 1307 858 821 1309 377 1997 130 3046 37 4647 0 7089 16 10813 1 異常に重いクエリーが実 16493 1 25157 行されていたことがわかる 0 38373 0 58532 0 89280 0 136181 0 207720 0 316840 0 483283 1 737162 0 1124409 0 1715085 0 2616055 0 3990325 0 6086529 0 9283913 0 14160950 0 21600000 0 2 0 0 0 21820 0 2727 27272 13646 0 0 2727 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 参考: Performance ExpertによるWLM情報の参照 Performance Expertを利用すると、グラフィカルにWLMオブジェクトの状況を把握す ることができる。 WLMオブジェクトの定義を 表示 WLMオブジェクトの統計情 報を表示 例)表示したいサービスクラスの 統計情報を表示してみる PSU_temp_0522 26 26 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 参考: Performance ExpertによるWLM情報の参照 表示可能なヒストグラムの一覧か ら、表示したいものを選択する。 PSU_temp_0522 27 27 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。 ビジネス・ユニットの名前 参考: Performance ExpertによるWLM情報の参照 コーディネーター・アクティビティー 実行時間の分布(ヒストグラム)を 表示した例。 過去の統計履歴を表示する ことが可能。 PSU_temp_0522 28 28 © © Copyright Copyright IBM IBM Japan Japan Systems Systems Engineering Engineering Co., Co., Ltd. Ltd. 2008 2008 この文書のデータの利用または公開には、最終ページに記載されている制限事項が適用されます。