0人中、0人の方がこのレビューが役に立ったと投票しています。
投稿者:オビー - この投稿者のレビュー一覧を見る
SQL版に続き、こちらも良書。
ようやく正規形が理解できた。
設計ノウハウやDBMSごとの実装可否も書かれているので、現場ですぐ使える一冊。
投稿元:
レビューを見る
DB 設計の入門書です。初心者はもちろん、ある程度経験を積んだ人も自分の知識を整理するのに役にたつんじゃないかなー。*1
DB の本の場合、「理論」と「実践」のどちらかしか書いてないものが多かったりするのですが、この本は両方にふれて、かつトレードオフをきっちり説明しています。
また、「バッドノウハウ」や「グレーノウハウ」といったものにキチンとふれていて、さらに何故そういったものが生まれてしまうのかの説明とかもあって大変よかったです。
あとの細かい話は blog で。
http://d.hatena.ne.jp/tsucchi1022/20120428/1335568507
投稿元:
レビューを見る
「初級者で終わりたくないあなたへ」というサブタイトルどおり、初学者向けの本。もう少し突っ込んだ内容だと思っていたのだがそれほどでもなかった。
冒頭に外部スキーマ、概念スキーマ、物理スキーマの説明をしっかりして、論理設計と物理設計の範囲を示した上で全編説明をしているところが良かった。それほど大きくないプロジェクトだと論理設計と物理設計の境界がグレーな設計書になっていることも多く、自分も「DB設計と言えばテーブル設計」、何が論理で何が物理なんだ?と思っていた時期があったので、こういう説明をしてくれる参考書があれば、初学者は理解の助けになる。
普通にDBを使う業務をしていれば自然とぶつかり、覚えていくことになる内容だと思うが、物理設計、論理設計の観点から網羅的に「DB設計とは」を語ってくれているので、概念を知る上では良い一冊。
投稿元:
レビューを見る
知ってはいる。
そんな散見していた自分の記憶が、
章立てにマッピングされる印象を受けた。
随所に見える、著者のDBへの愛情。
精通している知識が、
私たち初心者への地図を形成してくれている。
DBは歴史も長く、奥も深い。
迷わないための一冊。
(以下抜粋。○:完全抜粋、●:簡略抜粋)
○ジョー・セルコは「テーブル名はすべて複数形または複数名詞で書ける」と表現しています。(P.71)
投稿元:
レビューを見る
サブタイトル通り、初級者で終わりたくない技術者は読んでおいて決して損はないと思う。6章から9章が特に面白かった。
投稿元:
レビューを見る
基本的な事が体系的にまとまっていて頭の整理に良い 辞書としても良い 頭の中のインデックスの作成に良い
投稿元:
レビューを見る
DB設計の基礎知識と実践的なノウハウをわかりやすく解説した本。
SQLを使うだけでなく、テーブル設計などを始めたら読んでおきたい。
第1章のタイトル「データベースを制するものはシステムを制す」は
システムエンジニアの金言と言っても過言ではないでしょう。
DB設計がダメだとシステム開発の難易度が跳ね上がるので
DB設計者には本書の内容を身につけておいて欲しいですね。
投稿元:
レビューを見る
「初級者で終わりたくないあなたへ」とあるけれど、一ヶ月くらいSQLを触って、mysqlなりpostgresqlにデータを入れてみたけど、どうしたらいいのかなあ、というレベルでも十分に学ぶ所のある良書だと感じました。これから何度も読む事になると思います。
投稿元:
レビューを見る
RDBの基礎知識が非常に分かりやすく説明されているが、それだけに留まらない。
読者が良い業務システムを「設計」するための勘所が非常に体系的に説明されており、設計段階でデータ構造を十分吟味することがいかに重要か納得できる。
本書があれば、初学者が短時間でRDBの基礎を学び、職場で実用できるレベルのRDBをACCESSなどで構築することは十分可能だと思う。
投稿元:
レビューを見る
困ったときに読み返します。当たり前ですが、そんな時は理解が深くなります。そこによきアドバイスあってこそですが。ミック本にハズレなし。
投稿元:
レビューを見る
テーブル設計の勘所について書かれた一冊。世間では、SQLのテクニックやプログラミングのテクニックばかりが注目され、それに特化した本も多数出ているのだが、本書はその前段であるテーブル設計について焦点を当てて書かれている。
最初の正規化のところはくどいぐらいに記載されているが、正規化の重要性やそれを学ぶことの必要性についてトクトクと説明しているのは本書ぐらいかと思う。
ただ、それにしてもくどい。本書の第7章から9章までに書かれているテーブル設計の話がもっと読みたいのだが、前半のところでページ数が取られている感じがする。そのため星は4つ。
この本は足がかりで、次は『SQLアンチパターン』でって感じかな。とすると、入門編としてはいい本かと思う。
なお、各章の終わりに演習問題が付いているのはよくある本のパターンだけど、特徴的なのはその解説のボリューム。すごく詳細に書かれている。
投稿元:
レビューを見る
正規化の必要性・考え方やバッドノウハウとその対策,DBでの木構造の再現方法など
DBの設計について紹介されている。DBにおいては正規化が重要で,情報技術者の試験でも頻出となっている。必要性や概念などいまいち理解できていなかったが,この本の説明はわかりやすかった。
その他にもDBにおけるバッドノウハウ(列持ちテーブル)などの紹介や,対策として具体的なSQLも示されており参考になった。
DBでの木構造の再現方法について,網羅的に手法が説明されておりよかった。
投稿元:
レビューを見る
文字通りデータベース設計の教科書。「徹底指南書」とあるが、RDBの構造や正規化などごく基本的な話から書いてあり、初心者でも読み進められる。「一つの情報は一つの場所に、一つのカラムには一つの情報を」という原則を厳密に突き詰めつつ、それを破らざるを得ないケースについても丁寧に記述されている。「データベースについてとりあえず一冊読む」なら最適。ただし、あくまでもDB「設計」の本であり、SQLやアクセスパスに関する記述はほとんど見られないので、その点には注意が必要。
投稿元:
レビューを見る
DB(データベース)に関してなんとなく使ってはいたけど正しい設計に関して意識したことはなかったので基礎を再復習する意味で手に取る。
熟練のエンジニアが正しいDBの設計について、その理由やアンチパターン(やってはいけない例)なども踏まえながら丁寧に解説。
とりあえず一回目なのでわかるところまで読んでみた。
以下要点。
DBの概要
DBの分類
RDB(リレーショナルデータベース)
OODB(オブジェクト指向型データベース)
KVS
XML
主なDBMS
Oracle
DB2
SQL Server
MySQL
PostgreSQL
設計手法のアプローチ
データを中心に考える データ→プログラム
設計
論理設計
エンティティの抽出
エンティティの定義
正規化
ER図
物理設計
テーブル定義
インデックス定義
ハードウェアのサイジング
ストレージの冗長構成決定
ファイルの物理配置決定
論理設計と正規化
テーブルとは共通点を持ったデータの集合体であり、必ず名詞でかける
重複行は存在させない
コードやIDなどのキーには固定長文字列を使うべき
可能な限りNOT NULLを使う
正規化の基本 キー→データの対応関係を作り出すこと
第一正規化 1つのセルには1つの値
第二正規化 主キーとデータの対応関係の作成
第三正規化 主キー以外のキーとデータの対応関係の作成
基本は正規化だがパフォーマンスを考え、非正規化を採用することも選択肢としてはある
インデックスについて
Btreeインデックス有効ケース
検索キーとして使われる
結合キーになる
レコードが多め
カーディナリティが高く、分散している
検索スピードが出ないのは下記ケース
演算処理を行う
SQL文を使う
NULLを使う
否定形を使う
ORを使う
後方一致、中間一致
型変換を行っている
論理設計のバッドノウハウ・グレーノウハウ
バッド
非スカラ系(配列型)
多態性・・カラムのデータで種類が違うものが混在している(会社と部署の混在など)
同一テーブルの分割・・年度ごとに別の売上テーブルがあるなど
垂直分割・・第二正規化の観点から1つのテーブルにまとめられる関係のものを複数テーブルに分ける
不適切なキー・・固定長文字列でないなど
ダブルマスタ・・同一性質のテーブルが複数あってしまう。システム統合などでありがち。
グレー
サロゲートキー・・いわゆるシステムが自動的にふるID。元々持っているキーで解決できる場合必要ない
列持ちテーブル・・カラム1、カラム2、カラム3など同一のデータを列で持つ場合。できれば別テーブルを作るべき
アドホックなカラム追加・・適切なビューを追加するか、SQLでCASE文を作って分類すべき
まだまだしらないこと多いので要復習。
投稿元:
レビューを見る
DBの設計について勉強するために読んだ。終始パフォーマンスの観点から良い設計と悪い設計について書いてあってとても勉強になった。