...

1. DB2 9.7 プレ匠塾 ・ © 2009 IBM Corporation

by user

on
Category: Documents
102

views

Report

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
Fly UP