2016年06月04日

SQLアンチパターン8章を読んだ

blogramランキング参加中!

SQLアンチパターン

新品価格
¥3,456から
(2016/6/4 18:39時点)



[書評]SQLアンチパターン7章を読んだ
の続編

8章は、メタデータ大増殖。
本章も役に立ちました。

以下、内容

・DBにはチェック関数がある。
こいつで0以上にする等の制約がはれるらしい。
ただし、mysqlにはない
http://www.dbonline.jp/sqlite/table/index13.html


データ量が増え続けたらどうなるか
という話で本章は進む


・テーブルの量を増やす
アンチパターンとして
テーブルを年度区切りで多数作る例が載ってた。
その場合のデメリットは以下。
データの日付変えるなら別テーブルにデータを移動する必要がある
主キーを別テーブルで使っているなら主キーの移動問題がある。
テーブルをまたいだクエリの実行もある。


・アンチパターンを使っても良い場合
バックアップならあり


・解決策1
partitionを使うと
DNの機能でシャーディングできる
mysqlなら5.1から使える機能。
何をキーにして分けるかは指定できる


・解決策2
別テーブルでBLOBやTEXTを定義してjoinさせる
ただし、BLOBとかあるときのみだし、
パフォーマンスの改善は小幅の可能性はある


・解決策3
[書評]SQLアンチパターン7章を読んだ
を使う


本章も大変ためになりました。
レコードが増えてくると大変ですよね
続く
タグ:SQL
posted by マスタカ at 18:43 | Comment(0) | TrackBack(0) | | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック