A-Listers

140字に収まらない海外テックネタヘッドライン

データベースの間違った使い方10項目

with 4 comments

一般的なシステムで広く利用されているリレーショナルデータベースですが、システムの進化と共にデータベースの構造も複雑になりがちです。RestMQの作者、Gleicon Moraes氏の公開したスライドがシステムが複雑化していく様子をわかりやすく説明した上で「アンチパターン」を提示していました。

それによるとデータベースのアンチパターンは以下の通り。

  • 動的なテーブルの作成
  • テーブルをキャッシュとして使う
  • テーブルをキューとして使う
  • テーブルをログとして使う
  • 分散したグローバルなロック
  • ストアドプロシージャ
  • 使われない項目
  • JOIN地獄
  • ORMによって繰り返されるクエリ
  • 負荷のコントロール

どれも理由があって採用されるデザインですが、確かに後に問題を引き起こした経験もあり耳が痛い感じですね。スライド内ではそれぞれの問題についての解決策としてMongoDBやRestMQなどの利用を進めています。「本来の使い方をしていない」という事の例として「レースカーのようにドリフトする鴨の画像」が使われていたのもユーモラスです。

他のページの画像も面白くタメになる内容なのでご覧になってみてください。

via:http://www.slideshare.net/gleicon/architecture-by-accident

Written by yandod

2011/05/09 @ 20:34

4件のフィードバック

Subscribe to comments with RSS.

  1. […] データベースの間違った使い方10項目 […]

  2. […] いまだに根強い人気を誇る「データベースの間違った使い方10項目」という今月前半公開の記事ですが、「いきあたりばったりのアーキテクチャと教訓」としてPublickeyさんにピックアップしていただきました。スライドの詳説が分かりやすく、前述の当サイトの記事がおもしろかったという方にはかなりオススメです。 […]

  3. […] Queueを実装したいなと思い、適当にMysqlのテーブルを使って書こうと思ったら、 それはアンチパターンだよって記事を見つけた。 https://tech.a-listers.jp/2011/05/09/architecture-by-accident/ […]

  4. […] データベースの間違った使い方10項目 […]


コメントを残す