Database

Introduction

  • Database-System Applications
  • Purpose of Database Systems
  • View of Data
  • Database Languages
  • Relational Databases
  • Database Design
  • Data Storage and Querying
  • Transaction Management
  • Database Architecture
  • Data Mining and Information Retrieval
  • Specialty Databases
  • Database Users and Administrators
  • History of Database Systems
  • Summary, Exercises and Bibliographical Notes

Introduction to the RelationalModel

  • Structure of Relational Databases
  • Database Schema
  • Keys
  • Schema Diagrams
  • Relational Query Languages
  • Relational Operations
  • Summary, Exercises and Bibliographical Notes

Introduction to SQL

  • Overview of the SQL Query Language
  • SQL Data Definition
  • Basic Structure of SQL Queries
  • Additional Basic Operations
  • Set Operations
  • Null Values
  • Aggregate Functions
  • Nested Subqueries
  • Modification of the Database
  • Summary, Exercises and Bibliographical Notes

Intermediate SQL

  • Join Expressions
  • Views
  • Transactions
  • Integrity Constraints
  • SQL Data Types and Schemas
  • Authorization
  • Summary, Exercises and Bibliographical Notes

Advanced SQL

See Topics ...
  • Accessing SQL From a Programming Language
  • Functions and Procedures
  • Triggers
  • Recursive Queries**
  • Advanced Aggregation Features**
  • OLAP**
  • Summary, Exercises and Bibliographical Notes

Formal Relational Query Languages

See Topics ...
  • The Relational Algebra
  • The Tuple Relational Calculus
  • The Domain Relational Calculus
  • Summary, Exercises and Bibliographical Notes

Database Design and the E-R Model

See Topics ...
  • Overview of the Design Process
  • The Entity-Relationship Model
  • Constraints
  • Removing Redundant Attributes in Entity Sets
  • Entity-Relationship Diagrams
  • Reduction to Relational Schemas
  • Entity-Relationship Design Issues
  • Extended E-R Features
  • Alternative Notations for Modeling Data
  • Other Aspects of Database Design
  • Summary, Exercises and Bibliographical Notes

Relational Database Design

See Topics ...
  • Features of Good Relational Designs
  • Atomic Domains and First Normal Form
  • Decomposition Using Functional Dependencies
  • Functional-Dependency Theory
  • Algorithms for Decomposition
  • Decomposition Using Multivalued Dependencies
  • More Normal Forms
  • Database-Design Process
  • Modeling Temporal Data
  • Summary, Exercises and Bibliographical Notes

Application Design and Development

See Topics ...
  • Application Programs and User Interfaces
  • Web Fundamentals
  • Servlets and JSP
  • Application Architectures
  • Rapid Application Development
  • Application Performance
  • Application Security
  • Encryption and Its Applications
  • Summary, Exercises and Bibliographical Notes

Storage and File Structure

See Topics ...
  • Overview of Physical Storage Media
  • Magnetic Disk and Flash Storage
  • RAID
  • Tertiary Storage
  • File Organization
  • Organization of Records in Files
  • Data-Dictionary Storage
  • Database Buffer
  • Summary, Exercises and Bibliographical Notes

Indexing and Hashing

See Topics ...
  • Basic Concepts
  • Ordered Indices
  • B+-Tree Index Files
  • B+-Tree Extensions
  • Multiple-Key Access
  • Static Hashing
  • Dynamic Hashing
  • Comparison of Ordered Indexing and Hashing
  • Bitmap Indices
  • Index Definition in SQL
  • Summary, Exercises and Bibliographical Notes

Query Processing

See Topics ...
  • Overview
  • Measures of Query Cost
  • Selection Operation
  • Sorting
  • Join Operation
  • Other Operations
  • Evaluation of Expressions
  • Summary, Exercises and Bibliographical Notes

Query Optimization

> See Topics ...
  • Overview
  • Transformation of Relational Expressions
  • Estimating Statistics of Expression Results
  • Choice of Evaluation Plans
  • Materialized Views**
  • Advanced Topics in Query Optimization**
  • Summary, Exercises and Bibliographical Notes

Transactions

> See Topics ...
  • Transaction Concept
  • A Simple Transaction Model
  • Storage Structure
  • Transaction Atomicity and Durability
  • Transaction Isolation
  • Serializability
  • Transaction Isolation and Atomicity
  • Transaction Isolation Levels
  • Implementation of Isolation Levels
  • Transactions as SQL Statements
  • Summary, Exercises and Bibliographical Notes

Concurrency Control

> See Topics ...
  • Lock-Based Protocols
  • Deadlock Handling
  • Multiple Granularity
  • Timestamp-Based Protocols
  • Validation-Based Protocols
  • Multiversion Schemes
  • Snapshot Isolation
  • Insert Operations, Delete Operations, and Predicate Reads
  • Weak Levels of Consistency in Practice
  • Concurrency in Index Structures**
  • Summary, Exercises and Bibliographical Notes

Recovery System

