Description
Efnisyfirlit
- Access for Companion Website
- Database Systems
- Copyright
- Dedication
- Brief Contents
- Contents
- Preface
- Part 1: Background
- Chapter 1: Introduction to Databases
- 1.1 Introduction
- 1.2 Traditional File-Based Systems
- 1.2.1 File-Based Approach
- 1.2.2 Limitations of the File-Based Approach
- 1.3 Database Approach
- 1.3.1 The Database
- 1.3.2 The Database Management System (DBMS)
- 1.3.3 (Database) Application Programs
- 1.3.4 Components of the DBMS Environment
- 1.3.5 Database Design: The Paradigm Shift
- 1.4 Roles in the Database Environment
- 1.4.1 Data and Database Administrators
- 1.4.2 Database Designers
- 1.4.3 Application Developers
- 1.4.4 End-Users
- 1.5 History of Database Management Systems
- 1.6 Advantages and Disadvantages of DBMSs
- Chapter Summary
- Review Questions
- Exercises
- Chapter 2: Database Environment
- 2.1 The Three-Level ANSI-SPARC Architecture
- 2.1.1 External Level
- 2.1.2 Conceptual Level
- 2.1.3 Internal Level
- 2.1.4 Schemas, Mappings, and Instances
- 2.1.5 Data Independence
- 2.2 Database Languages
- 2.2.1 The Data Definition Language (DDL)
- 2.2.2 The Data Manipulation Language (DML)
- 2.2.3 Fourth-Generation Languages (4GLs)
- 2.3 Data Models and Conceptual Modeling
- 2.3.1 Object-Based Data Models
- 2.3.2 Record-Based Data Models
- 2.3.3 Physical Data Models
- 2.3.4 Conceptual Modeling
- 2.4 Functions of a DBMS
- Chapter Summary
- Review Questions
- Exercises
- Chapter 3: Database Architectures and the Web
- 3.1 Multi-user DBMS Architectures
- 3.1.1 Teleprocessing
- 3.1.2 File-Server Architecture
- 3.1.3 Traditional Two-Tier Client–Server Architecture
- 3.1.4 Three-Tier Client–Server Architecture
- 3.1.5 N-Tier Architectures
- 3.1.6 Middleware
- 3.1.7 Transaction Processing Monitors
- 3.2 Web Services and Service-Oriented Architectures
- 3.2.1 Web Services
- 3.2.2 Service-Oriented Architectures (SOA)
- 3.3 Distributed DBMSs
- 3.4 Data Warehousing
- 3.5 Cloud Computing
- 3.5.1 Benefits and Risks of Cloud Computing
- 3.5.2 Cloud-based database solutions
- 3.6 Components of a DBMS
- 3.7 Oracle Architecture
- 3.7.1 Oracle’s Logical Database Structure
- 3.7.2 Oracle’s Physical Database Structure
- Chapter Summary
- Review Questions
- Exercises
- Part 2: The Relational Model and Languages
- Chapter 4: The Relational Model
- 4.1 Brief History of the Relational Model
- 4.2 Terminology
- 4.2.1 Relational Data Structure
- 4.2.2 Mathematical Relations
- 4.2.3 Database Relations
- 4.2.4 Properties of Relations
- 4.2.5 Relational Keys
- 4.2.6 Representing Relational Database Schemas
- 4.3 Integrity Constraints
- 4.3.1 Nulls
- 4.3.2 Entity Integrity
- 4.3.3 Referential Integrity
- 4.3.4 General Constraints
- 4.4 Views
- 4.4.1 Terminology
- 4.4.2 Purpose of Views
- 4.4.3 Updating Views
- Chapter Summary
- Review Questions
- Exercises
- Chapter 5: Relational Algebra and Relational Calculus
- 5.1 The Relational Algebra
- 5.1.1 Unary Operations
- 5.1.2 Set Operations
- 5.1.3 Join Operations
- 5.1.4 Division Operation
- 5.1.5 Aggregation and Grouping Operations
- 5.1.6 Summary of the Relational Algebra Operations
- 5.2 The Relational Calculus
- 5.2.1 Tuple Relational Calculus
- 5.2.2 Domain Relational Calculus
- 5.3 Other Languages
- Chapter Summary
- Review Questions
- Exercises
- Chapter 6: SQL: Data Manipulation
- 6.1 Introduction to SQL
- 6.1.1 Objectives of SQL
- 6.1.2 History of SQL
- 6.1.3 Importance of SQL
- 6.1.4 Terminology
- 6.2 Writing SQL Commands
- 6.3 Data Manipulation
- 6.3.1 Simple Queries
- 6.3.2 Sorting Results (ORDER BY Clause)
- 6.3.3 Using the SQL Aggregate Functions
- 6.3.4 Grouping Results (GROUP BY Clause)
- 6.3.5 Subqueries
- 6.3.6 ANY and ALL
- 6.3.7 Multi-table Queries
- 6.3.8 EXISTS and NOT EXISTS
- 6.3.9 Combining Result Tables (UNION, INTERSECT, EXCEPT)
- 6.3.10 Database Updates
- Chapter Summary
- Review Questions
- Exercises
- Chapter 7: SQL: Data Definitio
- 7.1 The ISO SQL Data Types
- 7.1.1 SQL Identifiers
- 7.1.2 SQL Scalar Data Types
- 7.2 Integrity Enhancement Feature
- 7.2.1 Required Data
- 7.2.2 Domain Constraints
- 7.2.3 Entity Integrity
- 7.2.4 Referential Integrity
- 7.2.5 General Constraints
- 7.3 Data Definition
- 7.3.1 Creating a Database
- 7.3.2 Creating a Table (CREATE TABLE)
- 7.3.3 Changing a Table Definition (ALTER TABLE)
- 7.3.4 Removing a Table (DROP TABLE)
- 7.3.5 Creating an Index (CREATE INDEX)
- 7.3.6 Removing an Index (DROP INDEX)
- 7.4 Views
- 7.4.1 Creating a View (CREATE VIEW)
- 7.4.2 Removing a View (DROP VIEW)
- 7.4.3 View Resolution
- 7.4.4 Restrictions on Views
- 7.4.5 View Updatability
- 7.4.6 With Check Option
- 7.4.7 Advantages and Disadvantages of Views
- 7.4.8 View Materialization
- 7.5 Transactions
- 7.5.1 Immediate and Deferred Integrity Constraints
- 7.6 Discretionary Access Control
- 7.6.1 Granting Privileges to Other Users (GRANT)
- 7.6.2 Revoking Privileges from Users (REVOKE)
- Chapter Summary
- Review Questions
- Exercises
- Chapter 8: Advanced SQL
- 8.1 The SQL Programming Language
- 8.1.1 Declarations
- 8.1.2 Assignments
- 8.1.3 Control Statements
- 8.1.4 Exceptions in PL/SQL
- 8.1.5 Cursors in PL/SQL
- 8.2 Subprograms, Stored Procedures, Functions, and Packages
- 8.3 Triggers
- 8.4 Recursion
- Chapter Summary
- Review Questions
- Exercises
- Chapter 9: Object-Relational DBMSs
- 9.1 Advanced Database Applications
- 9.2 Weaknesses of RDBMSs
- 9.3 Storing Objects in a Relational Database
- 9.3.1 Mapping Classes to Relations
- 9.3.2 Accessing Objects in the Relational Database
- 9.4 Introduction to Object-Relational Database Systems
- 9.5 SQL:2011
- 9.5.1 Row Types
- 9.5.2 User-Defined Types
- 9.5.3 Subtypes and Supertypes
- 9.5.4 User-Defined Routines
- 9.5.5 Polymorphism
- 9.5.6 Reference Types and Object Identity
- 9.5.7 Creating Tables
- 9.5.8 Querying Data
- 9.5.9 Collection Types
- 9.5.10 Typed Views
- 9.5.11 Persistent Stored Modules
- 9.5.12 Triggers
- 9.5.13 Large Objects
- 9.5.14 Recursion
- 9.6 Object-Oriented Extensions in Oracle
- 9.6.1 User-Defined Data Types
- 9.6.2 Manipulating Object Tables
- 9.6.3 Object Views
- 9.6.4 Privileges
- Chapter Summary
- Review Questions
- Exercises
- Part 3: Database Analysis and Design
- Chapter 10: Database System Development Lifecycle
- 10.1 The Information Systems Lifecycle
- 10.2 The Database System Development Lifecycle
- 10.3 Database Planning
- 10.4 System Definition
- 10.4.1 User Views
- 10.5 Requirements Collection and Analysis
- 10.5.1 Centralized Approach
- 10.5.2 View Integration Approach
- 10.6 Database Design
- 10.6.1 Approaches to Database Design
- 10.6.2 Data Modeling
- 10.6.3 Phases of Database Design
- 10.7 DBMS Selection
- 10.7.1 Selecting the DBMS
- 10.8 Application Design
- 10.8.1 Transaction Design
- 10.8.2 User Interface Design Guidelines
- 10.9 Prototyping
- 10.10 Implementation
- 10.11 Data Conversion and Loading
- 10.12 Testing
- 10.13 Operational Maintenance
- 10.14 CASE Tools
- Chapter Summary
- Review Questions
- Exercises
- Chapter 11: Database Analysis and the DreamHome Case Study
- 11.1 When Are Fact-Finding Techniques Used?
- 11.2 What Facts Are Collected?
- 11.3 Fact-Finding Techniques
- 11.3.1 Examining Documentation
- 11.3.2 Interviewing
- 11.3.3 Observing the Enterprise in Operation
- 11.3.4 Research
- 11.3.5 Questionnaires
- 11.4 Using Fact-Finding Techniques: A Worked -Example
- 11.4.1 The DreamHome Case Study—An Overview of the Current System
- 11.4.2 The DreamHome Case Study—Database Planning
- 11.4.3 The DreamHome Case Study—System Definition
- 11.4.4 The DreamHome Case Study—Requirements Collection and Analysis
- 11.4.5 The DreamHome Case Study—Database Design
- Chapter Summary
- Review Questions
- Exercises
- Chapter 12: Entity–Relationship Modeling
- 12.1 Entity Types
- 12.2 Relationship Types
- 12.2.1 Degree of Relationship Type
- 12.2.2 Recursive Relationship
- 12.3 Attributes
- 12.3.1 Simple and Composite Attributes
- 12.3.2 Single-valued and Multi-valued Attributes
- 12.3.3 Derived Attributes
- 12.3.4 Keys
- 12.4 Strong and Weak Entity Types
- 12.5 Attributes on Relationships
- 12.6 Structural Constraints
- 12.6.1 One-to-One (1:1) Relationships
- 12.6.2 One-to-Many (1:*) Relationships
- 12.6.3 Many-to-Many (*:*) Relationships
- 12.6.4 Multiplicity for Complex Relationships
- 12.6.5 Cardinality and Participation Constraints
- 12.7 Problems with ER Models
- 12.7.1 Fan Traps
- 12.7.2 Chasm Traps
- Chapter Summary
- Review Questions
- Exercises
- Chapter 13: Enhanced Entity–Relationship Modeling
- 13.1 Specialization/Generalization
- 13.1.1 Superclasses and Subclasses
- 13.1.2 Superclass/Subclass Relationships
- 13.1.3 Attribute Inheritance
- 13.1.4 Specialization Process
- 13.1.5 Generalization Process
- 13.1.6 Constraints on Specialization/Generalization
- 13.1.7 Worked Example of using Specialization/Generalization to Model the Branch View of the DreamHo
- 13.2 Aggregation
- 13.3 Composition
- Chapter Summary
- Review Questions
- Exercises
- Chapter 14: Normalization
- 14.1 The Purpose of Normalization
- 14.2 How Normalization Supports Database Design
- 14.3 Data Redundancy and Update Anomalies
- 14.3.1 Insertion Anomalies
- 14.3.2 Deletion Anomalies
- 14.3.3 Modification Anomalies
- 14.4 Functional Dependencies
- 14.4.1 Characteristics of Functional Dependencies
- 14.4.2 Identifying Functional Dependencies
- 14.4.3 Identifying the Primary Key for a Relation Using Functional Dependencies
- 14.5 The Process of Normalization
- 14.6 First Normal Form (1NF)
- 14.7 Second Normal Form (2NF)
- 14.8 Third Normal Form (3NF)
- 14.9 General Definitions of 2NF and 3NF
- Chapter Summary
- Review Questions
- Exercises
- Chapter 15: Advanced Normalization
- 15.1 More on Functional Dependencies
- 15.1.1 Inference Rules for Functional Dependencies
- 15.1.2 Minimal Sets of Functional Dependencies
- 15.2 Boyce–Codd Normal Form (BCNF)
- 15.2.1 Definition of BCNF
- 15.3 Review of Normalization Up to BCNF440
- 15.4 Fourth Normal Form (4NF)
- 15.4.1 Multi-Valued Dependency
- 15.4.2 Definition of Fourth Normal Form
- 15.5 Fifth Normal Form (5NF)
- 15.5.1 Lossless-Join Dependency
- 15.5.2 Definition of Fifth Normal Form
- Chapter Summary
- Review Questions
- Exercises
- Part 4: Methodology
- Chapter 16: Methodology—Conceptual Database Design
- 16.1 Introduction to the Database Design Methodology
- 16.1.1 What Is a Design Methodology?
- 16.1.2 Conceptual, Logical, and Physical Database Design
- 16.1.3 Critical Success Factors in Database Design
- 16.2 Overview of the Database Design Methodology
- 16.3 Conceptual Database Design Methodology
- Step 1: Build Conceptual Data Model
- Chapter Summary
- Review Questions
- Exercises
- Chapter 17: Methodology—Logical Database Design for the Relational Model
- 17.1 Logical Database Design Methodology for the Relational Model
- Step 2: Build Logical Data Model
- Chapter Summary
- Review Questions
- Exercises
- Chapter 18: Methodology—Physical Database Design for Relational Databases
- 18.1 Comparison of Logical and Physical Database Design
- 18.2 Overview of the Physical Database Design Methodology
- 18.3 The Physical Database Design Methodology for Relational Databases
- Step 3: Translate Logical Data Model for Target DBMS
- Step 4: Design File Organizations and Indexes
- Step 5: Design User Views
- Step 6: Design Security Mechanisms
- Chapter Summary
- Review Questions
- Exercises
- Chapter 19: Methodology—Monitoring and Tuning the Operational System
- 19.1 Denormalizing and Introducing Controlled Redundancy
- Step 7: Consider the Introduction of Controlled Redundancy
- 19.2 Monitoring the System to Improve Performance
- Step 8: Monitor and Tune the Operational System
- Chapter Summary
- Review Questions
- Exercises
- Part 5: Selected Database Issues
- Chapter 20: Security and Administration
- 20.1 Database Security
- 20.1.1 Threats
- 20.2 Countermeasures—Computer-Based Controls
- 20.2.1 Authorization
- 20.2.2 Access Controls
- 20.2.3 Views
- 20.2.4 Backup and Recovery
- 20.2.5 Integrity
- 20.2.6 Encryption
- 20.2.7 RAID (Redundant Array of Independent Disks)
- 20.3 Security in Microsoft Office Access DBMS
- 20.4 Security in Oracle DBMS
- 20.5 DBMSs and Web Security
- 20.5.1 Proxy Servers
- 20.5.2 Firewalls
- 20.5.3 Message Digest Algorithms and Digital Signatures
- 20.5.4 Digital Certificates
- 20.5.5 Kerberos
- 20.5.6 Secure Sockets Layer and Secure HTTP
- 20.5.7 Secure Electronic Transactions and Secure Transaction Technology
- 20.5.8 Java Security
- 20.5.9 ActiveX Security
- 20.6 Data Administration and Database Administration
- 20.6.1 Data Administration
- 20.6.2 Database Administration
- 20.6.3 Comparison of Data and Database Administration
- Chapter Summary
- Review Questions
- Exercises
- Chapter 21: Professional, Legal, and Ethical Issues in Data Management
- 21.1 Defining Legal and Ethical Issues in IT
- 21.1.1 Defining Ethics in the Context of IT
- 21.1.2 The Difference Between Ethical and Legal Behavior
- 21.1.3 Ethical Behavior in IT
- 21.2 Legislation and Its Impact on the IT Function
- 21.2.1 Securities and Exchange Commission (SEC) Regulation National Market System (NMS)
- 21.2.2 The Sarbanes-Oxley Act, COBIT, and COSO
- 21.2.3 The Health Insurance Portability and Accountability Act
- 21.2.4 The European Union (EU) Directive on Data Protection of 1995
- 21.2.5 The United Kingdom’s Data Protection Act of 1998
- 21.2.6 Access to Information Laws
- 21.2.7 International Banking—Basel II Accords
- 21.3 Establishing a Culture of Legal and Ethical Data Stewardship
- 21.3.1 Developing an Organization-Wide Policy for Legal and Ethical Behavior
- 21.3.2 Professional Organizations and Codes of Ethics
- 21.3.3 Developing an Organization-Wide Policy for Legal and Ethical Behavior for DreamHome
- 21.4 Intellectual Property
- 21.4.1 Patent
- 21.4.2 Copyright
- 21.4.3 Trademark
- 21.4.4 Intellectual Property Rights Issues for Software
- 21.4.5 Intellectual Property Rights Issues for Data
- Chapter Summary
- Review Questions
- Exercises
- Chapter 22: Transaction Management
- 22.1 Transaction Support
- 22.1.1 Properties of Transactions
- 22.1.2 Database Architecture
- 22.2 Concurrency Control
- 22.2.1 The Need for Concurrency Control
- 22.2.2 Serializability and Recoverability
- 22.2.3 Locking Methods
- 22.2.4 Deadlock
- 22.2.5 Timestamping Methods
- 22.2.6 Multiversion Timestamp Ordering
- 22.2.7 Optimistic Techniques
- 22.2.8 Granularity of Data Items
- 22.3 Database Recovery
- 22.3.1 The Need for Recovery
- 22.3.2 Transactions and Recovery
- 22.3.3 Recovery Facilities
- 22.3.4 Recovery Techniques
- 22.3.5 Recovery in a Distributed DBMS
- 22.4 Advanced Transaction Models
- 22.4.1 Nested Transaction Model
- 22.4.2 Sagas
- 22.4.3 Multilevel Transaction Model
- 22.4.4 Dynamic Restructuring
- 22.4.5 Workflow Models
- 22.5 Concurrency Control and Recovery in Oracle
- 22.5.1 Oracle’s Isolation Levels
- 22.5.2 Multiversion Read Consistency
- 22.5.3 Deadlock Detection
- 22.5.4 Backup and Recovery
- Chapter Summary
- Review Questions
- Exercises
- Chapter 23: Query Processing
- 23.1 Overview of Query Processing
- 23.2 Query Decomposition
- 23.3 Heuristical Approach to Query Optimization
- 23.3.1 Transformation Rules for the Relational Algebra Operations
- 23.3.2 Heuristical Processing Strategies
- 23.4 Cost Estimation for the Relational Algebra Operations
- 23.4.1 Database Statistics
- 23.4.2 Selection Operation (S = σp(R))
- 23.4.3 Join Operation (T = (R ⋈F S))
- 23.4.4 Projection Operation (S = пA1, A2, . . . , A m(R))
- 23.4.5 The Relational Algebra Set Operations (T = R ∪ S, T = R ∩ S, T = R – S)
- 23.5 Enumeration of Alternative Execution Strategies
- 23.5.1 Pipelining
- 23.5.2 Linear Trees
- 23.5.3 Physical Operators and Execution Strategies
- 23.5.4 Reducing the Search Space
- 23.5.5 Enumerating Left-Deep Trees
- 23.5.6 Semantic Query Optimization
- 23.5.7 Alternative Approaches to Query Optimization
- 23.5.8 Distributed Query Optimization
- 23.6 Query Processing and Optimization
- 23.6.1 New Index Types
- 23.7 Query Optimization in Oracle
- 23.7.1 Rule-Based and Cost-Based Optimization
- 23.7.2 Histograms
- 23.7.3 Viewing the Execution Plan
- Chapter Summary
- Review Questions
- Exercises
- Part 6: Distributed DBMSs and Replication
- Chapter 24: Distributed DBMSs—Concepts and Design
- 24.1 Introduction
- 24.1.1 Concepts
- 24.1.2 Advantages and Disadvantages of DDBMSs
- 24.1.3 Homogeneous and Heterogeneous DDBMSs
- 24.2 Overview of Networking
- 24.3 Functions and Architectures of a DDBMS
- 24.3.1 Functions of a DDBMS
- 24.3.2 Reference Architecture for a DDBMS
- 24.3.3 Reference Architecture for a Federated MDBS
- 24.3.4 Component Architecture for a DDBMS
- 24.4 Distributed Relational Database Design
- 24.4.1 Data Allocation
- 24.4.2 Fragmentation
- 24.5 Transparencies in a DDBMS
- 24.5.1 Distribution Transparency
- 24.5.2 Transaction Transparency
- 24.5.3 Performance Transparency
- 24.5.4 DBMS Transparency
- 24.5.5 Summary of Transparencies in a DDBMS
- 24.6 Date’s Twelve Rules for a DDBMS
- Chapter Summary
- Review Questions
- Exercises
- Chapter 25: Distributed DBMSs—Advanced Concepts
- 25.1 Distributed Transaction Management
- 25.2 Distributed Concurrency Control
- 25.2.1 Objectives
- 25.2.2 Distributed Serializability
- 25.2.3 Locking Protocols
- 25.3 Distributed Deadlock Management
- 25.4 Distributed Database Recovery
- 25.4.1 Failures in a Distributed Environment
- 25.4.2 How Failures Affect Recovery
- 25.4.3 Two-Phase Commit (2PC)
- 25.4.4 Three-Phase Commit (3PC)
- 25.4.5 Network Partitioning
- 25.5 The X/Open Distributed Transaction Processing Model
- 25.6 Distributed Query Optimization
- 25.6.1 Data Localization
- 25.6.2 Distributed Joins
- 25.6.3 Global Optimization
- 25.7 Distribution in Oracle
- 25.7.1 Oracle’s DDBMS Functionality
- Chapter Summary
- Review Questions
- Exercises
- Chapter 26: Replication and Mobile Databases
- 26.1 Introduction to Data Replication
- 26.1.1 Applications of Replication
- 26.1.2 Replication Model
- 26.1.3 Functional Model of Replication Protocols
- 26.1.4 Consistency
- 26.2 Replication Architecture
- 26.2.1 Kernel-Based Replication
- 26.2.2 Middleware-Based Replication
- 26.2.3 Processing of Updates
- 26.2.4 Propagation of Updates
- 26.2.5 Update Location (Data Ownership)
- 26.2.6 Termination Protocols
- 26.3 Replication Schemes
- 26.3.1 Eager Primary Copy
- 26.3.2 Lazy Primary Copy
- 26.3.3 Eager Update Anywhere
- 26.3.4 Lazy Update Anywhere
- 26.3.5 Update Anywhere with Uniform Total Order Broadcast
- 26.3.6 SI and Uniform Total Order Broadcast Replication
- 26.4 Introduction to Mobile Databases
- 26.4.1 Mobile DBMSs
- 26.4.2 Issues with Mobile DBMSs
- 26.5 Oracle Replication
- 26.5.1 Oracle’s Replication Functionality
- Chapter Summary
- Review Questions
- Exercises
- Part 7: Object DBMSs
- Chapter 27: Object-Oriented DBMSs—Concepts and Design
- 27.1 Next-Generation Database Systems
- 27.2 Introduction to OODBMSs
- 27.2.1 Definition of Object-Oriented DBMSs
- 27.2.2 Functional Data Models
- 27.2.3 Persistent Programming Languages
- 27.2.4 Alternative Strategies for Developing an OODBMS
- 27.3 Persistence in OODBMSs
- 27.3.1 Pointer Swizzling Techniques
- 27.3.2 Accessing an Object
- 27.3.3 Persistence Schemes
- 27.3.4 Orthogonal Persistence
- 27.4 Issues in OODBMSs
- 27.4.1 Transactions
- 27.4.2 Versions
- 27.4.3 Schema Evolution
- 27.4.4 Architecture
- 27.4.5 Benchmarking
- 27.5 Advantages and Disadvantages of OODBMSs
- 27.5.1 Advantages
- 27.5.2 Disadvantages
- 27.6 Comparison of ORDBMS and OODBMS
- 27.7 Object-Oriented Database Design
- 27.7.1 Comparison of Object-Oriented Data Modeling and Conceptual Data Modeling
- 27.7.2 Relationships and Referential Integrity
- 27.7.3 Behavioral Design
- 27.8 Object-Oriented Analysis and Design with UML
- 27.8.1 UML Diagrams
- 27.8.2 Usage of UML in the Methodology for Database Design
- Chapter Summary
- Review Questions
- Exercises
- Chapter 28: Object-Oriented DBMSs—Standards and Systems
- 28.1 Object Management Group
- 28.1.1 Background
- 28.1.2 The Common Object Request Broker Architecture
- 28.1.3 Other OMG Specifications
- 28.1.4 Model-Driven Architecture
- 28.2 Object Data Standard ODMG 3.0, 1999
- 28.2.1 Object Data Management Group
- 28.2.2 The Object Model
- 28.2.3 The Object Definition Language
- 28.2.4 The Object Query Language
- 28.2.5 Other Parts of the ODMG Standard
- 28.2.6 Mapping the Conceptual Design to a Logical (Object-Oriented) Design
- 28.3 ObjectStore
- 28.3.1 Architecture
- 28.3.2 Building an ObjectStore Application
- 28.3.3 Data Definition in ObjectStore
- 28.3.4 Data Manipulation in ObjectStore
- Chapter Summary
- Review Questions
- Exercises
- Part 8: The Web and DBMSs
- Chapter 29: Web Technology and DBMSs
- 29.1 Introduction to the Internet and the Web
- 29.1.1 Intranets and Extranets
- 29.1.2 e-Commerce and e-Business
- 29.2 The Web
- 29.2.1 HyperText Transfer Protocol
- 29.2.2 HyperText Markup Language
- 29.2.3 Uniform Resource Locators
- 29.2.4 Static and Dynamic Web Pages
- 29.2.5 Web Services
- 29.2.6 Requirements for Web–DBMS Integration
- 29.2.7 Advantages and Disadvantages of the Web–DBMS Approach
- 29.2.8 Approaches to Integrating the Web and DBMSs
- 29.3 Scripting Languages
- 29.3.1 JavaScript and JScript
- 29.3.2 VBScript
- 29.3.3 Perl and PHP
- 29.4 Common Gateway Interface (CGI)
- 29.4.1 Passing Information to a CGI Script
- 29.4.2 Advantages and Disadvantages of CGI
- 29.5 HTTP Cookies
- 29.6 Extending the Web Server
- 29.6.1 Comparison of CGI and API
- 29.7 Java
- 29.7.1 JDBC
- 29.7.2 SQLJ
- 29.7.3 Comparison of JDBC and SQLJ
- 29.7.4 Container-Managed Persistence (CMP)
- 29.7.5 Java Data Objects (JDO)
- 29.7.6 JPA (Java Persistence API)
- 29.7.7 Java Servlets
- 29.7.8 JavaServer Pages
- 29.7.9 Java Web Services
- 29.8 Microsoft’s Web Platform
- 29.8.1 Universal Data Access
- 29.8.2 Active Server Pages and ActiveX Data Objects
- 29.8.3 Remote Data Services
- 29.8.4 Comparison of ASP and JSP
- 29.8.5 Microsoft .NET
- 29.8.6 Microsoft Web Services
- 29.9 Oracle Internet Platform
- 29.9.1 Oracle WebLogic Server
- 29.9.2 Oracle Metadata Repository
- 29.9.3 Oracle Identity Management
- 29.9.4 Oracle Portal
- 29.9.5 Oracle WebCenter
- 29.9.6 Oracle Business Intelligence (BI) Discoverer
- 29.9.7 Oracle SOA (Service-Oriented Architecture) Suite
- Chapter Summary
- Review Questions
- Exercises
- Chapter 30: Semistructured Data and XML
- 30.1 Semistructured Data
- 30.1.1 Object Exchange Model (OEM)
- 30.1.2 Lore and Lorel
- 30.2 Introduction to XML
- 30.2.1 Overview of XML
- 30.2.2 Document Type Definitions (DTDs)
- 30.3 XML-Related Technologies
- 30.3.1 DOM and SAX Interfaces
- 30.3.2 Namespaces
- 30.3.3 XSL and XSLT
- 30.3.4 XPath (XML Path Language)
- 30.3.5 XPointer (XML Pointer Language)
- 30.3.6 XLink (XML Linking Language)
- 30.3.7 XHTML
- 30.3.8 Simple Object Access Protocol (SOAP)
- 30.3.9 Web Services Description Language (WSDL)
- 30.3.10 Universal Discovery, Description, and Integration (UDDI)
- 30.3.11 JSON (JavaScript Object Notation)
- 30.4 XML Schema
- 30.4.1 Resource Description Framework (RDF)
- 30.5 XML Query Languages
- 30.5.1 Extending Lore and Lorel to Handle XML
- 30.5.2 XML Query Working Group
- 30.5.3 XQuery—A Query Language for XML
- 30.5.4 XML Information Set
- 30.5.5 XQuery 1.0 and XPath 2.0 Data Model (XDM)
- 30.5.6 XQuery Update Facility 1.0
- 30.5.7 Formal Semantics
- 30.6 XML and Databases
- 30.6.1 Storing XML in Databases
- 30.6.2 XML and SQL
- 30.6.3 Native XML Databases
- 30.7 XML in Oracle
- Chapter Summary
- Review Questions
- Exercises
- Part 9: Business Intelligence
- Chapter 31: Data Warehousing Concepts
- 31.1 Introduction to Data Warehousing
- 31.1.1 The Evolution of Data Warehousing
- 31.1.2 Data Warehousing Concepts
- 31.1.3 Benefits of Data Warehousing
- 31.1.4 Comparison of OLTP Systems and Data Warehousing
- 31.1.5 Problems of Data Warehousing
- 31.1.6 Real-Time Data Warehouse
- 31.2 Data Warehouse Architecture
- 31.2.1 Operational Data
- 31.2.2 Operational Data Store
- 31.2.3 ETL Manager
- 31.2.4 Warehouse Manager
- 31.2.5 Query Manager
- 31.2.6 Detailed Data
- 31.2.7 Lightly and Highly Summarized Data
- 31.2.8 Archive/Backup Data
- 31.2.9 Metadata
- 31.2.10 End-User Access Tools
- 31.3 Data Warehousing Tools and Technologies
- 31.3.1 Extraction, Transformation, and Loading (ETL)
- 31.3.2 Data Warehouse DBMS
- 31.3.3 Data Warehouse Metadata
- 31.3.4 Administration and Management Tools
- 31.4 Data Mart
- 31.4.1 Reasons for Creating a Data Mart
- 31.5 Data Warehousing and Temporal Databases
- 31.5.1 Temporal Extensions to the SQL Standard
- 31.6 Data Warehousing Using Oracle
- 31.6.1 Warehouse Features in Oracle 11g
- 31.6.2 Oracle Support for Temporal Data
- Chapter Summary
- Review Questions
- Exercises
- Chapter 32: Data Warehousing Design
- 32.1 Designing a Data Warehouse Database
- 32.2 Data Warehouse Development Methodologies
- 32.3 Kimball’s Business Dimensional Lifecycle
- 32.4 Dimensionality Modeling
- 32.4.1 Comparison of DM and ER models
- 32.5 The Dimensional Modeling Stage of Kimball’s Business Dimensional Lifecycle
- 32.5.1 Create a High-Level Dimensional Model (Phase I)
- 32.5.2 Identify All Dimension Attributes for the Dimensional Model (Phase II)
- 32.6 Data Warehouse Development Issues
- 32.7 Data Warehousing Design Using Oracle
- 32.7.1 Oracle Warehouse Builder Components
- 32.7.2 Using Oracle Warehouse Builder
- 32.7.3 Warehouse Builder Features in Oracle 11g
- Chapter Summary
- Review Questions
- Exercises
- Chapter 33: OLAP
- 33.1 Online Analytical Processing
- 33.1.1 OLAP Benchmarks
- 33.2 OLAP Applications
- 33.3 Multidimensional Data Model
- 33.3.1 Alternative Multidimensional Data Representations
- 33.3.2 Dimensional Hierarchy
- 33.3.3 Multidimensional Operations
- 33.3.4 Multidimensional Schemas
- 33.4 OLAP Tools
- 33.4.1 Codd’s Rules for OLAP Tools
- 33.4.2 OLAP Server—Implementation Issues
- 33.4.3 Categories of OLAP Servers
- 33.5 OLAP Extensions to the SQL Standard
- 33.5.1 Extended Grouping Capabilities
- 33.5.2 Elementary OLAP Operators
- 33.6 Oracle OLAP
- 33.6.1 Oracle OLAP Environment
- 33.6.2 Platform for Business Intelligence Applications
- 33.6.3 Oracle Database
- 33.6.4 Oracle OLAP
- 33.6.5 Performance
- 33.6.6 System Management
- 33.6.7 System Requirements
- 33.6.8 OLAP Features in Oracle 11g
- Chapter Summary
- Review Questions
- Exercises
- Chapter 34: Data Mining
- 34.1 Data Mining
- 34.2 Data Mining Techniques
- 34.2.1 Predictive Modeling
- 34.2.2 Database Segmentation
- 34.2.3 Link Analysis
- 34.2.4 Deviation Detection
- 34.3 The Data Mining Process
- 34.3.1 The CRISP-DM Model
- 34.4 Data Mining Tools
- 34.5 Data Mining and Data Warehousing
- 34.6 Oracle Data Mining (ODM)
- 34.6.1 Data Mining Capabilities
- 34.6.2 Enabling Data Mining Applications
- 34.6.3 Predictions and Insights
- 34.6.4 Oracle Data Mining Environment
- 34.6.5 Data Mining Features in Oracle 11g
- Chapter Summary
- Review Questions
- Exercises
- Appendices
- A Users’ Requirements Specification for DreamHome Case Study
- A.1 Branch User Views of DreamHome
- A.1.1 Data Requirements
- A.1.2 Transaction Requirements (Sample)
- A.2 Staff User Views of DreamHome
- A.2.1 Data Requirements
- A.2.2 Transaction Requirements (Sample)
- B Other Case Studies
- B.1 The University Accommodation Office Case Study
- B.1.1 Data Requirements
- B.1.2 Query Transactions (Sample)
- B.2 The EasyDrive School of Motoring Case Study
- B.2.1 Data Requirements
- B.2.2 Query Transactions (Sample)
- B.3 The Wellmeadows Hospital Case Study
- B.3.1 Data Requirements
- B.3.2 Transaction Requirements (Sample)
- C Alternative ER Modeling Notations
- C.1 ER Modeling Using the Chen Notation
- C.2 ER Modeling Using the Crow’s Feet Notation
- D Summary of the Database Design Methodology for Relational Databases
- Step 1: Build Conceptual Data Model
- Step 2: Build Logical Data Model
- Step 3: Translate Logical Data Model for Target DBMS
- Step 4: Design File Organizations and Indexes
- Step 5: Design User Views
- Step 6: Design Security Mechanisms
- Step 7: Consider the Introduction of Controlled Redundancy
- Step 8: Monitor and Tune the Operational System
- E Introduction to Pyrrho: A Lightweight RDBMS
- E.1 Pyrrho Features
- E.2 Download and Install Pyrrho
- E.3 Getting Started
- E.4 The Connection String
- E.5 Pyrrho’s Security Model
- E.6 Pyrrho SQL Syntax
- References
- Further Reading
- Index
Reviews
There are no reviews yet.