内容紹介
データベースシステムの名著、20年ぶりの改訂!
本書は、おもに情報系学科におけるデータベース教育を想定して、データベースシステムの基礎を解説したものです。1996年発行の『データベースシステム』の改訂版です。
本書のカバーする範囲は、データベースシステムの基本概念(1章)、データモデリング(2章)、リレーショナルデータモデル(3章)、リレーショナルデータベース言語SQL(4章)、より高度なSQL(5章)、リレーショナル論理(6章)、リレーショナルデータベース設計論(7章)、物理的データ格納方式(8章)、問合せ処理(9章)、同時実行制御(10章)、障害回復(11章)、オブジェクト指向データベースシステム(12章)です。
各章末に演習問題を付けて、その解答も掲載しています。
今日、マルチメディアのみならず、AIやIoTといった大規模データ処理により、ますます世の中のデータ量は増加しています。また、ITインフラにおいては仮想化やクラウドが当たり前の技術となり、データを取り巻く環境は20年前とは大きく様変わりしました。データベースシステムを貫く基本概念こそ変わりませんが、この20年間の新しい技術を取り込み、改訂2版として発行するものです。
このような方におすすめ
・情報系の大学学部生、院生、研究者
・データベースを設計する技術者
目次
主要目次
1章 データベースシステムの基本概念
2章 データモデリング
3章 リレーショナルデータモデル
4章 リレーショナルデータベース言語SQL
5章 より高度なSQL
6章 リレーショナル論理
7章 リレーショナルデータベース設計論
8章 物理的データ格納方式
9章 問合せ処理
10章 同時実行制御
11章 障害回復
12章 オブジェクト指向データベースシステム
詳細目次
1章 データベースシステムの基本概念
1.1 はじめに
1.2 データベースシステムにおけるデータ管理
1.3 データベースシステムに関係した基本概念
1.4 データベースシステムの構成と利用
演習問題
2章 データモデリング
2.1 データモデル
2.2 DBMSがサポートする代表的データモデル
2.2.1 リレーショナルデータモデル
2.2.2 ネットワークデータモデル
2.2.3 階層データモデル
2.3 実世界のデータモデリング
2.4 実体関連モデル
2.5 さまざまな実体関連図
2.5.1 IDEF1X
2.5.2 UML
2.5.3 情報処理技術者試験における概念データモデル
演習問題
3章 リレーショナルデータモデル
3.1 リレーショナルデータモデルにおけるデータ構造
3.2 リレーショナルデータモデルにおける整合性制約
3.3 リレーショナル代数
3.3.1 基本的リレーショナル代数演算子
3.3.2 その他のリレーショナル代数演算子
3.3.3 リレーショナル代数式
演習問題
4章 リレーショナルデータベース言語SQL
4.1 背景
4.2 基本概念
4.3 データ定義
4.4 問合せ
4.4.1 問合せの基本形
4.4.2 集合関数
4.4.3 グループ表
4.4.4 集合演算
4.4.5 ビュー
4.5 データ更新
演習問題
5章 より高度なSQL
5.1 空値
5.2 結合表
5.2.1 さまざまな結合の指定
5.2.2 外結合
5.3 副問合せ
5.3.1 WHERE句における副問合せ
5.3.2 HAVING句における副問合せ
5.3.3 FROM句における副問合せ
5.4 CASE式
5.5 WITH句
5.6 再帰問合せ
5.7 トリガー
5.8 ストアドプロシージャ
5.9 アクセス権限の管理
5.10 SQLプログラミング
5.10.1 ODBCとJDBC
5.10.2 O/Rマッピング
5.11 Webデータベースプログラミング
演習問題
6章 リレーショナル論理
6.1 タプルリレーショナル論理
6.1.1 タプルリレーショナル論理式
6.1.2 安全なタプルリレーショナル論理式
6.2 ドメインリレーショナル論理
6.2.1 ドメインリレーショナル論理式
6.2.2 安全なドメインリレーショナル論理式
6.3 リレーショナル完備
演習問題
7章 リレーショナルデータベース設計論
7.1 実体関連モデルからのリレーショナルデータベーススキーマの導出
7.2 好ましくないリレーションスキーマ
7.3 関数従属性
7.4 第三正規形
7.5 ボイス・コッド正規形
7.6 分解
7.7 第三正規形への分解
7.8 ボイス・コッド正規形への分解
7.9 多値従属性と第四正規形
7.10 結合従属性と第五正規形
7.11 正規形に関するまとめ
演習問題
8章 物理的データ格納方式
8.1 記憶階層と記憶媒体
8.1.1 記憶階層
8.1.2 磁気ディスク
8.1.3 フラッシュメモリ
8.1.4 バッファリング
8.2 レコードとファイル
8.3 ヒープファイル
8.4 順次ファイル(ソート済みファイル)
8.5 ハッシュファイル
8.6 索引付きファイル
8.7 B木
8.7.1 B木の構造
8.7.2 B木の検索
8.7.3 B木へのレコードの挿入
8.7.4 B木からのレコードの削除
8.7.5 B木の特徴と注意事項
8.8 B+木
8.8.1 B+木の構造
8.8.2 B+木の検索
8.8.3 B+木へのレコードの挿入
8.8.4 B+木からのレコードの削除
8.8.5 B木とB+木の比較
8.9 索引
8.10 索引の分類
8.11 ビットマップ索引
8.12 物理的データ格納方式の設計
8.13 列ストア
演習問題
9章 問合せ処理
9.1 問合せ処理と最適化
9.2 リレーショナル代数式を対象とした問合せ最適化
9.3 基本データ操作の実行法
9.3.1 選択の実行法
9.3.2 結合の実行法
9.3.3 外部ソート
9.4 コスト見積りに基づく問合せ最適化
演習問題
10章 同時実行制御
10.1 トランザクション
10.2 並行処理と直列可能性
10.2.1 並行処理における不整合
10.2.2 直列可能性とスケジュール
10.2.3 スケジュールの諸性質
10.3 ロックを用いた同時実行制御
10.3.1 ロックの概念
10.3.2 直列可能性を保証するロッキングプロトコル
10.3.3 ロックの粒度
10.3.4 デッドロック
10.4 時刻印を用いた同時実行制御
10.5 楽観的同時実行制御
10.6 多版同時実行制御
10.7 SQLにおけるトランザクション
演習問題
11章 障害回復
11.1 障害の分類
11.2 ログを用いた障害回復
11.2.1 ログ
11.2.2 ノーアンドゥ・リドゥ(no-undo/redo)方式
11.2.3 アンドゥ・ノーリドゥ(undo/no-redo)方式
11.2.4 アンドゥ・リドゥ(undo/redo)方式
11.2.5 チェックポイント
11.2.6 実際のDBMSにおける障害回復
11.3 シャドーページング
11.4 メディア障害回復
演習問題
12章 オブジェクト指向データベースシステム
12.1 リレーショナルデータベースシステムの弱点
12.2 オブジェクト指向データベースシステムの基本概念
12.2.1 オブジェクト指向データモデル
12.2.2 オブジェクト指向データベースシステムの要件
12.3 ODMGオブジェクトデータベース標準
12.3.1 構成
12.3.2 ODMGオブジェクトモデル
12.3.3 ODL
12.3.4 OQL
12.3.5 C++バインディング
12.4 SQLにおけるオブジェクト指向機能
12.4.1 利用者定義型
12.4.2 型付表と参照型
12.4.3 その他の関連する機能
演習問題
演習問題解答
参考文献
索引
続きを見る