スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

14のアンチパターンに学ぶデータベースの開発/運用(開発フェーズ)

DBマガジン12月号の記事の感想。この記事読むためだけに買いました。

■開発フェーズ
1. データ量の暴力
説明:フルスキャンしている、インデックスが張っていない
感想:SQL書いたらふつー実行プランくらい見ないの?って思いました。特にどんどんデータが溜まっていくテーブルには要注意ですね。

2. 過ぎたるはなお及ばざるがごとし
説明:インデックスの張りすぎで、更新が重くなる。
感想:適当にインデックス決めるのはよくないようです。

3. 組み合わせ爆発
説明:直接による意味の無い莫大な処理が発生、結合条件の付け忘れ
感想:これってアンチパターンというよりも、完全にバグでしょ。レビューで発見するしか手はないですね。つい先日も人のソースの中からこれ見つけて、潰しました。

4. ねずみ算
説明:結合するテーブルが多すぎる
感想:え?これ問題なの?確かに一般的に結合するテーブルが多くなると重くなるって言われてますが、フルスキャンとかに比べたらかわいいもんで、そんなにパフォーマンスに影響しないと思うけど・・・

5. 大河ドラマ「大作SQL」
説明:巨大なSQL、パズルのようなSQLで性能がでない
感想:巨大SQL大好き\(^o^)/ でも、性能は出るように書いてるよ! っていうか、複数回SQL呼ぶよりも1回の方が早くね?

6. 臭い物に蓋をすると、もっと臭くなる
説明:ビューを多用しており性能がでない。ビューの中に無駄な処理が含まれる。
感想:ビューもきちんとレビューしようよ。そういえば以前やったプロジェクトでは商品マスタにテストデータ入れようとおもったら実はビューになってて、そのビューの中のテーブルにデータ入れようと思ったらまたビューでさらにまたビューだった時はあきらめましたね・・・

7. バケツRDBMS
説明:RDBMSを、データ格納のための1つの大きな箱としか見ていない。
感想:あったこんなプロジェクトorz ホストからの移行なんですがデータ構造がホストのやつそのまま。当然のごとくプロジェクトは破綻しました。

8. 太っちょ(多くの列を持つ表)
説明:基本的な正規化が行われていない、列が多すぎる表
感想:これもあったなぁ。やはりパフォーマンスがでませんでした。DB設計は素人がやっちゃだめだと思います。

運用フェーズは次回。
スポンサーサイト

COMMENTS

COMMENT FORM

TRACKBACK


この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。