書籍概要

Software Design plus

失敗から学ぶ RDBの正しい歩き方

著者
発売日
更新日

概要

「データベースがよく落ちる」「前任者が残したテーブル,SQLが読み解けない」「RDBMSを入れ替えたら予期せぬバグが」――MySQLやPostgreSQLといったRDBMS(リレーショナルデータベース管理システム)を使った業務システム,Webサービスを設計・運用していると,こういった問題によく直面するのではないでしょうか。
本書はRDB(リレーショナルデータベース)の間違った使い方(=アンチパターン)を紹介しながら,アンチパターンを生まないためのノウハウを解説します。それぞれの章では,問題解決に必要なRDBやSQLの基礎知識も押さえるので,最近RDBMSを触り始めた新人の方にもお勧めです。

こんな方におすすめ

  • MySQLやPostgreSQLを使ったシステム・サービスを設計・運用していて,原因のわからない障害によく出くわす人,そしてそれを改善したい人

サンプル

samplesamplesample

目次

第1章 データベースの迷宮

第2章 失われた事実

第3章 やり過ぎたJOIN

第4章 効かないINDEX

第5章 フラグの闇

第6章 ソートの依存

第7章 隠された状態

第8章 JSONの甘い罠

第9章 強過ぎる制約

第10章 転んだ後のバックアップ

第11章 見られないエラーログ

第12章 監視されないデータベース

第13章 知らないロック

第14章 ロックの功罪

第15章 簡単過ぎる不整合

第16章 キャッシュ中毒

第17章 複雑なクエリ

第18章 ノーチェンジ・コンフィグ

第19章 塩漬けのバージョン

第20章 フレームワーク依存症

サポート

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2019年3月20日最終更新)

第17章 P.228

開発者B:CASE文とサブクエリの嵐ですね……。
開発者B:CASEとサブクエリの嵐ですね……。

(以下2019年3月18日更新)

第3章 P.25 リスト3.1 2行め

 単価表1. 単価 AS 単価1
 単価表1.単価 AS 単価1

「単価表1」と「.単価」の間に余計な半角スペースがありました。

第3章 P.25 リスト3.1 9行め

    ON 単価表1.単価 id < 単価表2.単価id
    ON 単価表1.単価id < 単価表2.単価id

「単価」と「id」の間に余計な半角スペースがありました。

第3章 P.35 リスト3.8 12行め

      , 単価表2.会員 id AS 会員2id

      , 単価表2.会員id AS 会員2id

「会員」と「id」の間に余計な半角スペースがありました。

(以下2019年3月11日更新)

第2章 P.15 図2.2

誤

正

第2章 P.16 図2.3

誤

正

(以下2019年3月7日更新)

第3章 P.32

INDEX1つでこのように大きく計算結果が変わるのです。
INDEX1つでこのように大きく計算コストが変わるのです。

商品一覧