> See Topics ...
  • Failure Classification
  • Storage
  • Recovery and Atomicity
  • Recovery Algorithm
  • Buffer Management
  • Failure with Loss of Nonvolatile Storage
  • Early Lock Release and Logical Undo Operations
  • ARIES**
  • Remote Backup Systems
  • Summary, Exercises and Bibliographical Notes

Database-System Architectures

> See Topics ...
  • Centralized and Client–Server Architectures
  • Server System Architectures
  • Parallel Systems
  • Distributed Systems
  • Network Types
  • Summary, Exercises and Bibliographical Notes

Parallel Databases

> See Topics ...
  • Introduction
  • I/O Parallelism
  • Interquery Parallelism
  • Intraquery Parallelism
  • Intraoperation Parallelism
  • Interoperation Parallelism
  • Query Optimization
  • Design of Parallel Systems
  • Parallelism on Multicore Processors
  • Summary, Exercises and Bibliographical Notes

Distributed Databases

> See Topics ...
  • Homogeneous and Heterogeneous Databases
  • Distributed Data Storage
  • Distributed Transactions
  • Commit Protocols
  • Concurrency Control in Distributed Databases/li>
  • Availability
  • Distributed Query Processing
  • Heterogeneous Distributed Databases
  • Cloud-Based Databases
  • Directory Systems
  • Summary, Exercises and Bibliographical Notes

DataWarehousing andMining

See Topics ...
  • Decision-Support Systems
  • DataWarehousing
  • Data Mining
  • Classification
  • Association Rules
  • Other Types of Associations
  • Clustering
  • Other Forms of Data Mining
  • Summary, Exercises and Bibliographical Notes

Information Retrieval

> See Topics ...
  • Overview
  • Relevance Ranking Using Terms
  • Relevance Using Hyperlinks
  • Synonyms, Homonyms, and Ontologies
  • Indexing of Documents
  • Measuring Retrieval Effectiveness
  • Crawling and Indexing the Web
  • Information Retrieval: Beyond Ranking of Pages
  • Directories and Categories
  • Summary, Exercises and Bibliographical Notes

Object-Based Databases

> See Topics ...
  • Overview
  • Complex Data Types
  • Structured Types and Inheritance in SQL
  • Table Inheritance
  • Array and Multiset Types in SQL
  • Object-Identity and Reference Types in SQL
  • Implementing O-R Features
  • Persistent Programming Languages
  • Object-Relational Mapping
  • Object-Oriented versus Object-Relational
  • Summary, Exercises and Bibliographical Notes

XML

> See Topics ...
  • Motivation
  • Structure of XML Data
  • XML Document Schema
  • Querying and Transformation
  • Application Program Interfaces to XML
  • Storage of XML Data
  • XML Applications
  • Summary, Exercises and Bibliographical Notes

Advanced Application Development

> See Topics ...
  • Performance Tuning
  • Performance Benchmarks
  • Other Issues in Application Development
  • Standardization
  • Summary, Exercises and Bibliographical Notes

Spatial and Temporal Data andMobility

> See Topics ...
  • Motivation
  • Time in Databases
  • Spatial and Geographic Data
  • Multimedia Databases
  • Mobility and Personal Databases
  • Summary, Exercises and Bibliographical Notes

Advanced Transaction Processing

> See Topics ...
  • Transaction-Processing Monitors
  • TransactionalWorkflows
  • E-Commerce
  • Main-Memory Databases
  • Real-Time Transaction Systems
  • Long-Duration Transactions
  • Summary, Exercises and Bibliographical Notes

PostgreSQL

> See Topics ...
  • Introduction
  • User Interfaces
  • SQL Variations and Extensions
  • Transaction Management in PostgreSQL
  • Storage and Indexing
  • Query Processing and Optimization
  • Summary, Exercises and Bibliographical Notes

Oracle

> See Topics ...
  • Database Design and Querying Tools
  • SQL Variations and Extensions
  • Storage and Indexing
  • Query Processing and Optimization
  • Concurrency Control and Recovery
  • System Architecture
  • Replication, Distribution, and External Data
  • Database Administration Tools
  • Data Mining , Bibliographical Notes

IBM DB2 Universal Database

> See Topics ...
  • Overview
  • Database-Design Tools
  • SQL Variations and Extensions
  • Storage and Indexing
  • Multidimensional Clustering
  • Query Processing and Optimization
  • Materialized Query Tables
  • Autonomic Features in DB2
  • Tools and Utilities
  • Concurrency Control and Recovery
  • System Architecture
  • Replication, Distribution, and External Data
  • Business Intelligence Features, Bibliographical Notes

Microsoft SQL Server

> See Topics ...
  • Management, Design, and Querying Tools
  • SQL Variations and Extensions
  • Storage and Indexing
  • Query Processing and Optimization
  • Concurrency and Recovery
  • System Architecture
  • Data Access
  • Distributed Heterogeneous Query Processing
  • Replication
  • Server Programming in .NET
  • XML Support
  • SQL Server Service Broker
  • Business Intelligence , Bibliographical Notes