タグ

DATABASEと開発に関するkarahiyoのブックマーク (2)

  • 主キーはインデックスではない - 設計者の発言

    仕事柄、奇妙なDB構造を目にすることが多い。どういう発想からそんな設計がされるのかを理解したいと思っていたのだが、モデラー仲間の秋里さんが先日うまい指摘をした。「主キーをインデックスみたいなものと勘違いしているからではないでしょうか」。インデックス(キー)というのは、レコードの並び順を規定するキーのことだ。 たしかに思い当たる節がある。「こんな順にレコードが並んでいれば処理上都合がよさそうだ」という考えで主キーが設定される。さらに主キーはユニーク制約でもあるので、重複が起こらないように「多め」に項目を突っ込んでおく。つまり「ユニーク制約をともなう代表的インデックス」程度に主キーが理解された結果として、グダグダなDB構造が出来上がるのではないか。 じっさい、昔こんなことがあった。{a,b,c,d}の複合主キーをもつテーブルXがある。ところが、別のテーブルYからテーブルXの特定レコードにアクセ

    主キーはインデックスではない - 設計者の発言
  • DBマイグレーションツール: Liquibase と Flyway の比較議論 - Qiita

    StackOvevflow - DB Migration tool Liquibase or Flyway? をざっと翻訳 (as of 2013.6.18) 訳注サマリ:複数データベース考慮が不要で実SQLをシンプルに扱うならFlyway、複数データベースを考慮して抽象化もさせてより高度にマイグレーションするならLiquibase Question J2EE ウェブアプリケーションのためにDBマイグレーションツールを使いたいと思っています。このアプリは、Jenkins サーバで継続的統合がされます。また、Ant と Maven も使っているので、(可能なら)その両方に対応したものがいいです。 シンプルで簡単な設定がいいですが、将来的に異なる複数のデータベースをサポートすることも必要です。 現在、Liquibase と Flyway と見ています。上記を満たすためにどちらが、なぜよいかを知

    DBマイグレーションツール: Liquibase と Flyway の比較議論 - Qiita
  • 1