Comments
Transcript
1. DB2 9.7 プレ匠塾 ・ © 2009 IBM Corporation
® プレ匠塾 ・ DB2 9.7 一日速習講座 1.DB2 DB2 9.7 最新情報 © 2009 IBM Corporation 内容 DB2 9.7 の特徴 – 低コスト • 優れたデータ圧縮機能 • リソースコストの削減 – 信頼性 • 強固なセキュリティ • 高可用性システムの実現 – 使いやすさ • 他社DBからの移行 • 停止時間なしにデータベースを変更 – 先進性 • XMLデータベース • ワークロード管理 © 2009 IBM Corporation 2 DB2 for Linux UNIX Windows ロードマップ コスト削減 パフォーマンス向上 他社DBMSからの容易な移行 ワークロードの管理 セキュリティー機能の拡張 pureXML サポート 表パーティション 高可用性の実現 オートノミック機能の強化 オートノミック(自律型)機能実装開始 連続可用性の向上 © 2009 IBM Corporation DB2 9.7 のメリットサマリー 低コスト 信頼性 使いやすさ 先進性 運用管理の自動化と ストレージの最小化を 高いパフォーマンスにて実現 業界で実証された、 信頼性、可用性, セキュリティ、連続稼動の 技術 PL/SQLサポート、 開発しやすさ、 運用しやすさ XML分析管理/圧縮等、 業界をリードする データベース・ テクノロジー ビジネス パフォーマンス 向上 データ保管スペースを大幅に削減し、電力消費・冷却 を含むコストを最大75%削減 コスト削減 実現 自動管理機能で管理コストを35%削減 低燃費!より少ないCPU数で高いパフォーマンス © 2009 IBM Corporation 4 1. 低コスト 優れたデータ圧縮機能 低ストレージコストの実現 リソースコストの削減 効率的なストレージ管理 動的SQLコンパイルの オーバーヘッド削減 ディスクI/Oコストの削減 © 2009 IBM Corporation 5 1. 低コスト 優れたデータ圧縮機能 低ストレージコストの実現 リソースコストの削減 効率的なストレージ管理 動的SQLコンパイルの オーバーヘッド削減 ディスクI/Oコストの削減 © 2009 IBM Corporation 6 低ストレージコストの実現 - データ圧縮機能 実データをもとに辞書を作成し、辞書を使用して実データを圧縮 – ディスク・スペースを大幅に削減 – I/Oコストを大幅に削減 – メモリー領域を大幅に削減 – CPUコスト:評価の前に行を展開 – 大規模表の検索性能向上(I/O処理が占める割合が高い) Dictionary Name Dept Salary City Province Postal_Code 01 opoulos Zikopoulos 510 56105 Whitby ONT L4N5R4 02 WhitbyONTL4N5R4 Katsopoulos 500 82475 Whitby ONT L4N5R4 … … Zikopoulos 510 56105 Whitby ONT L4N5R4 Katsopoulos 500 82475 Whitby ONT L4N5R4 … Unique to DB2 Zik (01) 510 56105 (02) Kats (01) 500 82475 (02) … © 2009 IBM Corporation 7 データ圧縮 - 自動圧縮機能 Insert / Update / Load において可能 01011001100011101001001001001 11000100101001001011001001010 0100100100110100101010011100101001111001000100100010010001000100101 01100100101001001010100010010 01110011010001001010010010010010100010010 データ量が増加し、しきい値を超えると、 10111001000100101010010010001001000010010 データベースが自動的に圧縮を開始 01100100101001001010010101010010100010010 01110011010001001010010010010010100010010 ディスク削減(I/Oコスト)はパ フォーマンス向上にも繋がります。 DB2はそれを自動的に実施 10111001000100101010010010001001000010010 01110011010001001010010010010010100010010 10111001000100101010010010001001000010010 01100100101001001010010101010010100010010 01110011010001001010010010010010100010010 10111001000100101010010010001001000010010 Table Compression Ratio LINEITEM 38% 58% (1.5x better) ORDERS 18% 60% (3x better) 他社 DB2 01110011010001001010010010010010100010010 10111001000100101010010010001001000010010 01100100101001001010010101010010100010010 01110011010001001010010010010010100010010 10111001000100101010010010001001000010010 01110011010001001010010010010010100010010 10111001000100101010010010001001000010010 01100100101001001010010101010010100010010 01110011010001001010010010010010100010010 © 2009 IBM Corporation 8 Oracleに対するキーアドバンテージ -圧縮効率の高さ Oracleのデータ圧縮機能はページ単位の辞書によって実現 – 1ページ内で繰り返されるデータを圧縮 – 表全体に渡って出現するデータは、各ページヘッダーに繰り返し記録 DB2は表単位の辞書 – 表全体で圧縮の機会を見るため、圧縮効率が高い • 例: 全顧客の中で同じ誕生日の人はたくさんいるはず Oracleのデータ圧縮機能は列レベルの繰り返しにのみ対応 DB2のデータ圧縮機能は1列内のデータの繰り返しにも対応 DB2のデータ圧縮機能は複数列の一致パターンにも対応 © 2009 IBM Corporation 9 データ圧縮機能でストレージコスト削減 ある国内のお客様プロジェクトでの試算 70%のデータ削減、1.2億円のコスト削減効果 ・DB2データ圧縮機能を使用した場合の削減ストレージ容量(70%削減) 30TB x (100% - 70%) = 9TB ・バックアップTape数の削減、保管スペース節約 ・外部保管に伴う搬送コスト削減 ・オンライン開始遅延の解消 30TB ・計画されていたサーバー増強が不要に 9TB ・ストレージコスト削減 1.2億円のコスト削減 1.2 億円のコスト削減 圧縮前 圧縮後 ストレージDS8000シリーズ、フラッシュコピー先DS4000シリーズ © 2009 IBM Corporation 10 DB2 9.7 業界をリードする圧縮機能の強化 複数の自動索引圧縮アルゴリズム 業界で唯一 の技術 一時表の自動圧縮 一時表 表 表 Order by Order By 一時表 業界で唯一 の技術 ラージオブジェクト(LOB)とXMLの優れた圧縮機能 © 2009 IBM Corporation 11 参考 - LOBデータの基礎表への格納(インラインLOB) インライン格納とは – LOBデータをLOBオブジェクトではなく、基礎表へ格納する保持形態 – 表の作成時に基礎表へ格納するサイズの上限を指定 通常のLOB保持形態 データ・オブジェクト ID … IMAGE(LOB) PR27 … LOB記述子 PR28 … LOB記述子 ACC … LOB記述子 LOBオブジェクト インライン格納を使用したLOB保持形態 データ・オブジェクト © 2009 IBM Corporation ID … PR27 … PR28 … ACC … LOBオブジェクト IMAGE(LOB) LOB記述子 LOBデータが基礎 表に格納されている 12 索引の圧縮 - テスト結果 * Higher is better 平均 36% © 2009 IBM Corporation 13 一時表の圧縮 - テスト結果 一時表圧縮のスペース削減効果 35% 削減 容量 圧縮なし 圧縮あり 一時表圧縮のパフォーマンス効果 5% 高速 時間 © 2009 IBM Corporation 圧縮なし 圧縮あり 14 1. 低コスト 優れたデータ圧縮機能 低ストレージコストの実現 リソースコストの削減 効率的なストレージ管理 動的SQLコンパイルの オーバーヘッド削減 ディスクI/Oコストの削減 © 2009 IBM Corporation 15 効率的なストレージ管理 - 表スペースの縮小と最高水準点の移動 使用していないストレージ領域を解放し、同データベースの他の表スペース を再利用可能 – ALTER TABLESPACE文のREDUCE節が改善され、表スペースの最高 水準点を下げ、表スペース・サイズを縮小すると同時に、使用したページ でデータが入っていない空き状態のフリー・ページを解放することが可能 – ADMIN_MOVE_TABLEストアード・プロシージャーを使用した表の移動 © 2009 IBM Corporation 16 表のオンライン移動機能: ADMIN_MOVE_TABLEプロシージャー 表の読み書きを可能にしたまま、表を移動する ⇒ これまで表の再作成が必要だった変更作業をオンラインで実施できる • 別の表スペースへの移動 • ディスク配置の変更 • 表スペース作成時に表スペース単位で決定される定義の変更 (例:ページ・サイズ、エクステント・サイズなど) • 表の定義情報の変更 例えば… • • • • 索引定義 MDC表の次元列 (MDC表において各行の格納されるブロックを決定する列) パーティション表のレンジ定義 別 表スペース 表スペース データの圧縮/非圧縮/再圧縮 C1 C2 C1 C2 INSERT, DELETE, UPDATE © 2009 IBM Corporation 17 表のオンライン移動機能の仕組み 表スペース1 INSERT, DELETE, UPDATE 表スペース2 ①ターゲット表 ソース表 C1 C2 トリガー ② C1 C2 ② ①ステージング表 表スペース1から表スペース2へ 表を移動させる場合 推奨: ・ソース表にユニーク索引をつける -差分データ更新される行が1つになるため ・作成ディスク・スペース容量を十分に確保する -ソース表に加え、 ターゲット表、ターゲット表に付随する索引、ステージング表の ための領域が必要、また、コピーに伴って必要となるログ量も考慮する必要がある 18 © 2009 IBM Corporation ① 初期化 (INIT) -移動先表、トリガー、 ステージング表作成 -定義情報変更 ④ ③ ① 表移動の5つのステップ ② コピー (COPY) -データ・コピー -変更データ情報を ステージング表格納 ③ リプレイ(REPLY) -ステージング表からの 差分データ反映 ④ 切り替え(SWAP) ※アクセス不可 ⑤ クリーンアップ (CLEANUP) ※keepオプション(元表保持) Note: 制約事項 マテリアライズ照会表、型付表、クラスター表、システム表、ビューの移動はできない 外部キー(参照制約)は、親も子もサポートされていない -外部キーを持つ表を移動する場合には、db2lookコマンドを使用して外部キーをキャプチャーしてから、 外部キーをドロップし、移動先の表で再作成する。 以下のオペレーションによるソースへの変更はターゲットに反映されない ・LOAD ・IMPORT FROM /dev/null ・TRUNCATE © 2009 IBM Corporation 19 1. 低コスト 優れたデータ圧縮機能 低ストレージコストの実現 リソースコストの削減 効率的なストレージ管理 動的SQLコンパイルの オーバーヘッド削減 ディスクI/Oコストの削減 © 2009 IBM Corporation 20 OLTPの性能向上 – ステートメント・コンセントレーター 従来の課題 – リテラル指定のステートメントは、コンパイルに高いオーバーヘッドを発生 • コンパイル済みのステートメントを再利用するためには、完全にステートメント一致が必要 • 検索条件の値に関わらず同じアクセスプランが選択されるべきステートメントについては パラメーターマーカーの利用が強く推奨されていた ■リテラルの例 String selectString = “SELECT COL1 FROM TABLE1 WHERE COL2=10 and COL3=’AAA’” Stmt.executeQuery(selectString); ■パラメーターマーカーの例 PreparedStatement selectVal = con.prepareStatement ( “SELECT COL1 FROM TABLE1 WHERE COL2=? and COL3=?”); selectVal.setInt(1, 10); selectVal.setString(2, “AAA”); selectVal.executeQuery(); OLTPでもリテラルを使わざるを得ない事情がある場合に は、高いCPUオーバーヘッドを受け入れざるを得なかった © 2009 IBM Corporation 21 動的SQLコンパイルのオーバーヘッド削減 ステートメント・コンセントレーター – リテラルをパラメーターマーカーに置換 • section sharing の増加 および コンパイルの減少 – コンパイルステートメント数の減少 SELECT BALANCE WHERE ACCOUNT_ID = 12345 SELECT BALANCE WHERE ACCOUNT_ID = 11111 SELECT BALANCE WHERE ACCOUNT_ID = 54321 Compile SELECT BALANCE WHERE ACCOUNT_ID = 12121 SELECT BALANCE WHERE ACCOUNT_ID = ? © 2009 IBM Corporation Execute 22 ステートメント・コンセントレーターの効果 19倍 高速 * Lower is better © 2009 IBM Corporation 23 1. 低コスト 優れたデータ圧縮機能 低ストレージコストの実現 リソースコストの削減 効率的なストレージ管理 動的SQLコンパイルの オーバーヘッド削減 ディスクI/Oコストの削減 © 2009 IBM Corporation 24 ディスクI/Oコストの削減 スキャン・シェアリング – 他のクエリーによってバッファー・プール上に読み込まれたページをうまく 活用し、同じディスク読み取りが何度も発生しないようにする – I/Oの量を大幅に削減し、クエリーの応答時間、スループットともに向上 – 常に先頭からスキャンを開始するのではなく、他のアプリによる現在の スキャンの位置に応じて、スキャンの開始位置を変更する – Scan Sharingの有効な処理をDB2が自動的に判断するため、特別な 設定は不要 © 2009 IBM Corporation 25 スキャン・シェアリング バッファープール 他のデータで 押し出されたデータを 上書きされる 再読込 Table A Table B Table C ユーザー 1 データ走査 ユーザー 2 データ走査 © 2009 IBM Corporation 26 スキャン・シェアリング バッファープール スキャン2は 現在のスキャン1 の場所から スキャン開始 ディスクアクセス の効率化 Table A Table B Table C ユーザー 1 データ走査 ユーザー 2 データ走査 © 2009 IBM Corporation 27 スキャン・シェアリングの効果 100 並列の表スキャンを実行し、比較 14倍 高速 時間 スキャンシェアリング なし スキャンシェアリング あり * Lower is better © 2009 IBM Corporation 28 2. 信頼性 強固なセキュリティ 細分化された権限 ネットワークデータのセキュリティー 容易な高可用性システムの実現 HADRの機能拡張 © 2009 IBM Corporation 29 2. 信頼性 強固なセキュリティ 細分化された権限 ネットワークデータのセキュリティー 容易な高可用性システムの実現 HADRの機能拡張 © 2009 IBM Corporation 30 DB2 セキュリティ機能概要 私はXXです。 USER user1 PASSWORD a@x?s 1. 認証 ・・・ 本人確認 成りすましの防止 ・・・ ・・・ 認証OK! 2. 権限・特権 アクセス権 あります か? 適切なアクセス権限、 実行権限の付与 SYSADM アクセス権は ありません。 DBADM SYSCTRL SYSMAINT 3. 監査 5.2 通信暗号化 ACCESS ネットワーク・トラフィッ ク上のデータ暗号化 OK ----------------------------------------------------------------------- 活動履歴の取得、 解析 password ACCESS ;@[-^*;:@_?>;sfd OK -032;l/mg,fdsl; Fdsa;;lkb[¥¥-:o;/.; © 2009 IBM Corporation 6. トラスティッド接続 4. LBAC 3層アプリケーションでの セキュリティー強化 行単位、列単位の アクセス制御 アクセスできる のはここまでで す。 5.1 データ暗号化 格納データの暗号化 ファイルの暗号化 31 強固なセキュリティー 権限の分離 – DB管理者とセキュリティー管理者の権限を分離 必要以上の権限をユーザーやグループに与えないようにする • SYSADM、SECADM、DBADMの明確な役割分担 ネットワークを流れるデータのセキュリティー強化 – AES暗号化 256bit アルゴリズムをサポート – SSL通信の設定を簡易化 © 2009 IBM Corporation 32 強固なセキュリティー - 権限の分離 データベース × インスタンス SYSADM システム管理 V9.1 ~ DATAACCESS ACCESSCTRL SECADM セキュリティー管理 DBADM データベース管理権限 WLMADM SQLADM EXPLAIN × SYSCTRL システム制御 SYSMAINT システム保守 SYSMON システム・モニター SYSADMには暗黙的にDBADM権限が付与されない SYSADMはSECADM、DBADM権限を付与できない © 2009 IBM Corporation 33 SSL による通信暗号化 ① クライアントからSSL接続が要求される ② サーバーがサーバーの公開鍵を含む証明書を送信する。 ③ クライアントがサーバーの証明書の妥当性を検証する。 ④ クライアントが共通鍵を作成し、サーバーの公開鍵で暗号化する。 ⑤ 暗号化された共通鍵をサーバに送信する。 ⑥ サーバーがサーバーの秘密鍵を用いて共通鍵を復号化する。 ⑦ クライアント・サーバ間で共通鍵を用いてセキュアーな通信を行う ①接続要求 Signer certificate database 共通鍵生成 サーバー証明書 ②証明書送信 サーバー公開鍵 ③妥当性検証 ⑥サーバーの秘 密鍵で復号化 iKeyman tool Digital certificates database iKeyman tool ④サーバーの公 開鍵で暗号化 暗号化した共通鍵 暗号化した共通鍵 ⑤暗号化された 共通鍵を送信 ⑦通信の暗号化 共通鍵 © 2009 IBM Corporation 共通鍵 34 2. 信頼性 強固なセキュリティ 細分化された権限 ネットワークデータのセキュリティー 容易な高可用性システムの実現 HADRの機能拡張 © 2009 IBM Corporation 35 HADR(High Availability Disaster Recovery) DB2の機能だけで更新内容を別サーバー上のDBへ自動反映可能 ⇒ 高可用性ソリューション、災害対策ソリューションの実現 障害発生時の高速な切り替えを実現 ⇒ ダウンタイムの最小化 プライマリDBで実行されたトランザクションが 完了、ログがディスクに書き込まれるときに スタンバイDBへもログ転送を行う • スタンバイへのアクセス不可 アプリケーション プライマリーDB db2hadrp db2agent バッファー・プール ログ・バッファー db2pclnr Log writer データ・ページ (表や索引のデータ) © 2009 IBM Corporation Log reader ログ・ファイル スタンバイDB TCP/IP db2hadrs Replay Replay Replay Replay ログ受信バッファー ログ受信バッファー バッファー・プール Log writer Log reader ログ・ファイル db2pclnr データ・ページ (表や索引のデータ) 36 HADR の機能強化 - スタンバイ・ノードでのデータ参照(FixPackで提供予定) Read/Writeクライアント Clients Read-Only クライアント プライマリ ログ スタンバイ Clients HADR スタンバイを高可用性や災害対策の目的だけでなく、Read Only アプリからのアクセス にも使用可能 – レポーティングやDSS/BIのワークロード負荷をスタンバイ・ノード側にオフロード – スタンバイ側に正しく更新データが反映されていることの確認 HADRスタンバイの高可用性や災害対策のための役割を損ねることなく、Read Only のワーク ロードをスタンバイ側で実行 – HADRを停止せずにスタンバイ側データベースの参照が可能 HADRシステム全体のキャパシティを向上させ、スタンバイ・システムへの投資対効果が 高まる © 2009 IBM Corporation 37 3. 使いやすさ 既存のスキルをDB2で利用 Oracle からの移行を容易に 停止時間なしにデータベースを変更 データベースの構成変更を容易に オンライン表移動 © 2009 IBM Corporation 38 3. 使いやすさ 既存のスキルをDB2で利用 Oracle からの移行を容易に 停止時間なしにデータベースを変更 データベースの構成変更を容易に オンライン表移動 © 2009 IBM Corporation 39 DB2 9.7の特徴 Oracle 囲い込みからの開放 Oracle 向けの特殊なスキル – Oracle 固有のPL/SQL、SQL、データ型、ファンクション – Oracle 固有のロールバックセグメント、ロック機構 Oracle PL/SQL NUMBER “DATE” VARCHAR2 CONNECT BY, DBMS_OUTPUT SQL ’92, … INTERVAL, .. SQL/PSM (aka SQL PL) recursion, .. SQL Standard DB2 GRAPHIC SELECT FROM INSERT DB2のサポート範囲の拡大 © 2009 IBM Corporation 40 Oracle からの移行を容易に Oracle のデータタイプをサポート → 開発者は今まで通りのスキルでアプリケーションを構築可能 OracleのSQLがそのまま実行可能 → OracleのSQLを内部的にDB2のSQLに書き換るのではなく、 そのまま実行できるのでパフォーマンス性能に優れる Oracleのデータベースを簡単に移行可能 → OracleのデータベースをGUI上でコピー&ペースト可能 読み取り一貫性をサポート → ロック取得方法の違いによるアプリケーションの改修も必要なし PL/SQL NUMBER Oracle “DATE” 業界標準 VARCHAR2 SQL/PSM (aka SQL PL) SQL ’92, … recursion, .. CONNECT BY, Oracleのスキルを活かした DB2 開発・運用が可能 DBMS_OUTPUT © 2009 IBM Corporation 41 Oracle のスキルを活かす DB2 はOracleのPL/SQL をはじめとする、関数や型をサポート デベロッパーは現行スキルを活かし、DB2 をすぐに利用可能 アプリケーションはDB2上でもそのまま実行可能 Oracle DB2 V9.7 Concurrency Control そのまま Oracle SQL そのまま PL/SQL そのまま Packages そのまま Built-in packages そのまま JDBC そのまま SQL*Plus Scripts そのまま © 2009 IBM Corporation 42 PL/SQLサポート内容 基本 サポートしている 一部をご紹介して います。 基本構文 制御文 LOOP,例外処理… エラー処理 関数(CREATE or RAISE… REPLACE) 無名ブロック 形式・型変換関連 関数 (TO_CHAR, TO_DATE…) パッケージ 日付操作関連 プロシージャー (EXTRACT, トリガー ADD_MONTHS…) 文字列操作関連 (INITCAP, RPAD, LPAD…) その他 (DECODE, NVL…) © 2009 IBM Corporation データタイプ 暗黙的な キャストも 強化 NUMBER, VARCHAR2,DATE, BOOLEAN, %TYPE・%ROWTYPE コレクション(VARRAY, INDEX BY ), REF CURSOR ビルトイン・パッケージ DBMS_OUTPUT, DBMS_PIPE, DBMS_ALERT, UTL_FILE, DBMS_SQL… その他 データディクショナリ, 自律型トランザクション TRUNCATE TABLE… 43 DB2 (V9.5以前)の読み取り一貫性 DB2は最新のデータを読む – 参照処理は、更新処理がコミットされるまで待つ A TRN1 B UPDATE C C’ UPDATE COMMIT D D’ E TRN2 TRN2は、TRN1が COMMITするまで WAIT SELECT F 読むデータは常に最新だが、参照処理がロック待機する可能性あり © 2009 IBM Corporation 44 Oracleの読み取り一貫性 (Read Committed) マルチ・バージョン一貫性制御 (Multi-Version Concurrency Control) – 更新処理により、更新前イメージが専用の領域へ書き出される – 参照処理はコミットを待たずに更新前イメージを読む • Select発行時点でコミット済みのデータを読む • 下記の例では、UPDATEがCOMMITされていたとしてもTRN2は更新前データを読む SCN=10 TRN1 UPDATE A B SCN=110 UPDATE SCN=98 UNDOセグメント C C’ C D D’ D SCN=29 SCN=100 TRN2 SELECT E F UNDOセグメント書き込みのオーバーヘッドがあり、読んだデータも最新とは限らないが、 参照処理のロック待機は発生しない © 2009 IBM Corporation 45 DB2 9.7の読み取り一貫性(Currently Committed) 未コミットの更新があってもロック待機をしない – 参照処理は、更新処理に伴うロックの開放を待たず、更新前のデータ(コミット 済みの最新データ)をログ(ログバッファー)から読む – 常に最新のコミット済みデータを読む A B トランザクションログ (ログバッファー) UPDATE C C’ C UPDATE D D’ E D TRN1 TRN2 SELECT F • 読むデータは常に最新で、かつ参照処理のロック待機も発生しない • ログを使って実現 • 管理のオーバーヘッド、性能のオーバーヘッド無し • 余分なメモリーやディスクの消費無し ( undo 領域不要 ) © 2009 IBM Corporation 46 Currently Committed の効果 スループットが 28% 上昇 * Higher is better Currently Committed OFF Currently Committed ON Oracle用に作成されたOLTP アプリケーションを CC=OFF および CC=ON でテスト © 2009 IBM Corporation 47 SQL*Plusスクリプト実行 / PL/SQLデバッグ CLPPlus (DB2CLPとは別に追加 されたインターフェース) – SQL*Plus コマンド互換 – 変数の取り扱い – フォーマッティング – 簡単なレポート作成 IBM Data Studio 、 IBM Optim Development Studio (データベース管理者 およびアプリケーション開発者のための 統合されたクライアント・ツール) – PL/SQLのデバッグ – Eclipse ベースでの容易な操作性 – XML DB 開発 © 2009 IBM Corporation 48 Data Movement Tool Oracle Database DB2 Database 様々なDBに対応 Oracle SQL Server Sybase MySQL PostgreSQL Ingres MS Access DB2 Linux, UNIX, Windows DB2 for z スキーマを選択し、Extract Dataボタンを押す。 © 2009 IBM Corporation Deployボタンを押すと、DB2 へのオブジェクト・データ移行 が開始 49 統合されたツールでコラボレーションを推進 “我社の開発チームは以前より業務のスピードが20%から50%程度早くなりました.” —Janick Bernet, Developer, Swiss ASP データ管理ツールとの統合 – IBM InfoSphere Data Architect*, IBM Data Studio, IBM Optim Development Studio 設計 データライフサイクルの全フェーズでツール提供 役割をまたがったコラボレーションが実現 – 業務アナリスト、データベースアーキテクト、 DBA, アプリケーション開発者、など 開発 最適化 モデル ポリシー メタデータ 全ての主要なプラットフォームをサポート – DB2, Informix, Oracle , SQL Server, etc. 運用 デプロイ *旧製品名 Rational Data Architect © 2009 IBM Corporation 50 Oracle から DB2 9.7 への移行手順 項目 1 1-1 1-2 1-3 1-4 2 内容 データベースの移行 OracleよりDBオブジェクトを抽出する DB2データベースを作成する DBオブジェクト(テーブル、ビュー等)を移行する Oracleよりデータを抽出しDB2に移行する プロシージャー移行/テスト ・「UDF(ファンクション)、ストアード・プロシージャー、トリガー」の PL/SQLコードを使用してDB2に作成する 3 タスクの自動化に IBM提供ツールを利用可能 DB2 9.7の Oracle対応機能 アプリケーション移行/テスト ・「Java、Pro*C、バッチ、シェル」のコードをDB2に移行する ・その他非互換箇所のコードを修正する 工数の削減にパートナー様 提供のツールを利用可能 DB移行の工数削減 •DB2 9.7 の Oracle 対応機能により Oracle のオブジェクトをそのまま DB2 に作成 •DB のオブジェクト/データ抽出からデータロードまでツールによる自動化が可能 © 2009 IBM Corporation 51 ベータテスト事例ご紹介 1/3 ベータプログラムは昨年夏より実施。 – 日本 約13社 (お客様 5社、ISV/パートナー様 8社) – 世界 約400社 (テストレベルは多様 。 導入だけ~移行実施中まで) 日本のベータテスト状況 (一部ご紹介) お名前 テスト目的 テスト対象 テスト結果 A社様 システム更改に 伴い、他社DBから DB2への移行を、 TCO削減のために 検討 DDL 約30本PL/SQL 約10本 Pro*C 約10本 • PL/SQLのクイックアセスでほぼ100%互換 • DDLはDB2でほぼそのまま稼動 - 表スペース定義等の物理設計部分、 文字列長のバイト指定は除く • PL/SQLもほぼそのまま稼動 - プロシージャー内でのプロシージャー定義、 プロシージャーのオーバーライドなど、8項目のみ 改修 • Pro*Cについては、SQL以外は、DB2組込みSQLへ の移行が必要 • DB2 HADRによる高可用性も評価が高く、 移行 検討中 © 2009 IBM Corporation 52 ベータテスト事例ご紹介 2/3 お名前 テスト目的 テスト対象 テスト結果 B社様 ソリューションパッケ ージの新規採用に 伴い、パッケージの DB2化を検討 PL/SQL 約70本 • DB2 9.7でも必要な改修ポイント - ローカル・プログラム(プロシージャ /関数内で定義されているプロシージ ャ/関数) - 関数のOUTパラメータ - コレクション型の宣言がパッケージ 部以外にある グランドユ ニット様 (パートナー 様) 移行支援サービスを 展開するパートナー としてのスキル習得 自社移行検証用 PL/SQLとPro*C • DB2 9.7でも必要な改修ポイント - 関数 (SYS_CONTEXTなど) - 複数表参照時のFOR UPDATE句 - 複数条件のトリガー、など • ローカル・プログラムのグローバル化など 、一括変換を行う移行ツールやサービスを 提供予定 © 2009 IBM Corporation 53 ベータテスト事例ご紹介 3/3 お名前 テスト目的 テスト対象 テスト結果 エヌアイシー・ インフォトレー ド株式会社様 自社パッケージの移行 検証を実施 PL/SQL約160本 • DB2 9.7でも必要な改修ポイント - ローカル・プログラムを多用しているため (約60%) 、プログラム構造の変更が必要 (パッケージ化など) - BOOLEAN値判定の’=TRUE’追加など 細かい書き換えが多数 • 現在移行中 株式会社ワ ークスアプリ ケーションズ 様 自社パッケージの適用 検証を実施 PL/SQL 416本SQL 45888本 「Oracle 向けのクエリーをそのまま流してみる、というテストを 行なったところ、期待以上の動作でした。」 — 株式会社ワークスアプリケーションズ 技術基盤開発グループ 工藤 雅人氏 http://www.ibm.com/software/jp/data/breakfree/migrate.html お手持ちのPL/SQLのDB2 9.7 互換性アセスや、DB2への移行ご支援など、 メニューがございますので、ぜひ、ご相談ください。 © 2009 IBM Corporation 54 3. 使いやすさ 既存のスキルをDB2で利用 Oracle からの移行を容易に 停止時間なしにデータベースを変更 データベースの構成変更を容易に オンライン表移動 © 2009 IBM Corporation 55 停止時間なしにデータベースを変更 進化するビジネスニーズに対応してデータベーススキーマを 簡単に更新 – データベース停止時間を回避 リアルタイムに変更を実施 表の各属性の変更 – 列定義 (データ・タイプの変更、列の追加と削除) – 索引定義 – MDC表の次元キー (MDC表での各行の格納されるプロックを決定する列) パーティション表のレンジ定義 データの圧縮/非圧縮/再圧縮 表の読み書きを可能にしたまま、表を移動 – 複数のテスト環境を簡単に設定可能 © 2009 IBM Corporation 表スペース INSERT, DELETE, UPDATE C1 C2 別 表スペース C1 C2 56 4. 先進性 XMLデータベース XML活用の次のステージへ ワークロード管理 きめ細かなトランザクションの コントロール © 2009 IBM Corporation 57 4. 先進性 XMLデータベース XML活用の次のステージへ ワークロード管理 きめ細かなトランザクションの コントロール © 2009 IBM Corporation 58 業界をリードするXMLデータのトランザクションパフォーマンス 容易な開発と統合 – 複雑なリレーショナルスキーマ不要 – データ読み出し時のパース不要 効率的なストレージ DB2 – 1TBのXMLベンチーマーク・データの 格納に440GB 圧倒的なパフォーマンス – 1TBのXMLベンチーマークで 6,763 トランザクション/秒 “(DB2の)pureXMLの処理能力によって、わが社のお客様のシステムは5倍から10倍も パフォーマンスアップしました.” —Keith Feingold, CEO, Skytide © 2009 IBM Corporation 59 XML活用の次のステージへ データウェアハウスでXMLデータを活用 XMLデータの業務の詳細情報を活用 – XMLデータの分析系ワークロードで高いパフォーマンス – データウェアハウスでXMLデータの容易な利用 – マルチノード、レンジパーティション、ビュー、 MDC(multi-dimensional clustering) でのXML の利用が 可能に – 機能拡張されたXMLデータのインデックス、データ圧縮 “DB2の新バージョンのデータウェアハウス機能は卓越したものです” —Jean-Marc Blaise, Venedim “XMLデータの照会、挿入の並行処理により、我が社の研究者達は必要なデータをスピーディに入手 することができるようになるでしょう。” —Tom Holdener, BJC HealthCare © 2009 IBM Corporation 60 4. 先進性 XMLデータベース XML活用の次のステージへ ワークロード管理 きめ細かなトランザクションの コントロール © 2009 IBM Corporation 61 ワークロード管理 - Workload Manager (WLM) きめ細かいワークロードの識別・分類 DB2エンジンに組 み込まれた機能 閾値による制御 (コスト、実行並行度、実行時間 etc) 実行優先度の制御 Workload Manager 目的に応じたレポーティング ワークロード 識別・分類 WORKLOAD SERVICE CLASS 目的ごとに レポート 実行優先度の制御 WORKLOAD 暴走クエリーの閾値制御 © 2009 IBM Corporation 62 ワークロード管理 - Workload Manager (WLM) ワークロードをルール付けや閾値により制御可能 – 大規模な検索処理が実行される前に停止したり、並行実施数を制限したり、途中 で停止するなどして、他の処理への影響を抑えることが可能 →V9.7ではアクティビティー・ベースの閾値が強化 複数のワークロードの優先順位を制御 – 比較的重い集計処理などが複数競合するパターンでは、WLM のしきい値を調整 することで、CPU使用率が振り切れることなく、優先順位をつけ実行が可能 – オンライントランザクションと集計処理が競合するパターンでは、DB2 WLM と AIX WLM の” CPU hard limit” を設定することで、集計処理のCPU使用率を 抑え、オンライントランザクションを優先的に実行することが可能 →V9.7ではLinux WLMでも可能 ワークロードのモニタリング – イベントモニターやPerformance Expert を使用することで、ワークロードの モニタリングが可能 © 2009 IBM Corporation 63 まとめ 1. 低コスト ・優れたデータ圧縮 ・リソースコストの 削減 ・表スペースの 自動解放 ・ステートメン ト・コンセント レーター ・スキャンシェア リング © 2009 IBM Corporation 2. 信頼性 ・ 細分化された権限 ・ネットワークデータ のセキュリティー ・容易な高可用性 システムの実現 ・HADRの機能拡張 3. 使いやすさ ・Oracle からの移行 を容易に ・停止時間なしに データベースを変更 4. 先進性 ・XML活用の次の ステージへ ・ワークロード管理 きめ細かな トランザクション のコントロール 64 Web Renewal! IBM Information Management の製品ページ、技術情報ページが 新しくなりました! IM製品情報 IM developerWorks 特徴 • 以前のIMページに比べ、情報量 が大幅UP!しました(25%増量) • IBM テクニカルライターによる 質の高い技術記事を厳選 しました • IM製品群は13のサブセグメント に分類され、よりアクセスが しやすくなりました IM製品情報へは→ IM developerWorksへは→ © 2009 IBM Corporation 65 DB2エバリュエーション・ガイドブック © 2009 IBM Corporation 66