索引 / 001 JA
Database Systems: Design, Implementation, and Management(データベースシステム:設計・実装・管理) cover

コンピュータサイエンス

コンピュータサイエンス

Database Systems: Design, Implementation, and Management(データベースシステム:設計・実装・管理)

Carlos Coronel; Steven Morris

英語原題: Database Systems: Design, Implementation, and Management

ビジネスや組織での利用を念頭に、リレーショナルデータベースの設計、構築、管理を教える入門教科書。データモデリングと正規化による実践的な設計を重視し、SQLを段階的に学ばせ、さらにデータ管理、分析、ビッグデータ、NoSQLシステムという広い文脈の中にデータベースを位置づける。

前提知識: データベースの経験は前提としない。一般的なコンピュータリテラシーと、プログラミングや表計算ソフトの経験が多少あると役立つ。

難易度レベル
初級
学術レベル
学部
databasesrelational modelsqldata modelingnormalization教科書

01 / 読書ガイド

読書ガイド

引用

Coronel, C., & Morris, S. (2026). Database Systems: Design, Implementation, and Management (15th ed.). Cengage.

章の要約

第15版は6部16章からなり、その後に15のオンライン付録(A–O)が続く。出版社は本書を、SQLプログラミングを詳しく扱うデータベースの設計と実装の実践的な入門書と説明し、この版ではSQL、データベースとデータ専門職に人工知能が与える影響、データベース倫理を強調するよう章を改訂・再編したと述べている。扱うシステムとしてOracle、MySQL、SQL Server、Microsoft Accessを挙げ、各章の複数の箇所に自己チェック用の小テストを設けたとしている。各部は、Database Concepts(第1–3章)、Database Programming with SQL(第4–5章)、Design Concepts(第6–9章)、Advanced Database Concepts(第10–14章)、Databases and the Internet(第15章)、Database Administration(第16章)である。

第1–3章:Database Systems(データベースシステム);Data Models(データモデル);The Relational Database Model(リレーショナルデータベースモデル)

最初の部では、データベースシステム、設計のためにデータを表現する方法としてのデータモデル、そしてSQLと設計の部の土台となるリレーショナルモデルを紹介する。

第4–5章:Introduction to Structured Query Language (SQL)(SQL入門);Advanced SQL(高度なSQL)

SQLはリレーショナルモデルの直後、設計の章より前に置かれている。第4章で言語を導入し、第5章でより高度な使い方へ進む。

第6章:Entity Relationship (ER) Modeling(実体関連(ER)モデリング)

実体とその間の関連を記述する技法である実体関連モデリングを導入する。続く設計の章はこれを土台にする。

第7章:Advanced Data Modeling(高度なデータモデリング)

ERの内容を、より複雑なモデリングの状況へ広げる。

第8章:Normalization of Database Tables(データベーステーブルの正規化)

正規化を、テーブル構造を評価し改善する方法として扱う。

第9章:Database Design(データベース設計)

モデリングと正規化を、設計プロセス全体の中にまとめる。

第10–11章:Transaction Management and Concurrency Control(トランザクション管理と同時実行制御);Database Performance Tuning and Query Optimization(データベースの性能チューニングと問い合わせ最適化)

設計から、使用中のデータベースのふるまいへと移る。多数の利用者が同時に作業するときにトランザクションを正しく保つことと、問い合わせを効率よく実行することである。

第12章:Distributed Database Management Systems(分散データベース管理システム)

データと処理が複数の拠点に分散している場合のデータベース管理を扱う。

第13–14章:Business Intelligence and Data Warehouses(ビジネスインテリジェンスとデータウェアハウス);Big Data Analytics and NoSQL(ビッグデータ分析とNoSQL)

日々のトランザクションではなく分析に使われるデータと、大規模で多様なデータのための非リレーショナルなシステムへ目を向ける。

第15章:Database Connectivity and Web Technologies(データベース接続とWeb技術)

アプリケーションやWeb技術がデータベースとどのようにつながるかを扱う。

第16章:Database Administration and Security(データベース管理とセキュリティ)

組織においてデータベースを管理し保護する仕事を扱って締めくくる。

オンライン付録

付録には、作図ツール(Lucidchart)を使ったデータベース設計のチュートリアル、概念設計から実装までをたどる2部構成のUniversity Lab事例、ERモデルのデータベース構造への変換、ER表記法の比較、UML、クライアント/サーバシステム、オブジェクト指向・階層型・ネットワーク型のデータベースモデル、電子商取引におけるデータベース、ColdFusionによるWebデータベース開発、データウェアハウス実装の要因、そしてMongoDBとNeo4jの実践的な入門が含まれる。

主要概念

第I部:Database Concepts

  • データベースシステム:データベースと、それを管理し利用するソフトウェアおよび人々をまとめたもの(第1章)。
  • データモデル:データベースを設計するために、データの構造と関連を表現したもの(第2章)。
  • リレーショナルモデル:SQLと設計の章が土台とする、テーブルに基づくモデル(第3章)。

第II部:Database Programming with SQL

  • SQL(構造化問い合わせ言語):リレーショナルデータベースを定義し問い合わせるための標準言語で、2章にわたって教えられる。

第III部:Design Concepts

  • 実体関連(ER)モデリング:実体とその間の関連を図に表し、概念設計の基礎とすること。
  • 正規化:テーブル構造を改善し、冗長性とそれが引き起こす異常を減らすこと。
  • データベース設計:モデリング、正規化、実装を組み合わせた全体のプロセス。

