HOME > 상세정보

상세정보

SQL server 튜닝 원리와 해법

SQL server 튜닝 원리와 해법 (3회 대출)

자료유형
단행본
개인저자
정재우
서명 / 저자사항
SQL server 튜닝 원리와 해법 / 정재우 지음
발행사항
서울 :   비투엔컨설팅,   2010  
형태사항
492 p. : 삽화 ; 27 cm
총서사항
Data promaster series
ISBN
9788996246039
일반주기
색인수록  
데이터 컨설팅 분야의 전설을 만들어 가는 비투엔컨설팅의 전문도서 시리즈  
000 00748camcc2200253 c 4500
001 000045634116
005 20110310193418
007 ta
008 110310s2010 ulka 001c kor
020 ▼a 9788996246039 ▼g 93560
035 ▼a (KERIS)BIB000012149649
040 ▼a 241050 ▼c 241050 ▼d 211009
082 0 4 ▼a 005.7585 ▼2 22
085 ▼a 005.7585 ▼2 DDCK
090 ▼a 005.7585 ▼b 2010z12
100 1 ▼a 정재우
245 1 0 ▼a SQL server 튜닝 원리와 해법 / ▼d 정재우 지음
260 ▼a 서울 : ▼b 비투엔컨설팅, ▼c 2010
300 ▼a 492 p. : ▼b 삽화 ; ▼c 27 cm
440 0 0 ▼a Data promaster series
500 ▼a 색인수록
500 ▼a 데이터 컨설팅 분야의 전설을 만들어 가는 비투엔컨설팅의 전문도서 시리즈
945 ▼a KLPA

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.7585 2010z12 등록번호 121203859 도서상태 대출가능 반납예정일 예약 서비스 B M
No. 2 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.7585 2010z12 등록번호 121203860 도서상태 대출가능 반납예정일 예약 서비스 B M

컨텐츠정보

책소개

SQL 튜닝에 기본이 되는 핵심 원리를 바탕으로 성능 문제에 대한 해법을 제시하는 책. SQL Server 튜닝에 필수적인 요소를 중심으로, RDBMS를 관통하는 핵심 원리를 친절하고 명쾌하게 설명한다. 인덱스, 조인, 정렬 등 RDBMS의 핵심 원리와 튜닝 기법을 차례대로 설명할 뿐만 아니라, 다양한 실전 경험을 통해 검증된 사례를 함께 소개하고 있다.

SQL Server 튜닝, 원리와 해법

"데이터베이스의 핵심 원리를 바탕으로 성능 문제에 대한 해법을 제시"

SQL Server 튜닝에 필수적인 요소를 중심으로, RDBMS를 관통하는 핵심 원리를 친절하고 명쾌하게 설명합니다. SQL Server를 비롯해 어떤 DBMS 환경에서도 성능 문제에 대한 최적의 해법을 제시할 수 있는 최고의 지침서가 될 것입니다.

이 책에서 다루는 내용은 다음과 같습니다.

1. 인덱스 기초
2. 인덱스 활용
3. 조인 원리와 활용
4. 정렬의 최적화
5. 파티션
6. 2005, 2008 버전의 신기능

인덱스, 조인, 정렬 등 RDBMS의 핵심 원리와 튜닝 기법을 차례대로 설명할 뿐만 아니라, 다양한 실전 경험을 통해 검증된 사례를 함께 소개하고 있습니다.

SQL Server 중급 수준을 넘어 고급 이상으로 나아가고자 하는 독자에게 이 책이 징검다리가 되어 줄 것입니다.


정보제공 : Aladin

저자소개

정재우(지은이)

