Title:
Introduction to database and knowledge-base systems
Personal Author:
Publication Information:
River Edge, N.J. : World Scientific, 1992
ISBN:
9789810206192
Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000003225210 | QA76.9.D3 K75 1992 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
This book provides a comprehensive yet concise coverage of the concepts and technology of database systems and their evolution into knowledge bases. The traditional material on database systems at senior undergraduate level is covered. An understanding of concepts is emphasized avoiding extremes in formalism or detail.
Table of Contents
Chapter 1 Preliminaries and Overview | p. 1 |
1.1 Introduction | p. 1 |
1.2 The Database Environment | p. 3 |
1.3 Architecture of Database Systems | p. 5 |
1.4 Data Models | p. 6 |
1.4.1 Entity Relationship Model | p. 7 |
1.4.2 Database Languages | p. 9 |
1.5 Structuring Database Systems | p. 11 |
1.5.1 Functional Architecture | p. 11 |
1.5.2 The Client-Server Architecture | p. 13 |
1.5.3 Personal Computer Database Systems | p. 15 |
1.5.4 Online Transaction Processing Systems | p. 16 |
1.6 From Databases to Knowledge-Bases | p. 18 |
1.7 Summary | p. 19 |
Exercises | p. 20 |
Bibliographic Notes and References | p. 21 |
Chapter 2 The Relational Model | p. 23 |
2.1 The Relational Data Model | p. 23 |
2.1.1 ER Model and Relational Model | p. 27 |
2.2 Integrity Rules | p. 29 |
2.3 Functional Dependency | p. 30 |
2.4 Normal Forms for Relations | p. 32 |
2.4.1 First Three Normal Forms | p. 32 |
2.4.2 Boyce-Codd Normal Form | p. 38 |
2.5 Summary | p. 39 |
Exercises | p. 39 |
Bibliographic Notes and References | p. 41 |
Chapter 3 Relational Operations and Further Normalization | p. 43 |
3.1 Relational Algebra Operators | p. 44 |
3.1.1 Basic Operators | p. 44 |
3.1.2 Derived Operators | p. 46 |
3.2 Relational Calculus | p. 48 |
3.3 Multivalued Dependencies | p. 50 |
3.4 The Fourth Normal Form | p. 55 |
3.5 Lossless Join Decomposition | p. 56 |
3.6 Join Dependency | p. 61 |
3.6.1 The Fifth Normal Form | p. 62 |
3.7 Summary | p. 62 |
Exercises | p. 63 |
Bibliographic Notes and References | p. 65 |
Chapter 4 Relational Database Languages and Systems | p. 67 |
4.1 SQL | p. 68 |
4.1.1 Operations on Single Tables | p. 71 |
4.1.2 Queries Involving more than One Table | p. 72 |
4.1.3 Nested Queries | p. 73 |
4.1.4 Aggregate Functions | p. 76 |
4.1.5 Other Operations | p. 77 |
4.1.6 Shortcomings of SQL | p. 79 |
4.2 QUEL | p. 80 |
4.2.1 Aggregate Operations | p. 84 |
4.2.2 Other Operations | p. 85 |
4.3 Query-By-Example | p. 86 |
4.3.1 Aggregate Operators | p. 89 |
4.3.2 Other Operations | p. 89 |
4.3.3 Recursive Queries | p. 90 |
4.4 Criteria for Evaluating Relational Database Systems | p. 91 |
4.5 Summary | p. 97 |
Exercises | p. 97 |
Bibliographic Notes and References | p. 99 |
Chapter 5 Hierarchical and Network Models | p. 101 |
5.1 The Hierarchical Data Model | p. 103 |
5.1.1 Translating Entity-Relationship Representations | p. 104 |
5.1.2 Logical Relationships | p. 104 |
5.1.3 Database Definition | p. 107 |
5.2 Hierarchical Data Manipulation | p. 107 |
5.3 The Network Model | p. 111 |
5.3.1 From Hierarchy to Network | p. 111 |
5.3.2 Background | p. 111 |
5.3.3 Network Model Data Structures | p. 113 |
5.3.4 The DBTG Set | p. 115 |
5.3.5 Data Definition Language | p. 116 |
5.4 Network Data Manipulation | p. 118 |
5.5 Conclusion | p. 125 |
5.6 Summary | p. 126 |
Exercises | p. 126 |
Bibliographic Notes and References | p. 128 |
Chapter 6 Physical Data Organization | p. 131 |
6.1 Basic Concepts | p. 131 |
6.1.1 Addressing | p. 134 |
6.1.2 Performance Measures | p. 135 |
6.2 Heap Storage | p. 136 |
6.3 Indexed Sequential Organization | p. 137 |
6.3.1 Multi-level Indexes | p. 141 |
6.3.2 Tree Structures | p. 142 |
6.4 The B-Tree Organization | p. 145 |
6.4.1 B+trees | p. 153 |
6.5 Hashed Files | p. 153 |
6.5.1 Basic Hashing Scheme | p. 154 |
6.5.2 Problems with the Basic Scheme | p. 157 |
6.6 Extendible Hashing | p. 158 |
6.7 Linear Hashing | p. 163 |
6.8 Multi-key Organizations | p. 166 |
6.9 Grid Files | p. 168 |
6.10 Partitioned Hash Functions | p. 170 |
6.11 Summary | p. 172 |
Exercises | p. 173 |
Bibliographic Notes and References | p. 175 |
Chapter 7 Elements of Database Design | p. 177 |
7.1 Requirement Analysis | p. 179 |
7.2 Conceptual Modeling | p. 180 |
7.2.1 The Extended Entity-Relationship Model | p. 181 |
7.2.2 Conceptual Representation with the EER Model | p. 183 |
7.3 Data Modeling | p. 187 |
7.4 Transaction Analysis | p. 188 |
7.5 Database Performance | p. 189 |
7.5.1 Tools for Physical Database Design | p. 192 |
7.6 Summary | p. 194 |
Exercises | p. 194 |
Bibliographic Notes and References | p. 195 |
Chapter 8 Protection and Preservation of Databases | p. 197 |
8.1 Transactions | p. 197 |
8.2 Integrity Control | p. 199 |
8.2.1 Integrity Constraints | p. 201 |
8.2.2 Integrity Constraints in SQL | p. 204 |
8.2.3 Integrity Features in INGRES | p. 206 |
8.3 Security | p. 207 |
8.3.1 Views | p. 210 |
8.3.2 View Definition and Authorization in SQL | p. 211 |
8.3.3 Security Features in INGRES | p. 214 |
8.4 Database Recovery | p. 216 |
8.4.1 Log-based Recovery Schemes | p. 218 |
8.4.2 Shadow Paging | p. 223 |
8.5 Summary | p. 224 |
Exercises | p. 224 |
Bibliographic Notes and References | p. 226 |
Chapter 9 Concurrency Control | p. 229 |
9.1 Transactions and Serializability | p. 230 |
9.2 Concurrency Control through Locking | p. 236 |
9.2.1 Deadlocks | p. 238 |
9.2.2 Avoiding Deadlocks | p. 241 |
9.2.3 Deadlock Detection and Resolution | p. 243 |
9.2.4 Locking Modes | p. 244 |
9.3 Timestamping | p. 245 |
9.4 Summary | p. 248 |
Exercises | p. 249 |
Bibliographic Notes and References | p. 250 |
Chapter 10 Distributed Database Systems | p. 253 |
10.1 Features of Distributed Database Systems | p. 254 |
10.2 Structuring Distributed Databases | p. 256 |
10.3 Query Optimization | p. 258 |
10.3.1 Semijoin Programs | p. 261 |
10.4 Concurrency Control | p. 263 |
10.4.1 Concurrency Control based on Locking | p. 263 |
10.4.2 Handling Deadlocks | p. 265 |
10.4.3 Timestamping | p. 267 |
10.5 Recovery | p. 267 |
10.5.1 Two-phase Commit Protocol | p. 269 |
10.6 Implementations | p. 270 |
10.7 Summary | p. 270 |
Exercises | p. 271 |
Bibliographic Notes and References | p. 272 |
Chapter 11 Deductive Databases | p. 275 |
11.1 Introduction | p. 275 |
11.1.1 Structure | p. 276 |
11.1.2 Architecture | p. 277 |
11.2 Basic Elements | p. 277 |
11.3 Database Systems and Prolog | p. 280 |
11.3.1 Inference and Query Processing in Prolog | p. 280 |
11.3.2 Prolog for Database Queries | p. 282 |
11.3.3 Limitations of Prolog for Database Usage | p. 285 |
11.4 Datalog | p. 286 |
11.5 Query Processing Strategies | p. 287 |
11.5.1 Recursive Query Processing | p. 288 |
11.5.2 Naive Evaluation | p. 289 |
11.5.3 Semi-Naive Evaluation | p. 290 |
11.5.4 Magic Sets | p. 291 |
11.6 Implementations | p. 296 |
11.7 Summary | p. 296 |
Exercises | p. 297 |
Bibliographic Notes and References | p. 298 |
Chapter 12 Object-Oriented Database Systems | p. 301 |
12.1 Introduction | p. 301 |
12.2 Object-Oriented Programming Languages | p. 303 |
12.3 Features of Object-Oriented Database Systems | p. 306 |
12.4 Querying Object-Oriented Databases | p. 313 |
12.5 Implementations | p. 316 |
12.6 Summary | p. 317 |
Bibliographic Notes and References | p. 317 |