第IV–VI部:高度な概念、インターネット、管理

  • トランザクション管理と同時実行制御:操作をひとまとまりにして同時に実行するときにも、データの一貫性を保つこと。
  • 問い合わせ最適化:データベースの性能チューニングと合わせて、問い合わせを効率よく実行させること。
  • データウェアハウスとビジネスインテリジェンス:分析と意思決定のためにデータを蓄積し整理すること。
  • NoSQL:ビッグデータと結びつけられる非リレーショナルなデータベースシステム。MongoDBとNeo4jは付録で扱われる。
  • データベース管理とセキュリティ:データベースを組織の資源として管理し、保護すること。

批判的分析

長所

  • 一冊で広い範囲を扱う。 目次は基本概念、SQL、設計から、トランザクション、性能、分散データベース、データウェアハウス、NoSQL、Web接続、管理にまで及ぶ。一冊の教科書で入門コース全体と、その後に続くことの多い話題をまかなえる。
  • 実際の製品と結びついた実践。 出版社はOracle、MySQL、SQL Server、Microsoft Accessを扱う点を強調しており、オンライン付録にはMongoDBとNeo4jの実践的な内容や作図のチュートリアルが加わっている。演習のある授業に向いている。
  • SQLが早く登場する。 この版ではSQLがリレーショナルモデルのすぐ後(第II部)に置かれ、学生は長い設計の章に入る前に問い合わせを書き始められる。
  • 設計に十分な分量を割く。 第III部の4章が、ERモデリング、高度なモデリング、正規化、設計プロセスに充てられ、付録のUniversity Lab事例とER表記法の比較がそれを補う。
  • 新しい話題と学習支援。 出版社は、人工知能とデータベース倫理への新たな取り組みと、章の途中に置かれた自己チェック用の小テストを強調している。

短所

  • データベースシステムの実装は主眼ではない。 章題はデータベースの利用、設計、管理を扱っており、記憶構造やデータベースエンジンの作り方についての章はない。それらはこのコースのコンピュータサイエンス系の教科書が扱う。
  • 一部の内容はオンラインにある。 主要な事例やNoSQLのチュートリアルを含む15の付録は印刷版ではなくオンラインで提供され、出版社の自動採点演習は別売りのMindTapプラットフォームの一部である。
  • 分量と幅。 6部16章あるため、一つの授業では取捨選択が必要になる。高度な概念と管理の部は、多くの最初の授業が扱う範囲を超えている。

コースにおける位置づけ

データベースのコースの中で、本書は応用的・ビジネス志向の学習を対象とした幅広い入門教科書である。Hernandez の Database Design for Mere Mortals はより範囲が狭く、論理設計だけを一歩ずつ教え、SQLは扱わない。Coronel と Morris の設計の章が速すぎると感じる読者は、第III部と並行して Hernandez を使えば、よりゆっくりした手法で学べる。SQL、トランザクション、データウェアハウスが必要な読者には、それらはこちらにしかない。

Silberschatz、Korth、Sudarshan の Database System Concepts と Elmasri と Navathe の Fundamentals of Database Systems は重なる範囲を扱うが、コンピュータサイエンスの学生向けに書かれており、理論とデータベースシステムの実装にさらに踏み込む。Ramakrishnan と Gehrke の Database Management Systems と Gray と Reuter の Transaction Processing は、本書の後で問い合わせ処理の内部やトランザクションシステムの設計・構築を学ぶための本であり、本書の第10–11章はそれらの話題への最初の手がかりになる。

本書の使い方

著者はともにミドルテネシー州立大学に所属し、Coronel は同大学ビジネス学部のコンピュータラボを統括し、Morris はデータベース設計、SQL、情報システムの授業を担当してきた。出版社は本書を、データベース設計と管理の職に向けて学生を準備させるものと位置づけている。情報システムや応用コンピューティングの最初のデータベースの授業、そして実際のデータベース製品を使いたい読者に向いている。第I部はデータベースシステムとは何かから始まるので、事前のデータベースの授業は必要ない。表計算ソフトやプログラミングに多少慣れていると、SQLの章が楽になる。

1学期の入門授業の計画:

  • 中核: 第1–3章(概念とリレーショナルモデル)、第4–5章(SQL)、第6–9章(モデリング、正規化、設計)。
  • よく加えられる部分: トランザクションと同時実行制御の第10章、そして授業が分析とNoSQLのどちらを志向するかに応じて第13章または第14章。
  • 次の授業や専門的な話題: 性能、分散、Web接続、管理を扱う第11–12章と第15–16章。
  • 付録: University Lab事例(付録B–C)は第III部のよい伴走になる。付録DはER図をテーブルに変換するときに役立つ。付録N–Oはドキュメント型とグラフ型のデータベースの実践的な入口になる。

本書が扱うシステムを一つインストールし、第4–5章を読みながらSQLの例をすべて自分で入力するとよい。第III部を学ぶ間に自分で小さなデータベースを設計して同じシステムに実装し、その後SQLの章に戻って必要な問い合わせを書く。正規化や問い合わせの実行方法をより形式的に学びたい学生は、本書の後でこのコースのコンピュータサイエンス系の教科書に進むとよい。