연세대학교에서 생명공학을 전공하였고, 1996년 LG-EDS (現 LG-CNS에 입사하여 교보자동차보험, 엔코아컨설팅을 거쳐 현재 (주)비투엔컨설팅에서 수석 컨설턴트로 재직 중이다. 재무회계 시스템 설계, 개발 및 운영을 담당하다가 DBMS 성능 개선에 매력을 느껴 컨설턴트로 변신하였다. 부동산114, KT, CJ케이블넷, 오스템임플란트, SKT, 수출보험공사, 우리투자증권, SK건설, 한국거래소(KRX) 등 다양한 고객사에서 DB설계, 성능 진단, 성능 개선, 최적화 등의 컨설팅 업무를 수행하였다.

정보제공 : Aladin

목차

목차
추천사 = 4
저자 서문 = 6
시작하기 전에
 01. 누가 읽어야 하는가 = 16
 02. 미리 알아야 할 것들 = 17
  (1) 쿼리 최적화 = 17
  (2) 실행계획(Execution Plan) = 21
   예상 실행계획 = 21
   실제 실행계획 = 23
  (3) 실행계획 해석하기 = 26
   단일 테이블 전체 스캔 = 26
   단일 테이블 인덱스 탐색 = 28
   테이블 두 개를 조인 = 30
   테이블 세 개 이상을 조인 = 31
 03. 미리 준비해야 할 것들 = 34
  (1) 예제 데이터베이스 설치 = 34
  (2) 실습용 데이터베이스 설치 = 36
Chapter 01. 인덱스 기초
 01. 인덱스 구조 = 41
  (1) B-tree 구조 = 41
  (2) 인덱스 탐색과 북마크 룩업 = 48
 02. 인덱스 특징 = 50
  (1) 인덱스 키 컬럼 값으로 정렬 = 50
  (2) 인덱스 페이지 분할(split)이 발생 = 54
  (3) 첫 번째 컬럼에 대한 검색조건이 필요 = 59
  (4) 인덱스 컬럼 가공 시 비효율 발생 = 62
   명시적(explicit) 형변환 = 64
   암시적(implicit) 형변환 = 66
 03. 인덱스 종류 = 69
  (1) 클러스터형 인덱스 = 69
  (2) 넌클러스터형 인덱스 = 70
   클러스터형 인덱스가 없을 때 = 71
   클러스터형 인덱스가 있을 때 = 71
 04. 인덱스 액세스 방식 = 74
  (1) 인덱스 스캔(Index Scan) = 75
  (2) 인덱스 탐색(Index Seek) = 79
Chapter 02. 인덱스 활용
 01. 북마크 룩업 최소화 = 85
  (1) 인덱스에 컬럼 추가 = 85
  (2) 클러스터형 인덱스로 변경 = 89
  (3) 커버된(Covered) 인덱스 = 96
 02. 인덱스 탐색 효율 = 100
  (1) 모든 컬럼에 equal 조건을 사용했을 때 = 100
  (2) 선행 컬럼에 between 조건을 사용했을 때 = 104
  (3) in-list를 활용해 between 조건의 비효율 제거 = 108
   in-list 변환이 오히려 비효율적일 때 = 110
  (4) 선분이력의 인덱스 탐색 효율 = 113
 03. 인덱스 설계 = 124
  인덱스 설계 실습 = 124
Chapter 03. 조인 원리와 활용
 01. 중첩 루프(Nested Loops) 조인 = 133
  (1) 기본 메커니즘 = 133
  (2) 힌트로 NL 조인을 제어하는 방법 = 136
  (3) NL 조인의 수행 과정 분석 = 142
  (4) NL 조인의 특징 = 156
 02. 병합(Merge) 조인 = 162
  (1) 기본 메커니즘 = 162
  (2) 힌트로 병합 조인을 제어하는 방법 = 166
  (3) 병합 조인의 수행 과정 분석
   다대다(Many-to-Many) 병합 조인 = 177
  (4) 병합 조인의 특징 = 179
  (5) 병합 조인 실습 = 181
 03. 해시(Hash) 조인 = 188
  (1) 기본 메커니즘 = 188
  (2) 힌트로 해시 조인을 제어하는 방법 = 195
  (3) 해시 조인의 수행 과정 분석 = 198
  (4) 해시 조인의 특징 = 203
 04. 조인 순서와 성능 = 205
  (1) NL 조인의 순서 = 205
   큰 집합을 먼저 액세스했을 때 = 205
   작은 집합을 먼저 액세스했을 때 = 207
  (2) 해시 조인의 순서 = 209
   테이블 두 개를 해시 조인할 때 = 209
   테이블 세 개 이상을 해시 조인할 때 = 213
Chapter 04. 정렬의 최적화
 01. 정렬이 발생하는 경우 = 219
  (1) order by 사용 시 = 221
   order by 조건과 인덱스가 일치하지 않을 때 = 221
   적절한 인덱스가 있지만, order by 컬럼을 가공했을 때 = 222
  (2) group by 사용 시 = 223
  (3) distinct 사용 시 = 224
  (4) union 사용 시 = 225
  (5) 순위 창 함수 사용 시 = 228
  (6) 병합 조인 시 = 229
 02. 인덱스로 정렬을 제거 = 232
  (1) order by 조건을 만족하도록 인덱스에 컬럼 추가 = 233
   컬럼 추가 시 주의 사항 = 236
  (2) group by 조건을 만족하도록 인덱스에 컬럼 추가 = 237
  (3) minㆍmax 대상 컬럼을 인덱스에 추가 = 240
   min 값을 구할 때 주의 사항 = 244
  (4) 순위 창 함수의 over 절을 만족하도록 인덱스에 컬럼 추가 = 251
 03. 정렬을 최소화하는 SQL 작성 = 255
  (1) 불필요한 distinct 제거 = 256
  (2) 비효율적인 count 개선 = 258
  (3) 부적절한 union 대신 union all 사용 = 262
  (4) NL 조인을 활용 - 부분적인 부분범위 처리 = 265
 04. 페이지 처리 = 269
  (1) 앞쪽 페이지를 주로 조회할 때 = 270
  (2) 뒤쪽 페이지도 자주 조회할 때 = 277
   앞쪽 페이지로 거슬러 올라갈 때 = 283
  (3) 적절한 인덱스가 없어서 정렬이 불가피할 때 = 287
Chapter 05. 파티션
 01. 파티션 개요 = 296
  (1) 분할된 뷰(Partitioned View) = 296
   SQL Server 2000 버전까지는 check 제약이 필수 = 297
   SQL Server 2005 버전부터는 뷰 정의로 대신할 수 있음 = 302
  (2) 파티션(Partition) = 305
   파티션의 장점 = 308
 02. 테이블 파티션 = 310
  (1) 파티션 테이블 생성 절차 = 310
  (2) 파티션 테이블 실행계획 = 321
  (3) 파티션 경계 값 지정 시 주의 사항 = 326
  (4) 파티션 컬럼 가공에 의한 비효율 = 331
   명시적(explicit) 형변환 = 332
   암시적(implicit) 형변환 = 333
 03. 인덱스 파티션 = 337
  (1) 인덱스 파티션 유형 = 337
   테이블과 정렬된(aligned) 상태인가? = 337
   파티션 컬럼이 인덱스 선두 컬럼인가? = 339
  (2) 인덱스 파티션 유형별 특징 = 344
   정렬된 접두형(aligned prefixed) = 344
   정렬된 비접두형(aligned non-prefixed) = 351
   정렬되지 않은 접두형(un-aligned prefixed) = 357
   정렬되지 않은 비접두형(un-aligned non-prefixed) = 360
  (3) 파티션 인덱스 생성 절차 = 363
   정렬된(aligned) 파티션 인덱스 생성 = 364
   정렬되지 않은(un-aligned) 넌파티션 인덱스 생성 = 365
 04. 슬라이딩 윈도우(Sliding Window) = 369
  (1) 파티션 하나를 두 개로 분할(split) = 369
  (2) 파티션 두 개를 하나로 병합(merge) = 375
  (3) 넌파티션 테이블과 파티션 테이블 간의 파티션 전환(switch) = 378
Chapter 06. 2005,2006 버전의 신기능
 01. T-SQL 향상 = 391
  (1) 공통 테이블 식(CTE) = 391
   CTE 실행계획 = 392
   임시 테이블과의 비교 = 393
  (2) CTE와 재귀적(Recursive) 쿼리 = 396
   재귀적 쿼리의 수행 과정 = 398
   재귀적 쿼리의 실행계획 = 399
   계층 구조를 유지하도록 결과를 정렬하기 = 404
   하위에서 상위로 전개하기 = 406
  (3) 순위 창 함수(Ranking Window Functions) = 407
   rank 함수 = 407
   dense_rank 함수 = 413
   row_number 함수 = 415
   ntile 함수 = 417
  (4) 새로운 연산자(New Operator) = 419
   pivot = 419
   unpivot = 423
  (5) merge 문 = 427
 02. Snapshot isolation = 431
  (1) 읽기와 쓰기가 서로 간섭하는 문제 = 433
  (2) 문장 수준의 읽기 일관성 = 436
   read committed 격리 수준은 역부족 = 437
   repeatable read와 serializable 격리 수준의 문제점 = 440
  (3) 로우 버전 관리(Row Versioning) = 443
  (4) read committed with snapshot 격리 수준 = 447
   읽기 작업 시 공유 잠금을 걸지 않음 = 449
   문장 수준의 읽기 일관성을 보장 = 453
   트랜잭션 수준의 읽기 일관성은 보장하지 못함 = 455
  (5) snapshot 격리 수준 = 457
   트랜잭션 수준의 읽기 일관성을 보장 = 459
   업데이트 충돌이 발생할 수 있음 = 461
 03. 기타 = 464
  (1) 인덱스 생성 시 include 옵션 = 464
  (2) 온라인 인덱스 작업 = 467
   온라인 인덱스 생성 = 468
   온라인 인덱스 작업 시 고려 사항 = 472
  (3) 새로운 데이터 형식 = 473
   date 형식 = 473
   time 형식 = 478
찾아보기 = 486

관련분야 신착자료

Ramamurthy, Bina (2021)
윤관식 (2020)