| フォーマット | 書籍 |
| 発売日 | 2025年10月28日 |
| 国内/輸入 | 国内 |
| 出版社 | 技術評論社 |
| 構成数 | 1 |
| パッケージ仕様 | - |
| SKU | 9784297151904 |
| ページ数 | 400 |
| 判型 | A5 |
構成数 : 1枚
はじめに──クラウドネイティブ時代にパフォーマンスチューニングはどのような意味を持つか
動作環境
サンプルコードのダウンロード
本書の構成
目次
第1章:DBMSのアーキテクチャ──この世にただ飯はあるか
1.1 DBMSのアーキテクチャ概要
クエリ評価エンジン
バッファマネージャ
ディスク容量マネージャ
トランザクションマネージャとロックマネージャ
リカバリマネージャ
1.2 DBMSとバッファ
この世にただ飯はあるか
DBMSと記憶装置の関係
HDD
SSD
メモリ
バッファの活用による速度向上
メモリ上の2つのバッファ
データキャッシュ
ログバッファ
メモリの性質がもたらすトレードオフ
揮発性とは
揮発性の問題点
システムの特性によるトレードオフ
データキャッシュとログバッファのサイズ
検索と更新、大事なのはどっち
もう一つのメモリ領域「ワーキングメモリ」
いつ使われるか
ワーキングメモリが不足すると何が起きるのか
1.3 DBMSと実行計画
権限委譲の功罪
データへのアクセス方法はどう決まるのか
パーサ(parser)
オプティマイザ(optimizer)
カタログマネージャ(catalog manager)
プラン評価(plan evaluation)
オプティマイザとうまく付き合う
適切な実行計画が作成されるようにするには
1.4 実行計画がSQL文のパフォーマンスを決める
実行計画の確認方法
テーブルフルスキャンの実行計画
操作対象のオブジェクト
オブジェクトに対する操作の種類
操作の対象となるレコード数
[Column]実行計画の「実行コスト」と「実行時間」
インデックススキャンの実行計画
操作対象のオブジェクトと操作
操作の対象となるレコード数
簡単なテーブル結合の実行計画
オブジェクトに対する操作の種類
1.5 実行計画の重要性
第1章のまとめ
演習問題1
[Column]いろいろなキャッシュ
第2章:SQLの基礎──母国語を話すがごとく
2.1 SELECT文
SELECT句とFROM句
WHERE句
WHERE句のさまざまな条件指定
WHERE句は巨大なベン図
INでOR条件を簡略化する
NULL──何もないとはどういうことか
[Column]SELECT文は手続き型言語の関数
GROUP BY句
グループ分けするメリット
ホールケーキを全部1人で食べたい人は?
HAVING句
ORDER BY句
ビューとサブクエリ
ビューの作り方
無名のビュー
サブクエリを使った便利な条件指定
2.2 条件分岐、集合演算、ウィンドウ関数、更新
SQLと条件分岐
CASE式の構文
CASE式の動作
SQLで集合演算
UNIONで和集合を求める
INTERSECTで積集合を求める
EXCEPTで差集合を求める
ウィンドウ関数
トランザクションと更新
INSERTでデータを挿入する
DELETEでデータを削除する
UPDATEでデータを更新する
第2章のまとめ
演習問題2
第3章:SQLにおける条件分岐──文から式へ
3.1 UNIONを使った冗長な表現
UNIONによる条件分岐の簡単なサンプル
UNIONを使うと実行計画が冗長になる
UNIONを安易に使うべからず
WHERE句で条件分岐させるのは素人
SELECT句で条件分岐させると実行計画もすっきり
3.2 集計に...
SQLはデータベース操作に特化した言語で、柔軟にデータを操作できます。ただし、独自のロジックに基づいているため、それを正しく理解しなければ、読みづらくパフォーマンスの出ないSQLになってしまいます。本書では、「条件分岐」「集約」「ループ」「結合」「更新」など日常的に実行する処理の良い書き方・悪い書き方を解説します。その際、データベース内部でどう処理が実行されているかを示す実行計画を読み解くことで、「なぜそう書くと効率が良いのか」「可読性や保守性が向上するのか」を実感を持って理解することを目指します。改訂に伴い、SQLに追加された機能など現在の現場に対応する形に加筆・修正しています。

※ショッピングカートおよび注文内容の確認画面にてフラゲのお届けになるかご確認ください。
※各種前払い決済をご利用の場合、フラゲは保証しておりません。
※フラゲは配送日時指定なしでご注文いただいた場合に限ります。
読み込み中にエラーが発生しました。
画面をリロードして、再読み込みしてください。
