Oracle Enterprise Manager 12cによるデータベース管理...•ASH分析 AWR / ADDM...
Transcript of Oracle Enterprise Manager 12cによるデータベース管理...•ASH分析 AWR / ADDM...
Oracle Enterprise Manager: Empowering IT to Drive Business Value
Oracle Enterprise Manager 12cによるデータベース管理
日本オラクル株式会社
Oracle Enterprise Manager Technology Day
以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。
Copyright© 2011, Oracle. All rights reserved. 2
目次
• パフォーマンス管理
• ライフサイクル管理
• テストデータ管理
Copyright© 2011, Oracle. All rights reserved. 3
パフォーマンス管理
Copyright© 2011, Oracle. All rights reserved. 4
パフォーマンス管理 主な新機能
• ASH分析
• 期間比較ADDM
• リアルタイムADDM
Copyright© 2011, Oracle. All rights reserved. 5
データベースのパフォーマンス管理 Diagnostics Pack / Tuning Pack
問題の解決
解決方法の発見 要因の分析 問題の発見
• データベース特有の指標から 性能問題を発見
• 現在のセッションを分析し、遅延の原因になっているセッションやSQLを即座に特定
• データベース/SQLのチューニング アドバイスを取得、実装
• 定期レポートで経過観察
• データベース総合診断結果を参照し、 ボトルネック発生個所や影響範囲を把握
データベースのパフォーマンス問題の発見・分析・解決・予防を シームレスに実現
Copyright© 2011, Oracle. All rights reserved. 6
データベースのパフォーマンス管理(~11g) Diagnostics Pack / Tuning Pack
問題の解決
解決方法の発見 要因の分析 問題の発見
• データベース特有の指標から 性能問題を発見
• 現在のセッションを分析し、遅延の原因になっているセッションやSQLを即座に特定
• データベース/SQLのチューニング アドバイスを取得、実装
• 定期レポートで経過観察
• データベース総合診断結果を参照し、 ボトルネック発生個所や影響範囲を把握
データベースのパフォーマンス問題の発見・分析・解決・予防を シームレスに実現
主な機能
• メトリック収集
• アラート通知
• 修正処理 etc
主な機能
• Active Session History
• AWR / ADDM
• SQLチューニングセット
• リアルタイムSQL監視
• ハング分析 etc.
主な機能
• チューニングアドバイザ
• アクセスアドバイザ
• メモリアドバイザ(※1)
• セグメントアドバイザ(※1) etc.
主な機能
• レポート機能
※1・・DB基本機能のためPack不要
Copyright© 2011, Oracle. All rights reserved. 7
データベースのパフォーマンス管理(12c) Diagnostics Pack / Tuning Pack
問題の解決
解決方法の発見 要因の分析 問題の発見
• データベース特有の指標から 性能問題を発見
• 現在のセッションを分析し、遅延の原因になっているセッションやSQLを即座に特定
• データベース/SQLのチューニング アドバイスを取得、実装
• 定期レポートで経過観察
• データベース総合診断結果を参照し、 ボトルネック発生個所や影響範囲を把握
データベースのパフォーマンス問題の発見・分析・解決・予防を シームレスに実現
主な機能
• メトリック収集
• メトリック拡張(※2)
• アラート通知
• インシデント管理(※2)
• 修正処理 etc
主な機能
• Active Session History
• ASH分析
• AWR / ADDM
• 期間比較ADDM
• リアルタイムADDM
• SQLチューニングセット
• リアルタイムSQL監視
• ハング分析 etc.
主な機能
• チューニングアドバイザ
• アクセスアドバイザ
• メモリアドバイザ(※1)
• セグメントアドバイザ(※1) etc.
主な機能
• レポート機能
• BI Publisher連携 ※1・・DB基本機能のためPack不要
※2・・「フレームワーク」セッション参照
Copyright© 2011, Oracle. All rights reserved. 8
ASH分析 背景
• Active Session History (ASH)
• Oracle Database 10g より実装
• アクティブなセッションに関する情報を1秒おきにサンプリング
• 待機イベント、SQL ID、サービス名、モジュール名など数十種類
• これまでのASHについてよく聞かれる質問
• 期間を(5分固定ではなく)自由に選択できませんか?
• ASHレポートもグラフィカルな画面でみたいのですが?
• ピボットのように様々な角度から分析できませんか?
→ データベースのアクティビティを即座に把握するのに極めて効果的
EM11gのASH画面
Copyright© 2011, Oracle. All rights reserved. 9
ASH分析
Copyright© 2011, Oracle. All rights reserved. 10
表示する期間を任意の単位で設定
• ドラッグで期間の変更が可能 1
画面の保存とメール
• HTML 形式(アクティブレポート)での保存とメール
2
さまざまな角度からの分析(次ページ) 3
※従来のASH画面も存続
→ Active Session History分析のための様々な追加機能を実装
ASH分析
• 複数のディメンションを組み合わせてフィルタリングすることも可能
積み重ねグラフを様々なディメンションで表示
• デフォルトでは Wait Class で表示
4
Copyright© 2011, Oracle. All rights reserved. 11
ASH分析
ツリーマップでの表示
• 表示モードは Simple あるいは Advanced
• Advanced では、カスタマイズが可能
5
Copyright© 2011, Oracle. All rights reserved. 12
ADDM 背景
パフォーマンス 問題発覚
Statspack設定
Statspack レポート分析
• 問題発生時のみ
• 事後対応
• 人手による分析
分析 分析 分析
• 24時間365日、1時間おきに自動分析
• パフォーマンス問題の原因をいち早く発見
• オラクルの分析ノウハウを利用可能
9iまでのパフォーマンス診断手法 10g以降のパフォーマンス自動診断
xx月03日 13:00
xx月03日 14:00
xx月03日 15:00
xx月01日 18:00
xx月01日 15:00
xx月01日 16:00
xx月01日 17:00
xx月01日 18:00
Copyright© 2011, Oracle. All rights reserved. 13
ADDM 背景
• 自動データベース診断モニター(ADDM)
• 一定期間のパフォーマンス問題を診断するエンジン
• 診断のタイミングと期間
• AWRスナップショットの定期取得のタイミングで起動し
直前の取得間隔における性能を診断
• 任意の期間を指定して診断させることも可能
• 診断内容
• 発見された症状、その原因と対処策、影響を
受けたセッションやSQLなどを提示
EM11gのトップページ
課題点
→ 診断結果が「いつも通り」なのか「いつもと違う(問題がある)」のか判別が難しい
→いつもの状態と「何が違うのか」、比較しづらい
Copyright© 2011, Oracle. All rights reserved. 14
期間比較ADDM
• 2つのAWRスナップショット期間を比較し診断
• パフォーマンス変化の原因を特定し、影響を測定し、関係づけ
• 原因: ワークロードの変化、データベース構成の変更
• 影響: SQL性能の低下、リソース(CPU, I/O, メモリ, インターコネクトのスループット等)のひっ迫
対応方法の推奨と、それによる改善の度合いを提示
AWRスナップショット期間1
(11/21 22:00~23:00)
AWRスナップショット期間2
(11/14 22:00~23:00)
診断結果 期間比較ADDM
カーソル共有の問題
SQLの性能劣化
I/Oボトルネック
SGAサイズの不足
Copyright© 2011, Oracle. All rights reserved. 15
期間比較ADDM
Copyright© 2011, Oracle. All rights reserved. 16
• 二つの期間のリソース使用状況を比較:CPU, メモリ, I/O, インターコネクト
• 二つの期間のDB時間の推移をグラフ表示
SQLの共通性についてもレポート:「どれくらいSQLが似ているか?」
診断結果はアクティブレポートとして保存可能
期間比較ADDM
Copyright© 2011, Oracle. All rights reserved. 17
• バッファキャッシュが30%小さい
• 新規SQLが10%が etc.
期間比較ADDM 診断の仕組み
2期間における変更点を検出 • 構成上の変更、ワークロードの違い
パフォーマンスの違いを計測
• DB時間をパフォーマンス測定の基準として使用
根本的な原因を特定 • 変更点とパフォーマンスの差異とを関連付け
• トップSQLが45%増加
• I/O読み取りが55%増加 etc.
• バッファキャッシュの減少によりI/Oが増加
Copyright© 2011, Oracle. All rights reserved. 18
期間比較ADDM 「関連付け」の観点の例
ページング
• 物理メモリのサイズ
• SGA/PGA Target
ハードパース・ソフトパースの時間
• カーソル共有
• 共有プールのサイズ
• セッションカーソルキャッシュ
SQLの性能劣化
• オプティマイザ関連パラメーター
• SQLパラメーター
一時領域へのI/O
• PGA Aggregate Target
Copyright© 2011, Oracle. All rights reserved. 19
リアルタイムADDM 背景
• もしデータベースが過負荷状態になったら・・・
• データベースがハング状態に。ログインすらできない!
• 再起動するほかないのだろうか?
• 進行中のトランザクションは失われてしまう
• 診断用の情報も失われてしまう
• せめてkillすべきセッションがわかれば!
Copyright© 2011, Oracle. All rights reserved. 20
リアルタイムADDM
Copyright© 2011, Oracle. All rights reserved. 21
リソースのひっ迫やデッドロック等を総合的に診断 対応方法の推奨
ハングした、あるいは極端に遅い データベースをリアルタイムで分析 パフォーマンスへの影響度を数値化
リアルタイムADDM 仕組み
エージェントを使用し、SQLレイヤーを迂回して軽量な接続を確立
同時に、JDBC接続を試行
双方の接続から得られる結果をもとに診断
EM エージェント
JDBC接続
診断用接続
Oracle Database ADDM 分析
Hangs
Latches
Deadlocks
Copyright© 2011, Oracle. All rights reserved. 22
リアルタイムADDM 診断される主な問題
リソースのひっ迫
• CPUの大量消費
• メモリーページング
• 過大なI/O
• インターコネクト
ハング
• Instance Shutting Down
• ブロッキングセッションの分析
• Memory Pool Flushing
• ASMのハング
メモリの問題
• ライブラリキャッシュ
• メモリアロケーション
• PGAの過大な増加
リソース制限
• セッション数
• プロセス数
デッドロック
Copyright© 2011, Oracle. All rights reserved. 23
ライフサイクル管理
ライフサイクル管理 主な新機能
• データベースオブジェクトのライフサイクル管理
• 変更計画
• データ比較
• DBソフトウェア・OSの構成管理
• 構成比較
• コンプライアンス標準
• トポロジ
• 作業の自動化(プロビジョニング)の強化
Copyright© 2011, Oracle. All rights reserved. 25
ライフサイクル管理
オブジェクト (表 / 索引 / ビュー etc.)
DBソフトウェア (パラメーター、制御ファイル、 適用済みパッチ etc.)
OS (カーネルパラメーター、 パッケージ etc.)
変更監視・ 定期チェック
変更計画・テスト 変更作業
環境構築 | データ準備 | テスト実施
Database Lifecycle Management Pack
Database Lifecycle
Management Pack
Test Data Mgmt Pack
Data Masking
Pack
ATS (Application
Testing Suite)
RAT (Real
Application Testing)
Copyright© 2011, Oracle. All rights reserved. 26
ライフサイクル管理(~11g) Database Lifecycle Management Pack
オブジェクト (表 / 索引 / ビュー etc.)
DBソフトウェア (パラメーター、制御ファイル、 適用済みパッチ etc.)
OS (カーネルパラメーター、 パッケージ etc.)
変更監視・ 定期チェック
変更計画・テスト 変更作業
環境構築 | データ準備 | テスト実施
Test Data Mgmt Pack
Data Masking
Pack
ATS (Application
Testing Suite)
RAT (Real
Application Testing)
•オブジェクト構成・定義の保存・比較
• DDL発行の検知
•オブジェクト 構成・定義の同期
•オブジェクト構成・定義の同期
• リファレンス設定の保存
•設定の比較
(※OSから取得可能な HW情報も含む)
•ポリシーに基づく評価
•パッチアドバイザ
•パッチ計画
•パッチ適用
•インスタンスの クローニング
• DBソフトウェアのプロビジョニング
•パッチ適用
• RACノード追加
Copyright© 2011, Oracle. All rights reserved. 27
ライフサイクル管理(12c) Database Lifecycle Management Pack
オブジェクト (表 / 索引 / ビュー etc.)
DBソフトウェア (パラメーター、制御ファイル、 適用済みパッチ etc.)
OS (カーネルパラメーター、 パッケージ etc.)
変更監視・ 定期チェック
変更計画・テスト 変更作業
環境構築 | データ準備 | テスト実施
Test Data Mgmt Pack
Data Masking
Pack
ATS (Application
Testing Suite)
RAT (Real
Application Testing)
•データの比較
•オブジェクト構成・定義の保存・比較
• DDL発行の検知
•変更計画
•オブジェクト 構成・定義の同期
•オブジェクト構成・定義の同期
• リファレンス設定の保存
•設定の比較 (機能強化)
(※OSから取得可能な HW情報も含む)
• リアルタイムでの 変更監視
•コンプライアンス標準
• トポロジ
•パッチアドバイザ
•パッチ計画
•パッチ適用
•インスタンスの クローニング
•インスタンスの 新規作成
• DBソフトウェアのプロビジョニング
•パッチ適用
• RACノード追加
•データベースの アップグレード
•ユーザー定義 プロビジョニング
Copyright© 2011, Oracle. All rights reserved. 28
データベースオブジェクトのライフサイクル管理 課題
• アプリケーションの変更等によるDBオブジェクトの頻繁な変更
• 毎回スキーマ定義や変更履歴をチェック、管理するのは非常に大変
開発者
アプリをV2.0にバージョンアップしました
どの表が追加されたんだろう・・・
V1.0のスキーマ
V2.0
追加修正のパッチです
V2.1
変更された部分は!?
Copyright© 2011, Oracle. All rights reserved. 29
データベースオブジェクトのライフサイクル管理 従来からの機能
開発DB
本番DB
Ver 0.1
Ver 0.2
Ver 1.0
異なるバージョン間で オブジェクト定義の差分比較
オブジェクト定義を同期し、開発と同じ環境を再現
オブジェクトの構成変更管理をGUIから容易に実現
変更のたびに発生する工数とリスクを削減
“C2”列がNUMBER型からVARCHAR2に変わっている “C3”という列が増えている
Copyright© 2011, Oracle. All rights reserved. 30
オブジェクトのライフサイクル管理 新機能: データの比較
オブジェクト構成管理の一環としてデータ比較機能を提供
• (パッケージアプリケーション等の)シードデータの比較
•アプリケーションの構成データの環境間比較
•マスターデータの比較
データベースB データベースA
Copyright© 2011, Oracle. All rights reserved. 31
オブジェクトのライフサイクル管理 新機能: データの比較
比較元、比較先のDB
比較対象の列
Copyright© 2011, Oracle. All rights reserved. 32
オブジェクトのライフサイクル管理 新機能: データの比較
ENAME列の一行に差分を発見
Copyright© 2011, Oracle. All rights reserved. 33
オブジェクトのライフサイクル管理 新機能: データの比較
データ比較機能によりDBMS_COMPARISONパッケージをGUI
から使用可能
• 「参照元」と「比較先」データベースを指定してデータを比較
• 異なるデータベース間の場合はDB Linkを作成
•ガイドライン
• 「参照元」は11.1以上、「比較先」は10.1以上であること
• キャラクタセットは同じであること
• 表のほか、ビューやマテリアライズドビューを使った比較も可能
• いくつかのデータ型(e.g. LONG, LONG RAW, ROWID, CLOB, BLOB
etc.)は比較不可
Copyright© 2011, Oracle. All rights reserved. 34
オブジェクトのライフサイクル管理 新機能: 変更計画
「変更計画」機能により、オブジェクト定義の変更を事前に定義し、
グループ化し、「計画」としてパッケージ化
•変更計画の作成元
• アドホックな変更
• 構成比較により見つかった差分
• SQL Developer
•権限の分離
• 開発者 – SQL Developerから変更計画を登録
• DBA – 変更計画をレビューし、適用
•複数データベースへの一括適用
Copyright© 2011, Oracle. All rights reserved. 35
オブジェクトのライフサイクル管理 新機能: 変更計画
変更内容をパッケージ化し、変更計画として登録
SQL DeveloperからEM 12cのリポジトリに接続
Copyright© 2011, Oracle. All rights reserved. 36
DBソフトウェア・OSの構成管理 従来からの機能
• Oracle Enterprise Managerがシステムの構成情報を自動で収集
• Oracle WebLogic Server
• Oracle Service Bus
• Oracle Database
• OS など
• 履歴も自動的に管理
システムの構成情報の収集、保存、履歴管理などを簡素化し、 システムトラブルを予防、セキュリティを強化
二つの異なるデータベースの初期化パラメーターの差分を比較
本番環境と検証環境で 差分が無いかチェック
Copyright© 2011, Oracle. All rights reserved. 37
DBソフトウェア・OSの構成管理 従来からの機能における課題
Copyright© 2011, Oracle. All rights reserved. 38
Oracle Linux
Oracle Database
WebLogic Server
Oracle Linux
Oracle Database
WebLogic Server
顧客管理システム(本番) 顧客管理システム(開発)
本番と開発で挙動が違う。どこに違いが? •できればいっぺんに比較して差分を見つけたい
• コンポーネントごとに比較するのは面倒 •インスタンス名などは違って当然だからいちいちレポートしないでほしい
etc.
DBソフトウェア・OSの構成管理 構成比較機能の強化
システム単位で構成情報を比較 システムを構成するコンポーネントの中から差分を迅速に抽出
Copyright© 2011, Oracle. All rights reserved. 39
DBソフトウェア・OSの構成管理
比較項目のカスタマイズ 差分をレポートするかどうかなどを細かく制御することが可能
Copyright© 2011, Oracle. All rights reserved. 40
コンプライアンス標準 従来からの機能
Copyright© 2011, Oracle. All rights reserved. 41
コンプライアンススコア 収集した構成情報に対して、オラクルの提供する(あるいはカスタム定義の)ポリシーを用いて評価・レポート
コンプライアンス標準 新機能: 3階層の視点
• コンプライアンス・フレームワーク
• コンプライアンス・スタンダードの集合
• ターゲットタイプをまたいで総合評価
• 各項目を業界標準のフレームワーク(PCI, COBIT,
HIPAA, CIS, etc) に即して評価、スコアリング
• コンプライアンス・スタンダード
• コンプライアンス・ルールの集合
• ターゲットタイプごとに総合評価
• コンプライアンス・ルール
• 個別のチェック項目
• ターゲットタイプごとに定義
• 各項目への「違反」をチェック
コンプライアンス・ ルール
コンプライアンス・ スタンダード
コンプライアンス・ フレームワーク
コンプライアンス管理者 セキュリティ監査担当者
DBA、システム管理者、 ITマネージャー
Copyright© 2011, Oracle. All rights reserved. 42
コンプライアンス標準 新機能: 3種類のコンプライアンスチェック方法
• リポジトリ・ルール(従来から存在)
• ターゲットから収集し、リポジトリに保存したデータをもとに評価
• ターゲットの構成変更に応じて評価
• ユーザー定義のルール作成補助のためのリポジトリ検索機能等を提供
• リアルタイム・ルール(買収製品(Configuration Change Console)の統合)
• ファイルやプロセスなどに対するアクションをリアルタイムに検知
• “許可されていない”変更を検知。外部の変更管理システムとも連携可能
• WebLogic Serverシグネチャルール(BEA Guardian Signaturesの統合)(※)
• WebLogic Serverに対してヘルスチェック、評価
• 数々のルール、および業界標準のフレームワークとのマッピングを提供
Copyright© 2011, Oracle. All rights reserved. 43
(※)WebLogic Server Management Pack Enterprise Editionで提供
コンプライアンス標準
• オラクル提供の豊富なコンテンツ • 約1700のコンプライアンスルール
• 約30のコンプライアンス標準
• セキュリティ上の推奨
• ベストプラクティス
• ルール等はセルフアップデート機能を
通じて更新可能
• 評価結果(「スコア」)を自動更新
• スコアの過去履歴も保存
• ルール違反の詳細情報
• 違反の詳細
• 推奨される解決方法
• My Oracle Supportのナレッジとのリンク
違反の詳細
Copyright© 2011, Oracle. All rights reserved. 44
スコアの履歴
ダッシュボード
システム構成管理 課題
Copyright© 2011, Oracle. All rights reserved. 45
Oracle Linux
Oracle Database
WebLogic Server
Oracle Linux
Oracle Database
WebLogic Server
Oracle Database
WebLogic Server
お互いに依存関係のあるコンポーネントは? • このデータベースに障害がおこるとどのアプリケーションに影響がでるのだろうか?
• このWLSでうごいているアプリケーションが接続しているデータベースはいくつ?どれ?
etc.
システム構成管理 トポロジ
定義可能な関係性の例
•アプリケーション
•データベースにデータを格納
•Coherenceにデータを格納
•WebLogic Serverにデプロイされている
•WebLogic Server
•Oracleホームにインストールされている
•Oracle Database
•Oracleホームにインストールされている
•サーバーにホストされている
Copyright© 2011, Oracle. All rights reserved. 46
2つのアプリケーションが このデータベースにデータを格納
データベースが稼働するサーバー
(※)WebLogic Serverの依存先を定義する部分は WebLogic Server Management Pack Enterprise Editionで提供
作業の自動化(プロビジョニング) 従来からの機能
Copyright© 2011, Oracle. All rights reserved. 47
RACへのパッチ適用のための手順などがあらかじめ提供されている
例: ローリングモードでのパッチ適用のためのステップが定義済み (カスタマイズも可能)
作業の自動化(プロビジョニング)
Copyright© 2011, Oracle. All rights reserved. 48
アップグレード用、データベース作成用のプロシージャなどが追加されている
作業の自動化(プロビジョニング) 新機能:データベースの作成
Copyright© 2011, Oracle. All rights reserved. 49
作業の自動化(プロビジョニング) 新機能:データベースのアップグレード
ソフトウェアライブラリに格納したバイナリを配布インストール(複数指定可能) 既存のOracleホームとは別のホームにインストールを行う “out-of-place” アップグレード
• 計画 • My Oracle Support経由で新バージョンのOracle Databaseを
検出
• アップグレードパスごとに推奨されるパッチの提示と競合の
検出
• アップグレード・ドキュメントへのリンク
作業の自動化(プロビジョニング) 新機能:データベースのアップグレード
Copyright© 2011, Oracle. All rights reserved. 51
• 分析
• アップグレード前の分析(領域、無効なオブジェクト等)
• インストール
• バイナリを一括配布、既存のOracleホームとは別のホームにインストール(out-of-
place)
• 切り替え
• インスタンスを新しいOracleホームに切り替え
アップグレード先の選択(My Oracle Support(連携))
推奨されるパッチの提示(My Oracle Support(連携))
作業の自動化(プロビジョニング) 新機能:ユーザー定義プロシージャ
Copyright© 2011, Oracle. All rights reserved. 52
配布するファイル(バイナリ、インストーラー、構成ファイル等)、実行するスクリプト、実行時に渡すパラメーターなどをユーザーが自由に定義可能
ユーザー固有のインストール作業、環境構築作業を自動化できるフレームワーク
テストデータ管理
テストデータの準備
アプリケーションに関係ある表や依存関係を抽出するのが大変
マスクすべき列を探すのが大変
本番データは量が大変多い
人手でのマスク 作業によるミスのおそ
れ
テスト データの準備
データ・ モデリング
機密データの検出
データ・ サブセットの作成
データ・ マスキング
テストデータ管理 主な新機能
• データモデリングと機密データ検出
• データサブセッティング
• データマスキング機能の強化
• Real Application Testingとの連携
Copyright© 2011, Oracle. All rights reserved. 56
データモデリングとデータ検出 アプリケーション・データモデル
• アプリケーション・スキーマをスキャンし、表・列の参照関係を検出
• Oracle Applicationsのメタデータから参照関係を検出
• Oracle E-Business Suite
• Oracle Fusion Applications
• 参照関係をリポジトリに保存
• データ・サブセットの作成やデータ・マスキングの基礎として使用
テスト
データの準備
データ・ モデリング
機密データの検出
データ・ サブセットの作成
データ・ マスキング
データ・モデリングとデータ検出
Copyright© 2011, Oracle. All rights reserved. 58
アプリケーションで使用する表やそのタイプを登録
列間の参照関係を自動で検出、あるいは手動で登録
データモデリングとデータ検出 データ検出
• 機密データの検出
• 正規表現を使用したパターンマッチングによるスキャン
• マスキングテンプレートからのインポート
• Oracle Applications用のテンプレート • Fusion Applications
Copyright© 2011, Oracle. All rights reserved. 59
テスト
データの準備
データ・ モデリング
機密データの検出
データ・ サブセットの作成
データ・ マスキング
データモデリングとデータ検出 データ検出
Copyright© 2011, Oracle. All rights reserved. 60
EMP表のMAIL列を機密データとして検出。一致する行の割合は100%
検出した列に対して’機密’扱いにするか無視するか定義可能
データモデリングとデータ検出
Copyright© 2011, Oracle. All rights reserved. 61
パターンマッチングによる機密データの検
出
• 列名 and/or コメント
and/or 列データに対して正規表現で機密データの形式を指定
• 検出ジョブを発行し、データモデル内から機密データ列を検出
マスキングテンプレートからのインポート
• Fusion Applications用等のマスキングテンプレートをインポート
• 機密データ列を自動的に検出
手動での機密データ列の指定
• 列のリストから機密データを含む列を手動で追加
データ・サブセットの作成
データ・サブセットとは?
• テスト・開発用に、参照関係やその他の特徴を保ったまま本番環境のデータを縮小したもの
なぜデータ・サブセットか?
• 様々なアプリケーションの本番データをコピーすることによるストレージコストの抑制
• 本番環境の特徴を持ったデータを使用することで、よりリアルに近い環境での開発が可能
Copyright© 2011, Oracle. All rights reserved. 62
メタデータ アプリケーション・データ
アプリケーション・データ メタデータ
テスト
データの準備
データ・ モデリング
機密データの検出
データ・ サブセットの作成
データ・ マスキング
サブセット化のルール REGION = ‘NORTH AMERICA’
AND FISCAL_YEAR = 2009
データ・サブセットの作成
Copyright© 2011, Oracle. All rights reserved. 63
サブセット化のルールをwhere句の形式で記述。変数も使用可能(サブセット実行時に逐次指定)
依存関係のある表を自動的に
サブセット化の対象に追加
データ・サブセットの作成 パフォーマンス
Copyright© 2011, Oracle. All rights reserved. 64
本番 Data Pump
エクスポートファイル テスト
本番 テスト
サブセット前 サブセット後 所要時間
Data Pumpの使用 1 TB 200GB (20%) 1 hour 8 minutes
クローン&データ削減 1 TB 200GB (20%) 5 hours 49 minutes
クローニング データの削減
サブセット後のデータを Data Pumpで出力
インポート
データマスキング
Copyright© 2011, Oracle. All rights reserved. 65
•機密データをマスキングすることによるデータのセキュア化
•マスキングテンプレートのライブラリ化による作業の簡素化
•発展的なマスキング: 条件付き、複合列、散らばり度の維持
•マスキングとクローニングの連携
• NEW in EM 11g: 他社製DBに対するマスキング
• NEW in EM 11g: マスキング前後の(任意の)スクリプト実行、emcliからの実行
• NEW in EM 12c: Real Application Testingとの連携
• NEW in EM 12c: 「可逆」マスキング
LAST_NAME SSN SALARY
SMITH 111-23-1111 60,000
MILLER 222-34-1345 40,000
LAST_NAME SSN SALARY
AGUILAR 203-33-3234 60,000
BENSON 323-22-2943 40,000
本番 テスト
テスト
データの準備
データ・ モデリング
機密データの検出
データ・ サブセットの作成
データ・ マスキング
Copyright© 2011, Oracle. All rights reserved. 66
データマスキング 従来からの機能(散らばり度の維持)
EMPNO ENAME
3982 ALLEN
3991 ALLEN
4391 ALLEN
4419 BOSH
4501 BOSH
4781 CATHY
4958 CATHY
5104 CATHY
5392 CATHY
5594 DAVID
5920 DAVID
:
EMPNO ENAME
3982 ajehndl
3991 ajehndl
4391 ajehndl
4419 apemmm
4501 apemmm
4781 pfhes
4958 pfhes
5104 pfhes
5392 pfhes
5594 fmfaow
5920 fmfaow
:
EMPNO ENAME
3982 JANET
3991 JANET
4391 JANET
4419 KATE
4501 KATE
4781 HOUGH
4958 HOUGH
5104 HOUGH
5392 HOUGH
5594 IGOR
5920 IGOR
:
配列リストを使ったマスキング
(GRUK, HOUGH, IGOR, JANET, KATE,LEHMANN)
ランダム文字列を使ったマスキング
一意制約を維持したままマスキング
カーディナリティ(濃度)を維持したままマスキング
データマスキング 従来からの機能(多様なマスキングをサポート)
Copyright© 2011, Oracle. All rights reserved. 67
複合列マスキング
複数の関連性のある列をまとめてマスキング e.g. Address, City, State, Zip, Phone
条件付きマスキング
条件(where句)ごとにマスクフォーマットを変更, e.g. 州ごとに免許証のマスク方法を変更
SQL式に基づくマスキング
SQL関数を使用, e.g. SUBSTR(%ORIG_VALUE%,1,3)||’–111-1111’
条件付きマスキング (例)州ごとに免許証番号のフォーマットを変更
複合列マスキング (例)都道府県と市区町村の組み合わ
せを維持したままシャッフル
会員ID 都道府県 市区町村
1 神奈川県 横浜市
2 東京都 千代田区
3 東京都 中央区
4 千葉県 船橋市
: : :
データマスキング 従来からの機能(他社製DBに対するマスキング)
Copyright© 2011, Oracle. All rights reserved. 68
Oracle Database
Ora
cle
En
terp
rise
Ma
na
ge
r C
loud C
ontro
l
他社製データベース
本番 (Oracle)
ステージング (Oracle)
テスト (Oracle)
本番 (non-Oracle)
ステージング (Oracle)
テスト (non-Oracle)
Ora
cle
En
terp
rise
Ma
na
ge
r C
lou
d C
on
trol
Database Gateway等
Database Gateway等
管理
管理
管理
管理
監視§
監視§
§ IBM DB2, Microsoft SQLServer, Sybaseに対するプラグインを提供
データマスキング 新機能: 「可逆」マスキング
Copyright© 2011, Oracle. All rights reserved. 69
empno phone
1485 090-1234-5678
1486 090-1234-5678
1487 090-9876-5432
1488 090-1111-9999
empno phone
1485 090-1122-3344
1486 090-1122-3344
1487 090-3592-9357
1488 090-1723-0841
マスキング キー値 ‘oracle’
マスキング解除 キー値 ‘oracle’
マスキング時に指定したキー値と
同じものを指定することで、元の値に
戻すことができるマスキングパターン
データマスキング 新機能: 「可逆」マスキング
Copyright© 2011, Oracle. All rights reserved. 70
値は正規表現の形式で指定
* や + は使用不可
(固定長で表現できる範囲での対応)
新フォーマットタイプ「暗号化」を使用
(内部的にDBMS_CRYPTOを使用)
データマスキング 新機能: 「可逆」マスキング
Copyright© 2011, Oracle. All rights reserved. 71
マスクした値を元に戻す場合は
「複合化」のオプションにチェックを入れる
マスクするときと、元に戻すときに、「シード」に同じ値を入力する
データマスキング 新機能: Real Application Testingとの連携
Copyright© 2011, Oracle. All rights reserved. 72
• SQLパフォーマンスアナライザ
• SQLの単体性能テスト
• 性能低下するSQLを見極めチューニング
• SQLチューニングアドバイザ・SQL計画ベースラインとの連携
ワークロードの
再生
ワークロードの
キャプチャ
リプレイクライアントの
準備
テスト環境の
作成
リアルなワークロードを使用した包括的なテスト
• データベースリプレイ
• 負荷の再現によるスループットのテスト
• 多重実行性能に関わる問題を発見、改善
• ATS(Application Testing Suite)との連携
Real Application Testing – 2種類のテスト機能
データマスキング 新機能: Real Application Testingとの連携
• 従来の課題
• リアルなワークロードを正しく再生可能にするため、データもリアルである必要があった
• 本番データをテスト環境へコピーすることによるリスク
• 連携による解決
• ワークロードキャプチャファイルおよびSTS中の機密データをアプリケーションデータと同様にマスキング
• STS中のバインド値(SPAで使用)
• ワークロードキャプチャファイル(データベースリプレイで使用)
• AWR 中のバインド値は消去
• 本番相当のテストをよりセキュアな環境で実施可能に
Copyright© 2011, Oracle. All rights reserved. 73
データマスキング 新機能: Real Application Testingとの連携
Copyright© 2011, Oracle. All rights reserved. 74
マスキング前後の実行計画比較
データマスキング 新機能: Real Application Testingとの連携
Copyright© 2011, Oracle. All rights reserved. 75
データマスキングのスクリプトからRATのルーチンを呼び出し、初期化
マスキング定義からマスクすべき列を抽出
STS内で検出されたすべての機密データを取り出し、マスキング用の一時表に配置
キャプチャファイルで検出されたすべての機密データを取り出し、マスキング用の一時表に配置
マスキングのルーチンを元に、元の値とマスク後の値のマッピングテーブルを作成
データマスキング 新機能: Real Application Testingとの連携
• 注意事項
• 「SQL式」「条件付き」によるマスキングは本連携機能と互換性無し
• キャプチャファイルやSTS中には全データセットは含まれていない
• ワークロード中に含まれない値により条件が設定される可能性がある
• キャプチャファイルやSTS中のリテラル値のマスキングは行われない
Copyright© 2011, Oracle. All rights reserved. 76
Copyright© 2012, Oracle. All rights reserved. 77
http://blogs.oracle.com/oracle4engineer/entry/otn_ondemand_questionnaire
OTNオンデマンド 感想
OTNセミナーオンデマンド
コンテンツに対する ご意見・ご感想を是非お寄せください。
上記に簡単なアンケート入力フォームをご用意しております。
セミナー講師/資料作成者にフィードバックし、 コンテンツのより一層の改善に役立てさせていただきます。
是非ご協力をよろしくお願いいたします。
Copyright© 2012, Oracle. All rights reserved.
OTNセミナーオンデマンド 日本オラクルのエンジニアが作成したセミナー資料・動画ダウンロードサイト
掲載コンテンツカテゴリ(一部抜粋)
Database 基礎
Database 現場テクニック
Database スペシャリストが語る
Java
WebLogic Server/アプリケーション・グリッド
EPM/BI 技術情報
サーバー
ストレージ
例えばこんな使い方
• 製品概要を効率的につかむ
• 基礎を体系的に学ぶ/学ばせる
• 時間や場所を選ばず(オンデマンド)に受講
• スマートフォンで通勤中にも受講可能
100以上のコンテンツをログイン不要でダウンロードし放題
データベースからハードウェアまで充実のラインナップ
毎月、旬なトピックの新作コンテンツが続々登場
78
OTNオンデマンド
コンテンツ一覧 はこちら http://www.oracle.com/technetwork/jp/ondemand/index.html
新作&おすすめコンテンツ情報 はこちら http://oracletech.jp/seminar/recommended/000073.html 毎月チェック!
Copyright© 2012, Oracle. All rights reserved.
オラクルエンジニア通信 オラクル製品に関わるエンジニアの方のための技術情報サイト
79
オラクルエンジニア通信
技術コラム
アクセス ランキング
特集テーマ Pick UP
技術資料
性能管理やチューニングなど月間テーマを掘り下げて詳細にご説明
インストールガイド・設定チュートリアルetc. 欲しい資料への最短ルート
他のエンジニアは何を見ているのか?人気資料のランキングは毎月更新
SQLスクリプト、索引メンテナンスetc. 当たり前の運用/機能が見違える!?
http://blogs.oracle.com/oracle4engineer/
Copyright© 2012, Oracle. All rights reserved.
oracletech.jp ITエンジニアの皆様に向けて旬な情報を楽しくお届け
80
oracletech
Viva! Developer
セミナー
スキルアップ
製品/技術 情報
ORACLE MASTER! 試験頻出分野の模擬問題と解説を好評連載中
Oracle Databaseっていくら?オプション機能も見積れる簡単ツールが大活躍
基礎から最新技術まで お勧めセミナーで自分にあった学習方法が見つかる
全国で活躍しているエンジニアにスポットライト。きらりと輝くスキルと視点を盗もう
http://oracletech.jp/
Copyright© 2012, Oracle. All rights reserved. 81
あなたにいちばん近いオラクル
Oracle Direct まずはお問合せください
Web問い合わせフォーム フリーダイヤル
0120-155-096
※月曜~金曜 9:00~12:00、13:00~18:00 (祝日および年末年始除く)
専用お問い合わせフォームにてご相談内容を承ります。 http://www.oracle.co.jp/inq_pl/INQUIRY/quest?rid=28
※フォームの入力にはログインが必要となります。 ※こちらから詳細確認のお電話を差し上げる場合がありますので ご登録の連絡先が最新のものになっているかご確認下さい。
システムの検討・構築から運用まで、ITプロジェクト全般の相談窓口としてご支援いたします。 ステム構成やライセンス/購入方法などお気軽にお問い合わせ下さい。
Oracle Direct
Copyright© 2012, Oracle. All rights reserved.
Copyright© 2012, Oracle. All rights reserved. 83