목차
역자서문 = ⅴ
저자서문 = ⅶ
Chapter 1 Introduction = 1
1.1. 데이터베이스 시스템의 응용 = 1
1.2. 데이터베이스 시스템의 목적 = 3
1.3. 데이터의 관점 = 6
1.4. 데이터베이스 언어 = 9
1.5. 관계형 데이터베이스 = 12
1.6. 데이터베이스 설계 = 15
1.7. 데이터 저장과 질의 = 19
1.8. 트랜잭션 관리 = 21
1.9. 데이터베이스 구조 = 22
1.10. 데이터 마이닝과 정보 검색 = 24
1.11. 전문적 데이터베이스 = 25
1.12. 데이터베이스 사용자와 관리자 = 26
1.13. 데이터베이스 시스템의 역사 = 28
1.14. 요약 = 30
연습문제 = 32
참고문헌 = 33
Part 1 관계형 데이터베이스 = 35
Chapter 2 관계형 모델 소개 = 37
2.1. 관계형 데이터베이스의 구조 = 37
2.2. 데이터베이스 스키마 = 40
2.3. 키 = 42
2.4. 스키마 다이어그램 = 44
2.5. 관계형 질의어 = 45
2.6. 관계 연산 = 46
2.7. 요약 = 49
연습문제 = 50
참고문헌 = 51
Chapter 3 SQL 소개 = 53
3.1. SQL 질의 언어의 개요 = 53
3.2. SQL 데이터 정의 = 54
3.3. SQL 질의의 기본 구조 = 59
3.4. 부가적인 기본 연산 = 69
3.5. 집합 연산 = 73
3.6. 널 값 = 76
3.7. 집계 함수 = 77
3.8. 중첩 하위 질의 = 83
3.9. 데이터베이스의 변경 = 90
3.10. 요약 = 95
연습문제 = 97
참고문헌 = 101
Chapter 4 중급 SQL = 103
4.1. 조인 식 = 103
4.2. 뷰 = 110
4.3. 트랜잭션 = 116
4.4. 무결성 제약조건 = 117
4.5. SQL의 데이터 타입과 스키마 = 124
4.6. 권한 = 131
4.7. 요약 = 138
연습문제 = 139
참고문헌 = 142
Chapter 5 고급 SQL = 143
5.1. 프로그래밍 언어에서 SQL의 접근 = 143
5.2. 함수와 프로시저 = 158
5.3. 트리거 = 165
5.4. 재귀적 질의** = 171
5.5. 고급 집계 기능** = 176
5.6. OLAP** = 180
5.7. 요약 = 192
연습문제 = 193
참고문헌 = 197
Chapter 6 정규 관계형 질의 언어 = 199
6.1. 관계 대수 연산 = 199
6.2. 투플 관계 해석 = 220
6.3. 도메인 관계 해석 = 224
6.4. 요약 = 228
연습문제 = 229
참고문헌 = 232
Part 2 데이터베이스 설계 = 233
Chapter 7 데이터베이스 설계와 E-R 모델 = 235
7.1. 설계 과정의 개요 = 235
7.2. 개체 관계 모델 = 238
7.3. 제약조건 = 244
7.4. 개체 집합에서의 중복된 속성들 제거 = 247
7.5. 개체-관계 다이어그램 = 250
7.6. 릴레이션 스키마로의 측소 = 258
7.7. 개체-관계 설계에 대한 논점들 = 264
7.8. 확장된 E-R의 특성들 = 269
7.9. 데이터를 모델링하기 위한 대안적인 표기법들 = 278
7.10. 데이터베이스 설계의 다른 관점들 = 283
7.11. 요약 = 286
연습문제 = 288
참고문헌 = 292
Chapter 8 관계형 데이터베이스의 설계 = 295
8.1. 훌륭한 관계형 설계의 여러 특징들 = 295
8.2. 원자적 도메인과 제1정규형 = 299
8.3. 함수 종속을 이용한 분해 = 301
8.4. 함수 종속 이론 = 309
8.5. 분해를 위한 알고리즘 = 319
8.6. 다중값 종속을 이용한 분해 = 326
8.7. 다른 정규형들 = 330
8.8. 데이터베이스 설계 절차 = 331
8.9. 시간 데이터 모델링하기 = 334
8.10. 요약 = 337
연습문제 = 338
참고문헌 = 342
Chapter 9 응용 프로그램의 설계와 개발 = 343
9.1. 응용 프로그램과 사용자 인터페이스 = 343
9.2. 웹의 기본 = 345
9.3. 서블릿과 JSP = 350
9.4. 응용 프로그램 구조 = 357
9.5. 빠른 응용 프로그램 개발 = 362
9.6. 응용 프로그램 성능 = 366
9.7. 응용 프로그램 보안 = 368
9.8. 암호화와 응용 = 376
9.9. 요약 = 382
연습문제 = 384
참고문헌 = 389
Part 3 자료 저장 및 질의 = 391
Chapter 10 저장과 파일 구조 = 393
10.1. 물리적 저장 매체의 개관 = 393
10.2. 자기 디스크와 플래시 저장장치 = 396
10.3. RAID = 404
10.4. 3차 저장장치 = 413
10.5. 파일 구조 = 415
10.6. 파일 안의 레코드 구조 = 420
10.7. 데이터 사전 저장장치 = 425
10.8. 데이터베이스 버퍼 = 427
10.9. 요약 = 430
연습문제 = 432
참고문헌 = 434
Chapter 11 인덱싱과 해싱 = 437
11.1. 기본 개념 = 437
11.2. 순서 인덱스 = 438
11.3. $$B^+$$-트리 인덱스 파일 = 447
11.4. $$B^+$$-트리 확장 = 460
11.5. 다중 키 액세스 = 467
11.6. 정적 해싱 = 469
11.7. 동적 해싱 = 474
11.8. 순서 인덱스와 해싱 비교 = 482
11.9. 비트맵 인덱스 = 483
11.10. SQL에서 인덱스 정의 = 487
11.11. 요약 = 488
연습문제 = 490
참고문헌 = 493
Chapter 12 질의 처리 = 495
12.1. 개요 = 495
12.2. 질의 비용의 측정 = 497
12.3. 선택 연산 = 499
12.4. 정렬 = 504
12.5. 조인 연산 = 507
12.6. 기타 연산들 = 521
12.7. 표현식의 평가 = 524
12.8. 요약 = 529
연습문제 = 531
참고문헌 = 533
Chapter 13 질의 최적화 = 535
13.1. 개요 = 535
13.2. 관계형 식의 변환 = 537
13.3. 결과의 통계정보 추정 = 546
13.4. 수행 계획의 선택 = 553
13.5. 실체화 뷰** = 562
13.6. 질의 최적화의 심화** = 567
13.7. 요약 = 570
연습문제 = 571
참고문헌 = 575
Part 4 트랜잭션 관리 = 577
Chapter 14 트랜잭션 = 579
14.1. 트랜잭션 개념 = 579
14.2. 간단한 트랜잭션 모델 = 581
14.3. 저장 장치의 구조 = 583
14.4. 트랜잭션 원자성과 지속성 = 584
14.5. 트랜잭션 고립성 = 587
14.6. 직렬성 = 592
14.7. 트랜잭션 고립성과 원자성 = 597
14.8. 트랜잭션 고립성 수준 = 599
14.9. 고립성 수준의 구현 = 601
14.10. SQL 문장을 사용한 트랜잭션 = 603
14.11. 요약 = 604
연습문제 = 606
참고문헌 = 608
Chapter 15 동시성 제어 = 609
15.1. 락 기반의 규약 = 609
15.2. 교착 상태 처리 = 621
15.3. 다중 세분도 = 626
15.4. 타임스탬프 기반의 규약 = 629
15.5. 검증 기반의 규약 = 633
15.6. 다중 버전 기법 = 636
15.7. 스냅샷 고립 = 638
15.8. 삽입 연산, 삭제 연산, 술어부 읽기 = 643
15.9. 실제로 사용되는 약한 수준의 일관성 = 648
15.10. 인덱스 구조에서의 동시성** = 651
15.11. 요약 = 654
연습문제 = 657
참고문헌 = 662
Chapter 16 복구 시스템 = 663
16.1. 실패의 분류 = 663
16.2. 저장 장치 = 664
16.3. 복구와 원자성 = 667
16.4. 복구 알고리즘 = 676
16.5. 버퍼 관리 = 678
16.6. 비휘발성 저장 장치에 손실이 있는 실패 = 682
16.7. 조기 락 해제와 논리적 Undo 연산 = 683
16.8. ARIES = 689
16.9. 원격 백업 시스템 = 695
16.10. 요약 = 697
연습문제 = 700
참고문헌 = 702
Part 5 시스템 구조 = 705
Chapter 17 데이터베이스 시스템 구조 = 707
17.1. 중앙 집중 구조와 클라이언트-서버 구조 = 708
17.2. 서버 시스템 구조 = 710
17.3. 병렬 시스템 = 715
17.4. 분산 시스템 = 722
17.5. 네트워크 형태 = 726
17.6. 요약 = 728
연습문제 = 730
참고문헌 = 732
Chapter 18 병렬 데이터베이스 = 733
18.1. 소개 = 733
18.2. I/O 병렬화 = 734
18.3. 질의간 병렬화 = 738
18.4. 질의내 병렬화 = 739
18.5. 연산내 병렬 = 740
18.6. 연산간 병렬 = 748
18.7. 질의 최적화 = 749
18.8. 병렬 시스템 설계 = 750
18.9. 다중 코어 프로세서에서의 병렬화 = 752
18.10. 요약 = 754
연습문제 = 755
참고문헌 = 757
Chapter 19 분산 데이터베이스 = 759
19.1. 동질적 데이터베이스와 이질적 데이터베이스 = 759
19.2. 분산 데이터 저장소 = 760
19.3. 분산 트랜잭션 = 763
19.4. 완료 규약 = 766
19.5. 분산 데이터베이스에서의 동시성 제어 = 772
19.6. 가용성 = 781
19.7. 분산 질의 처리 = 787
19.8. 이질적 분산 데이터베이스 = 791
19.9. 클라우드 기반 데이터베이스 = 795
19.10. 디렉토리 시스템 = 803
19.11. 요약 = 808
연습문제 = 811
참고문헌 = 814
Part 6 데이터 웨어하우징, 데이터 마이닝과 정보 검색 = 817
Chapter 20. 데이터 웨어하우징과 마이닝 = 819
20.1. 의사 결정 지원 시스템 = 819
20.2. 데이터 웨어하우징 = 821
20.3. 데이터 마이닝 = 825
20.4. 분류 = 826
20.5. 연관 규칙 = 835
20.6. 다른 형태의 연관 규칙 = 837
20.7. 클러스터링 = 838
20.8. 다른 형태의 마이닝 = 839
20.9. 요약 = 840
연습문제 = 842
참고문헌 = 844
Chapter 21 정보 검색 = 845
21.1. 소개 = 845
21.2. 용어를 이용한 연관성 순위화 = 847
21.3. 하이퍼링크를 이용한 연관성 = 850
21.4. 동의어, 동음이의어, 온톨로지 = 855
21.5. 문서의 인덱스 작업 = 857
21.6. 검색 유효성 검사 = 858
21.7. 웹 수집기와 웹 색인화 = 859
21.8. 정보 검색 : 페이지의 순위를 넘어서 = 861
21.9. 디렉토리와 범주 = 864
21.10. 요약 = 866
연습문제 = 868
참고문헌 = 869
Part 7 특수 데이터베이스 = 871
Chapter 22 객체 기반 데이터베이스 = 873
22.1. 개관 = 873
22.2. 복합 자료타입 = 874
22.3. SQL에서의 구조타입과 상속 = 876
22.4. 테이블 상속 = 881
22.5. SQL의 배열과 다중 집합타입 = 883
22.6. SQL의 객체 식별자와 참조형 = 887
22.7. O-R 특징 구현 = 889
22.8. 영속성 지원 프로그래밍 언어 = 890
22.9. 객체-관계형 매핑 = 897
22.10. 객체 지향 대 객체-관계형 = 898
22.11. 요약 = 899
연습문제 = 901
참고문헌 = 904
Chapter 23 XML = 905
23.1. 동기 = 905
23.2. XML 데이터의 구조 = 909
23.3. XML 문서 스키마 = 913
23.4. 질의와 변형 = 920
23.5. XML 응용 프로그램 인터페이스 = 928
23.6. XML 자료의 저장 = 930
23.7. XML 응용 = 936
23.8. 요약 = 939
연습문제 = 941
참고문헌 = 943
Part 8 고급 주제들 = 945
Chapter 24 고급 응용 프로그램 개발 = 947
24.1. 성능 조율 = 948
24.2. 성능 평가 = 962
24.3. 응용 프로그램 개발의 또 다른 쟁점들 = 966
24.4. 표준화 = 968
24.5. 요약 = 973
연습문제 = 974
참고문헌 = 976
Chapter 25 공간 그리고 시간 데이터 이동성 = 977
25.1. 동기 = 977
25.2. 시간 데이터 = 978
25.3. 공간 데이터와 지리 데이터 = 980
25.4. 멀티미디어 데이터베이스 = 991
25.5. 모바일 데이터베이스와 개인 데이터베이스 = 994
25.6. 요약 = 1000
연습문제 = 1001
참고문헌 = 1002
Chapter 26 고급 트랜잭션 처리 = 1005
26.1. 트랜잭션 처리 모니터 = 1005
26.2. 트랜잭션 워크플로우 = 1010
26.3. 전자 상거래 = 1015
26.4. 메인 메모리 데이터베이스 = 1018
26.5. 실시간 트랜잭션 시스템 = 1021
26.6. 장기 트랜잭션 = 1022
26.7. 요약 = 1027
연습문제 = 1029
참고문헌 = 1031
Part 9 사례연구(Case Studies) = 1033
Chapter 27 PostgreSQL = 1035
27.1. 소개 = 1035
27.2. 사용자 인터페이스 = 1036
27.3. SQL의 변화와 확장 = 1038
27.4. PostgreSQL의 트랜잭션 관리 = 1048
27.5. 저장과 인덱싱 = 1056
27.6. 질의 처리와 최적화 = 1061
27.7. 시스템 구조 = 1064
참고문헌 = 1065
Chapter 28 Oracle = 1067
28.1. 데이터베이스 설계와 질의 도구 = 1067
28.2. SQL 변화와 확장 = 1068
28.3. 저장 및 인덱싱 = 1072
28.4. 질의 처리와 최적화 = 1082
28.5. 동시성 제어와 복구 = 1089
Chapter 29 IBM DB2 Universal Database = 1101
29.1. 개요 = 1101
29.2. 데이터베이스 설계 도구 = 1102
29.3. SQL 변이와 확장 = 1103
29.4. 저장 및 인덱싱 = 1108
29.5. 다차원 클러스터링 = 1111
29.6. 질의 처리와 최적화 = 1114
29.7. 실체화된 질의 테이블 = 1119
29.8. DB2의 자율적인 특징들 = 1121
29.9. 도구와 유틸리티 = 1122
29.10. 동시성 제어와 복구 = 1124
29.11. 시스템 구조 = 1126
29.12. 중복, 분산, 외부 데이터 = 1128
29.13. 비즈니스 인테리전스 특징들 = 1129
참고문헌 = 1129
Chapter 30 Microsoft SQL Server = 1131
30.1. 관리, 설계, 질의 도구 = 1131
30.2. SQL 변화와 확장 = 1136
30.3. 저장 및 인덱스 = 1141
30.4. 질의 처리와 최적화 = 1144
30.5. 동시성과 복구 = 1149
30.6. 시스템 구조 = 1153
30.7. 데이터 액세스 = 1156
30.8. 분산 이종 질의 처리 = 1157
30.9. 중복 = 1158
30.10. .NET에서의 서버 프로그래밍 = 1160
30.11. XML 지원 = 1165
30.12. SQL Server 서비스 브로커 = 1168
30.13. 비즈니스 인텔리전스 = 1171
참고문헌 = 1175
Part 10 부록 = 1177
Appendix A 상세한 University 스키마 = 1179
A.1 전체 스키마 = 1179
A.2 DDL = 1180
A.3 샘플 데이터 = 1184
Appendix B 고급 관계형 데이터베이스 설계
Appendix C 다른 관계형 질의 언어
Appendix D 네트워크 모델
Appendix E 계층적 모델
참고문헌 = 1189
찾아보기 = 1217