So-net無料ブログ作成


DBMSの設定 ブログトップ

DBMSの設定(5章の内容) [DBMSの設定]

 ハードウェア選定などに関係するところ。

5.1 性能値計算
  CPU時間 アプリの実行時間とSQLのステップ数
  ディスクアクセス時間 平均シーク時間+平均回転待ち時間+データ転送時間
  バッファヒット率 キャッシュみたいなもの
  ディスク使用率 ディスク分散のとき、アクセスの競合具合。アクセス待ち。
  RAID  RAID1はミラーリング。RAID0はストライピング(単純に分割)。
  性能テスト(ベンチマーク)
    TPC テスト実施団体
    TPC-C OLTP用。業務端末からのトランザクションをシミュレート。
    TPC-D 意思決定支援システム用。オーダー履歴の問合せなど。
      ※OLTP[On-Line Transaction Processing] 銀行のATM、チケット予約など。

5.2 必要量計算
  メモリ容量
    バッファ領域
      バッチ処理など利用形態、同時利用トランザクション数、データ量などで見積る。
      ※スラッシング メモリ不足でページインページアウトが頻発すること
    ログバッファ領域 ログファイルへ書き込むデータを一時的にためる
    一時作業領域 SQLの結合処理やソート用の作業領域
    ユーザ定義処理格納領域 ストアドプロシージャなどを格納
    辞書情報格納領域 ユーザ情報、テーブル定義、インデックス定義、セキュリティなど
  ディスク容量
    業務データ データ件数を予測
      テーブルごとに初期値、増加率、最終的な総件数
        データの保存期間を明確に
        1~3割は余裕をもたせて
        定期的に使用量の変化を監視する仕組みを
    ログデータ
      参照や更新など処理内容に応じて見積る
    インデックス
      方式によってそれぞれ計算する
      B木の場合、インデックスブロックとデータブロックそれぞれの長さと個数を見積る
    その他
      DBMSの管理情報、オプティマイザ用の統計情報


5.3 チューニング
  対象 データ構造(データモデル)、アプリ(SQL、インデックス)、リソース(メモリ、ディスク)

  データモデルのチューニング
    テーブルを非正規化する
      1対1の関係にあるテーブルは一つにまとめる
      1対多でも多側でよく使う項目は1側からコピーして持っておく
    ※非正規化の利用
      マスターテーブルの項目のコピー 変更前後でごちゃごちゃにならないように
      導出項目の項目化 あらかじめ計算しておく
    サマリテーブルを作成する
      月次、年次などの集計情報の作成で、行が多いときや何度も参照されるときは
      あらかじめ作成しておく。また処理の途中結果を中間テーブルとすることも。
    分散データベースを使用する
      アクセス性能の向上

  SQLのチューニング
    インデックス
      更新が少ないテーブル、行数の多いテーブルが対象。
      取り得る値の多い列で主キー、WHERE句やORDER BY句でよく使われる列につける
    インデックスが使用されない記述
      LIKE句の中間一致や後方一致検索
      左辺に式を記述
      否定構文
      NULLの検索
      OR検索(両方インデックス付きならOK)
      DISTINCT句やGROUP BY句
    大量データ挿入時
      インデックスをいったん削除して登録後に再設定する

  ストアドプロシージャの活用
    最初にコマンドを一括送信する。ネットワーク負荷の軽減。

  ディスクアクセスのチューニング
    データベースの再編成 デフラグ
    一時作業領域の拡張
    ディスク競合の回避
      同時にアクセスするテーブルを同じディスクに配置しない
      データファイルとインデックス、データファイルとログファイルも別ディスクに。

  トランザクション関連のチューニング
    ロックの粒度 排他待ちの長さとオーバーヘッドを考慮。頻繁なアクセスなら粒度を小さく。

  メモリのチューニング
    バッファヒット率が80%を下回るなら、サイズ拡張やメモリ増設を。


5.4 データベース監査
  不正アクセスや情報漏えい検知のために監査ログを残す。トランザクションログとは別。
  実施手順
    監査の目的、方針(方法)を決める。
    目的、方針に合った監査対象を決める
    DB監査を決定し、DB監査を開始する
    監査結果をチェックする
  データベース性能への配慮が必要
  ディスク容量に注意
  定期的な監査ログのチェックを行う。運用監視ツールと組み合わせる。


【勉強時間】
5.1~5.4節の勉強 2時間


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:資格・学び
DBMSの設定 ブログトップ




この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。