2014年2月22日土曜日

第176回 データベース設計徹底指南!!

今回は、MySQLで有名な奥野幹也氏による、データベース設計の勉強でした。

twitter @nippondanji
blog http://nippondanji.blogspot.jp/2013/11/db.html



データベース設計徹底指南 from Mikiya Okuno


特定のRDBに関する説明ではなく、RDBを設計する上でのポイントよく記載されています。
本当は、直接お話しを聞きたかったのですが、参加することができず、Ustでの視聴になってしまいました。非常に勉強になりました。

ドキュメントを読むだけでも十分勉強になりますので是非1度読むとよいと思います。

Adobe Flash Player オフラインインストール

Adobe Flash Playerをオフラインでインストールしなきゃいけないことって多いですよね。(仕事で)
Adobe Flash Playerは基本的にオンラインでのインストールしかできません。
オフラインインストールしたい場合は、以下のサイトからインストーラをダウンロードすればOKです。


http://www.adobe.com/jp/products/flashplayer/distribution3.html


なにげにこのサイトが見つからないんですよね。

Microsoft Azureアイコンを公開

タイトルの通り、Azure用のアイコンを公開しました。


http://www.microsoft.com/en-us/download/details.aspx?id=41937

英語になっていますが、ドキュメントが英語なだけなので、特に気にせずダウンロードして利用しましょう。
Azureに限らず、普段のプレゼンテーション作成に使えるものが多いので是非とも利用しましょう。

2014年2月8日土曜日

ClubDB2 第175回 アクセスプラン(実行計画)の読み方入門



アクセスプランの勉強してきました。

今までもClubDB2で取り上げていただいたのですが、いろいろと参加できなくて初めての経験でした。




資料はこちら



演習問題

https://www.ibm.com/developerworks/community/wikis/form/anonymous/api/wiki/4ac81e67-d1c5-430f-969d-249fd346e68c/page/9bd90677-07e3-4612-9008-0502ddfd65e8/attachment/466af8cf-6880-414e-b873-1f0e64a2761a/media/DB2%E3%81%AE%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%83%97%E3%83%A9%E3%83%B3%E5%85%A5%E9%96%80_%E5%95%8F%E9%A1%8C.pdf


演習問題回答

https://www.ibm.com/developerworks/community/wikis/form/anonymous/api/wiki/4ac81e67-d1c5-430f-969d-249fd346e68c/page/9bd90677-07e3-4612-9008-0502ddfd65e8/attachment/6edffe0c-3685-4907-bd16-f0c5ce59a816/media/DB2%E3%81%AE%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%83%97%E3%83%A9%E3%83%B3%E5%85%A5%E9%96%80_%E8%A7%A3%E7%AD%94.pdf







アクセスプランとは、実行計画。DBがデータにアクセスときの計画です。

これは、取得した統計情報をもとにDBが最も早くデータにアクセスする方法の計画です。

あくまでも計画なのでDBが思っているだけです。実際のデータアクセスはSQLを実行するまでわかりません。

とはいえ、データベースの保守とやっている人はアクセスプランの読み方を知っておかないとDBのレスポンス遅延が発生したときに調査できませんので、是非勉強したいものです。


アクセスするときに最もポイントになるのが、インデックスがあるかどうかです。

インデックスを使うと早くなることが多いです。

インデックスを使うかどうかどうかは抽出するデータが総データ容量の半分以下のときは使用した方が早いです。逆に半分以上の場合は、データを総舐めする方が早いです。





後は、メモです。



・インデックスは張るっていう。データベースは作るっていう。不思議!

・アクセスプランが変わる可能性

・データサイズ

・使用可能のインデックスの有無

・その他リソースの影響

・インデックスは絞り込める場所に張ろう・EXPLAINを取得する方法をしないとサポートに問い合わせできないぞ!

・DB2のコマンドはDOSでも動くように8文字になっている。

・filter factor=絞り込める割合

・アクセスプランは思っているだけ。実際は統計情報が古い可能性が高くずれてしまう。
アクセスプランと実行結果の差が大きいときはやばいので対処が必要。

・リアルタイム統計情報取得をOFFにする判断基準

・コストベースとルールベースがある。

DB2は基本的にコストベース。指定もできるけどおすすめしない。

・ネステッド・ループ・ジョインは小さいテーブルのとき最速。