ablog

不器用で落着きのない技術者のメモ

書籍”Oracle の現場を効率化する100の技”の紹介

この本を一言で言うと「オラクコンサルタントのノウハウモロ見せ」です。

Oracleの現場を効率化する100の技

Oracleの現場を効率化する100の技

困った時の辞書として、現場に置いておくと必ず役に立つ一冊です。
本のタイトルはTips集ぽいですが、一つ一つの技が深く濃く、これで2,980円はお買い得です。
詳細は Oracleの現場を効率化する100の技:書籍案内|技術評論社 をご覧ください。

著者

個性豊かな面々が執筆しています。

内容紹介

一部紹介しますが、これだけでも深さと濃さが分かると思います。

  • 17 スピーディーにトラブルの原因を切り分けるテクニック

  • 37 共有プール設計の勘所

  • 40 PGA_AGGREGATE_TARGET が想像以上に増加する原因と対策

  • 42 ラージページで大規模メモリ環境でのトラブルに対処する

  • 98 ヒートマップを利用して、発生頻度を直感的に把握する

目次

第1章 パフォーマンス管理のTips
1 実行計画を理解する
2 適切な表の結合方法の選択と定石
3 カバーリングインデックスでアクセスブロック数を減らす
4 NOT IN句でパフォーマンスが出ない場合の対応法
5 パーティションを活用してアクセスブロック数を減らす
6 SQLをパラレルクエリで高速化する方法
COLUMN アプリケーションによるパラレル化の注意点
7 大量レコードのINSERTを高速化する方法
8 SPMを使って実行計画を管理する
COLUMN SQL計画管理とは
9 SPMアーキテクチャを理解する
COLUMN SPMの登録方法
10 SPMを利用したハード解析の仕組みを理解する
COLUMN SIGNATUREとPLAN_ID
11 SPMへ実行計画を登録する
12 SPMが利用できていることを確認する
13 SQLを書き変えずに実行計画を変更する
14 過去の実行計画でSQLを実行する
COLUMN SQLチューニングセット(STS)
15 SPMを別データベースへ移行する
16 システム開発でのSPM導入の勘所
第2章 トラブルシューティングのTips
17 スピーディにトラブル原因を切り分けるテクニック
COLUMN Oracleのエラー内容の確認方法
18 AWRのイベントの一歩進んだ見方
19 インターコネクトのボトルネックを見つけ出すパフォーマンス分析のコツ
20 2つのAWRレポートをスマートに比較する
21 自動パフォーマンス診断機能を使う
22 遅いSQLの原因を自動的に分析する
COLUMN SQLチューニングの事前スクリーニング
23 既に実行されたSQLと実行計画を取得する〜AWRとV$SQL〜
24 SQLが遅いと感じたときのチェックリスト
25 実行時間の長いSQLを調査する
26 ASHを利用して今起きている問題や短期間の問題を分析する
27 待機イベントのパラメータ列からセグメントを特定する
28 物理I/Oを減らす〜待機イベント処方箋(1)
29 一時表領域へのアクセスを減らす〜待機イベント処方箋(2)
30 SQL情報を漏れなく取得する
COLUMN 特定のSQLのトレースのみを取得する方法
31 実行計画が変化した原因を調査する
32 SQL性能分析情報を取得する
33 ADRCIを使ってスムーズにサポート問合せをする
第3章 アーキテクチャのTips
34 自動メモリ管理機能の使いどころを理解する
35 自動共有メモリ管理機能の調整ルールとIMMEDIATEモードを理解する
36 共有プールの仕組みを理解してORA-4031エラーを防ぐ
37 共有プール設計の勘所
COLUMN DEFERREDモードと,IMMEDIATEモード
38 共有プールを効果的に監視する
39 PGAのメモリ増加を抑える
40 PGAが想像以上に増加する原因と対策
41 PGA_AGGREGATE_TARGETが実行計画に与える影響
42 ラージページで大規模メモリ環境でのトラブルに対処する
43 オンライン索引再構築と通常の索引再構築を使い分ける
44 索引の作成順番が実行計画に与える影響を理解する
45 意図しないパラレルクエリの実行を防ぐ
46 削除処理の高速化テクニック
47 NOLOGGINGオペレーションを効果的に使う
48 NOLOGGINGオペレーションの副作用に注意する
49 ロールバックの時間を見積もる
50 コネクションプーリングが使えない環境で新規接続を高速化する
第4章 開発・運用に役立つTips
51 SQL*Plusを使いこなす作業効率化技
52 SQL*Plusを使いこなす検証技
53 SQL*Plusを使いこなすトラブルシュート技
54 オブジェクトの定義情報を確認してSQL文を簡単に作成する
55 簡単にテストデータを作成する
56 PL/SQLのボトルネックを調査する
57 Enterprise Managerを使って簡単かつ確実にDBオブジェクトを管理する
58 Enterprise Managerを使って定期的にDB稼働状況の詳細なレポートを作成する
59 Enterprise Managerを使ってリアルタイムにSQL実行状況を監視する
COLUMN リアルタイムSQL監視のSQL実行計画行数制限について
60 データベースの状況をリアルタイムで把握する
61 簡単にOSリソース情報を取得する方法
62 長時間のSQL実行をタイムアウトさせる
63 データベースのOSリソース使用を制御する
64 データベースのOSリソース使用の制御内容を確認する
65 データベースに接続できるクライアントを制限する
66 アプリケーションサーバーとデータベースサーバー間で発生した無効接続を検知する
COLUMN 無効接続を検知する新機能
67 簡単にインデックスの効果を検証する
68 統計情報を操作して本番機の実行計画を再現する
69 セグメントの断片化解消効果を見積もる
COLUMN セグメントの断片化の仕組み
70 AUTOTRACE機能で簡単にSQLの実行計画を確認する
71 ボトルネックを調べるためSQLトレースを取得する
COLUMN SQLトレースのファイル名に任意の文字列を埋め込む
COLUMN 現在のセッションIDを調べる
72 外部表を使ってcsvファイルをSQLで扱う
73 隠し初期化パラメータを確認する
74 バッチ処理の進捗状況をログ出力する
75 調べたい内容が書かれたマニュアルを効率的に探す方法
第5章 システムテストのTips
76 システムテストを自動化するときの注意点
77 DBサーバを中心としたシステムテストをする
COLUMN インストール時にRATオプションを選択し忘れた!
78 SQL単位のパフォーマンステストを自動化する
79 SQLチューニングセットを作成する
80 SQLチューニングセットをテスト環境に移行する
81 SQLパフォーマンスを比較する
82 SQLチューニングアドバイザと連携する
COLUMN SQLプロファイル
83 SPAを上手に使うためのテクニック
84 DB Replayで本番環境の負荷を再現する
85 ワークロードをキャプチャする
86 DB Replayに必要な前処理をする
87 ワークロードをリプレイする
88 本番とリプレイのパフォーマンスを比較する
89 DB Replayの負荷を調節する
90 DB Replayを上手に使うためのテクニック
第6章 データマイニングのTips
91 Oracle Rの特徴とデータ分析の目的を把握する
COLUMN Rとは?
92 データベースにRからアクセスして統計解析する
COLUMN アソシエーション分析とは?
93 データベースからRへアクセスする
COLUMN Rパッケージについて
94 Rから表計算ソフトにアクセスする
COLUMN クラスター分析とは?
95 Rのデバッグやボトルネックを発見するテクニック
COLUMN OSのstraceコマンドも強力なツール
96 バイトコードコンパイルでRの実行を高速化する
COLUMN オブジェクトの入出力はバイナリ形式で高速化
97 Rのメモリー使用量を制限する
98 ヒートマップを利用して,発生頻度を直感的に把握する
COLUMN パッケージのインストール方法
99 3次元グラフを利用して類似度を直感的に把握する
COLUMN 過去の問い合わせ内容をデータベースに格納するサンプルスクリプト
100 ワードクラウドで膨大なデータを視覚化する
COLUMN Twitterのアプリケーションを作成するには?