Chapter 01 1.0... 1-2 1.1... 1-2 1.1.1...1-2 1.1.2...1-4 1.1.2.1... 1-6 1.1.2.2... 1-7 1.1.2.3... 1-7 1.1.2.4... 1-7 1.1.2.5... 1-8 1.1.2.6... 1-8 1.1.3??...1-8 1.1.4...1-9 1.2...1-12 1.3...1-14 1.4...1-17 1.4.1 Oracle... 1-17 1.4.2 Sybase... 1-18 1.5...1-19... 1-21... 1-22... 1-23... 1-24 Chapter 02 (data models) 2.0... 2-2 2.1... 2-2 2.1.1...2-3 2.1.2 (data independence)...2-4 2.2... 2-5 2.2.1 (hierarchical data model)...2-5 2.2.1.1... 2-6 2.2.1.2... 2-7 2.2.2 (network data model)...2-8 2.2.2.1... 2-8 2.2.2.2...2-13 2.3...2-13 2.3.1 - (ER model, Entity-Relationship model)... 2-13 0-6
2.3.1.1 (entity) (attributes)...2-13 2.3.1.2 (relationship)...2-14 2.3.1.3 (notation)...2-16 2.3.2 XML... 2-18 2.3.3... 2-21... 2-22... 2-23... 2-24... 2-25 Chapter 03 3.0... 3-2 3.1... 3-2 3.1.1...3-2 3.1.2...3-3 3.2... 3-4 3.2.1 (Disk Block)...3-5 3.2.2 (File organization)...3-7 3.3...3-10 3.3.1... 3-11 3.3.2... 3-13 3.3.3 (Multilevel index)... 3-15 3.3.4 B_tree B+_tree... 3-18 3.3.4.1 (Index tree)...3-18 3.3.4.2 B_Tree...3-19 3.3.4.3 B+_tree...3-22 3.3.4.4 (Binary search)...3-26... 3-27... 3-28... 3-29... 3-30 Chapter 04 4.0... 4-2 4.1... 4-2 4.1.1...4-3 4.1.2...4-4 4.1.3...4-6 4.2... 4-8 0-7
0-8 4.2.1 Oracle DBMS... 4-11 4.2.2 Sybase DBMS... 4-16 4.2.3 Microsoft SQL Server... 4-17... 4-19... 4-20... 4-21... 4-22 Chapter 05 5.0... 5-2 5.1... 5-2 5.1.1 (Functional Dependency)...5-4 5.1.2...5-5 5.1.2.1 (Union)... 5-5 5.1.2.2 (Set Difference)... 5-6 5.1.2.3 (Cartesian Product)... 5-7 5.1.2.4 (Selection)... 5-7 5.1.2.5 (Projection)... 5-7 5.1.2.6 (Join)... 5-8 5.2...5-10 5.3...5-14... 5-16... 5-17... 5-18... 5-19 Chapter 06 SQL 6.0... 6-2 6.1 (SQL)... 6-4 6.1.1 SQL...6-4 6.1.2 SQL...6-7 6.1.3...6-9 6.1.4... 6-10 6.1.5... 6-12 6.1.6... 6-13 6.2 SQL...6-14 6.2.1 SQL... 6-14 6.2.2 SQL... 6-16 6.2.3 SQL... 6-17
6.2.4... 6-18 6.2.5 SQL... 6-20 6.2.6... 6-21 6.2.7... 6-24 6.2.8 (subquery)... 6-26 6.2.9 SQL... 6-28 6.2.10 SQL... 6-29... 6-32... 6-33... 6-34... 6-35 Chapter 07 (database design) 7.0... 7-2 7.1... 7-2 7.1.1...7-4 7.1.2 (database design process)...7-4 7.1.3...7-6 7.2... 7-7 7.2.1...7-7 7.2.2... 7-13 7.2.3... 7-16 7.2.3.1...7-17 7.2.3.2...7-18... 7-21... 7-22... 7-23... 7-24 Chapter 08 8.0... 8-2 8.1... 8-2 8.2... 8-4 8.3... 8-5 8.4... 8-8 8.4.1...8-9 8.4.2...8-9 8.4.3... 8-10 0-9
8.5...8-11 8.6...8-13 8.7...8-14 8.7.1... 8-17 8.7.1.1...8-18 8.7.1.2...8-19 8.7.1.3...8-20 8.7.2... 8-22 8.7.2.1...8-23 8.7.2.2...8-24 8.7.2.3...8-24 8.7.2.4...8-24 8.7.2.5...8-25 8.8...8-25 8.8.1... 8-27 8.8.2... 8-30 8.9...8-31 8.9.1... 8-31 8.9.2... 8-32... 8-35... 8-36... 8-37... 8-38 Chapter 09 (distributed database systems) 9.0... 9-2 9.1... 9-2 9.1.1...9-3 9.1.2...9-5 9.1.2.1... 9-6 9.1.2.2... 9-7 9.3... 9-8 9.3.1...9-8 9.3.1.1... 9-8 9.3.1.2... 9-9 9.3.1.3... 9-9 9.3.2... 9-10 9.4...9-12 9.4.1... 9-13 0-10
9.4.2 (middleware)... 9-15 9.5...9-17 9.5.1 (synchronization)... 9-18 9.5.2... 9-20... 9-23... 9-24... 9-25... 9-26 Chapter 10 10.0...10-2 10.1...10-2 10.1.1... 10-4 10.1.2... 10-5 10.2...10-7 10.2.1 Web... 10-7 10.2.2 Web... 10-9 10.2.3... 10-10 10.3 XML... 10-12 10.3.1 XML... 10-13 10.3.1.1 SGML?...10-13 10.3.1.2 XML?...10-13 10.3.2 XML... 10-14 10.3.3 XML... 10-15 10.3.4... 10-17 10.3.5 XML... 10-18 10.4 SQL PHP... 10-19 10.4.1 MySQL+PHP... 10-19 10.4.2 MySQL... 10-24 10.4.3 MySQL PHP... 10-26 10.4.4... 10-31... 10-33... 10-34... 10-36 Chapter 11 (transaction) (concurrency) 11.0...11-2 0-11
0-12 11.1...11-2 11.1.1... 11-2 11.1.2... 11-4 11.1.3... 11-6 11.2.1... 11-9 11.2 (schedule) (recovery)...11-9 11.2.1... 11-9 11.2.1.1 (System log)...11-10 11.2.1.2 (commit point)...11-11 11.2.1.3 System log (checkpoints)...11-12 11.2.2... 11-12 11.2.3 SQL... 11-15 11.3 (concurrency control)... 11-15 11.3.1 (locking)... 11-15 11.3.2 (timestamp)... 11-16 11.3.3 (multiversion concurrency control)... 11-17 11.3.4... 11-17 11.4... 11-18... 11-20... 11-21... 11-22... 11-23 Chapter 12 (recovery) (security) 12.0...12-2 12.1 (recovery)...12-2 12.1.1... 12-3 12.1.1.1 (deferred update)...12-4 12.1.1.2 (immediate update)...12-5 12.1.2... 12-6 12.1.3 (rollback)... 12-8 12.2 (Disk Array)...12-9 12.2.1... 12-9 12.2.2... 12-11 12.3... 12-13 12.3.1... 12-14 12.3.2 DBMS... 12-15 12.3.3... 12-16
12.3.4... 12-17... 12-19... 12-20... 12-21... 12-22 Chapter 13 13.0...13-2 13.1...13-3 13.1.1... 13-3 13.1.2... 13-5 13.1.2.1...13-6 13.1.2.2...13-6 13.1.2.3...13-7 13.1.2.4...13-7 13.2...13-7 13.2.1... 13-9 13.2.2... 13-12 13.2.3... 13-14 13.3... 13-15 13.4... 13-17 13.5... 13-19 13.6... 13-22 13.6.1... 13-23 13.6.2... 13-24... 13-26... 13-27... 13-28 Chapter 14 14.0...14-2 14.1...14-2 14.2...14-3 14.2.1... 14-6 14.2.2... 14-8 14.2.3... 14-9 14.2.4... 14-9 0-13
0-14 14.3... 14-10 14.4... 14-11... 14-14... 14-15... 14-16 Chapter 15 15.0...15-2 15.1...15-2 15.2 (Active database systems)...15-6 15.3...15-8 15.4... 15-10 15.4.1... 15-10 15.4.2... 15-11 15.5... 15-12 15.6... 15-13... 15-16... 15-17... 15-18 Chapter 16 16.0...16-2 16.1 ERP...16-3 16.1.1 ERP... 16-6 16.1.2 ERP... 16-8 16.2 ERP...16-9 16.2.1 ERP... 16-10 16.2.2 ERP... 16-12 16.2.3 ERP... 16-13... 16-16... 16-17... 16-18 Chapter 17 (data warehouse) (data mining) 17.0...17-2 17.1...17-3 17.1.1... 17-5
17.1.2... 17-6 17.1.3 (multi-dimensional data modeling)... 17-13 17.1.4... 17-15 17.1.5... 17-16 17.1.6... 17-16 17.1.6.1 (CRM, customer relationship management)...17-16 17.1.6.2 (electronic commerce)...17-16 17.2... 17-17 17.2.1... 17-17 17.2.2... 17-19 17.2.2.1 (biomedicine) DNA...17-19 17.2.2.2...17-19 17.2.2.3...17-19 17.2.2.4...17-20 17.2.3... 17-20 17.2.4... 17-21 17.2.5... 17-22 17.2.6... 17-23... 17-25... 17-26... 17-28 Chapter 18 18.0...18-2 18.1...18-2 18.1.1... 18-2 18.1.2... 18-3 18.2...18-4 18.3...18-5 18.3.1... 18-6 18.3.2... 18-6 18.3.3... 18-6 18.3.4... 18-7 18.3.5... 18-8 18.4...18-8 18.4.1... 18-10 18.4.2 (bioinformatics)... 18-11 18.4.3 (mobile databases)... 18-11 0-15
18.4.4 (metadata)... 18-11 18.5... 18-12 18.5.1... 18-13 18.5.2... 18-15 18.5.3... 18-15 18.5.4... 18-17 18.5.4.1 (Decision support system)...18-17 18.5.4.2 (Executive information systems)...18-19 18.5.5... 18-21 18.5.6... 18-23 18.6... 18-23 18.6.1... 18-25 18.6.2... 18-28... 18-32... 18-33... 18-34 Appendix A ER.1 (ER Model)...A-2.2 ER Model...A-3.3 (relationship)...a-4.4 ER model...a-6... A-10 Appendix B Appendix C (Glossary) 0-16
09 (distributed database systems)
9.0 (distributed databases) (distributed databases) 9.1 (distributed database systems) (Terminal) 9-2 (DDBMS, Distributed Database Management System)
09 (distributed database systems) (Distributed system) 9.1.1 (Distributed database) (Logical view) 1. 9-1 2 A B D 9-3
9-1 2. (Reliability) (Availability) 3. 4. 9-1 9-4
09 (distributed database systems) 9-1 9.1.2 (Client-Server Architecture) (Entity) (Server) ( client) 9-2 9-2 Socket RPC 9-2 9-5
9.1.2.1 1. ( ) (Concurrent) (Iterative) (Command Loop) 9-3 9-3 (Concurrent) (Iterative) 2. client server (Connection-Oriented) (Connectionless) Socket TCP UDP (Concurrent, Connection-Oriented) (Concurrent, Connectionless) (Iterative, Connection-Oriented) (Iterative, Connectionless) 9-6
09 (distributed database systems) (Mainframe-centric) (PC-server-centric) 9.1.2.2 UNIX PC (Downsizing) Novell Windows NT 9-7
(Rightsizing) PC 9.3 (distributed computing system) (segment) (replicate) 9.3.1 (Availability) (update) 9-8 9.3.1.1 (Horizontal fragmentation) (Vertical fragmentation) (Mixed fragmentation) 9-4 (Fragmentation schema)
09 (distributed database systems) 9-4 1. 2. 9-4 9.3.1.2 (Allocation schema) A A 9.3.1.3 (Replication) (Availability) (Fully replicated) (Update) 9-9
(Consistency) (Concurrency control) (update) allocation 9.3.2 (transparency) (Query processing) 1. 2. 9-5 1. A A B 9-10
09 (distributed database systems) 2. B A B 3. A B A B A B A B 2 A B 3 (Semijoin) (Join) 9-5 (B) projection (B) A A B ( (B)) A (join) 9-5 9-11
9.4 DBMS 9-6 (Homogeneous) (Heterogeneous) (Multidatabase System) (Federated) 9-6 (Autonomy) (Local autonomy) (Distribution transparency) (Schema integration) 9-12
09 (distributed database systems) (View) 9-7 Oracle Sybase 9-7 9.4.1 (Client-server architecture) (Server) (Client) (Client-server relationship) (Print server) (File server) (Database server) 9-8 9-13
9-8 (Contract) (High-level architecture) 9-9 9-9 1 ( 2) ( 3) ( 4) ( 5) ( 6) 9-9 9-14 9-9
09 (distributed database systems) 9-10 1. (Server program) (Back-end) 2. (Client program) (Front-end) DBMS (Catalog) 3. (Communications software) (Communications protocol) (Distributed operating system) 9-10 9.4.2 (middleware) SQL Server SQL SQL Server SQL SQL Server SQL 9-15
ODBC(open database connectivity) 9-10 DBMS (Middleware) 9-11 1. DBMS DBMS DBMS 2. DBMS 9-11 DBMS ( ) 9-12 9-11 9-16
09 (distributed database systems) 9-12 DBMS DBMS (Location transparency) (Distribution transparency) DBMS (DBMS transparency) DBMS (multidatabase) (federated database)? DBMS DBMS DBMS Multidatabase system federated database system (transparent) DBMS 9.5 (real-time) real-time Sybase 9-17
Pocket PowerBuilder PDA( Pocket PC) Pocket PC desktop PC Pocket PowerBuilder 4 GL (synchronization) Pocket PC desktop PC (consistent) Pocket PowerBuilder desktop PC Pocket PC Pocket PC desktop PC desktop PC Pocket PC Pocket PC desktop PC Pocket PowerBuilder MobiLink 9.5.1 (synchronization) MobiLink (main database consolidated database) (remote databases) (synchronized) Pocket PowerBuilder MobiLink Synchronization server 9-13 MobiLink 1. (consolidated database) (remote database) ODBC SyBase Adaptive Server Anywhere (ASA) Sybase Adaptive Enterprise Oracle IBM DB2 Microsoft SQL Server (subset) Pocket PowerBuilder remote database ASA 2. MobiLink Synchronization server dbmlsrv8 MobiLink Synchronization server MobiLink Synchronization server 9-18
09 (distributed database systems) 9-13 MobiLink 9-14 MobiLink (shared data) 1. (data replication) (transactions) transaction log file log file log file 2. (data synchronization) MobiLink loose consistency model remote database 9-19
9-14 MobiLink 9.5.2 publication publication remote database database object publication article article (rows) article database object user synchronization client MobiLink remote database MobiLink user name consolidated database ml_user MobiLink user name subscription user publication subscription 1. synchronization protocol TCP/IP HTTP HTTPS 2. address myserver.company.com 3. connection MobiLink (event-driven process) MobiLink client MobiLink server synchronization events MobiLink server event script 9-20
09 (distributed database systems) (synchronization process) Dbmlsync MobiLink client Dbmlsync remote site TCP/IP HTTP HTTPS remote database ( upload stream) remote database upload stream 1. MobiLink user name password 2. synchronization scripts 3. synchronization timestamp 4. publication tables columns 5. inserts updates deletes upload stream Dbmlsync publication subscription MobiLink synchronization serverserver consolidated database download stream consolidated database consolidated database remote database (consistent) 9-15 synchronization objects scripts Pocket PowerBuilder scripts synchronization client upload stream synchronization server client remote database publication subscription server server 9-21
9-15 (synchronization process) (transaction integrity) (transaction processing) 9-22
09 (distributed database systems) (distribution) DBMS (Fragmentation) (Replication) (Allocation) 3 Sybase SQL Anywhere MobiLink 9-23
1. 2. DBMS 3. 4. 9-4 5. 6. 9-5 $35000 7. 8. 9. 10. 9-24
09 (distributed database systems) DBMS (concurrency control ) distributed concurrency control DBMS (recovery ) distributed recovery (query) (transaction) Sybase MobiLink Oracle Oracle Net 8 Net 8 SQL server client 9-25
DBMS distributed DBMS DBMS Multidatabase system federated system DBMS Multidatabase system federated system 9-26