inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조

인덱스 #2. 인덱스 성능 최적화기법 ★★★

인덱스 최적화 기법에 대한 설명

453

sangjin.yoo

작성한 질문수 11

0

안녕하세요~ 다름이 아니고 해당 강의 내용 중 [인덱스는 비용이다 : 먼저 인덱스는 두 번 탐색하도록 강요합니다. 인덱스 리스트, 그다음 컬렉션 순으로 탐색하기 때문이며, 관련 읽기 비용이 들게 됩니다.]라는게 정확히 어떤 말씀이신지 이해가 안돼서 혹시 조금 자세하게 설명 부탁드려도 될까요??

면접 운영체제 기술면접

답변 1

0

큰돌

안녕하세요 ㅎㅎ

일단은 인덱스가 비용인 이유를 좀 더 자세하게 설명하면 다음과 같습니다.

  1. 저장 공간의 증가: 인덱스라는 것 자체가 자료구조이고 이 구조를 담을 공간이 필요하기 때문에 저장공간에 대한 코스트가 듭니다.

  2. 추가적인 읽기 비용 : 인덱스를 사용하면 데이터를 두 번 탐색해야 하기 때문에 검색 속도가 저하될 수 있습니다.

여기서 2번이 핵심인데요.

인덱스를 기반으로 데이터를 탐색하게 되면 다음과 같은 과정이 일어나게 됩니다.

  1. 인덱스 리스트 탐색: 인덱스를 사용하면 먼저 인덱스 리스트를 탐색합니다. 인덱스 리스트는 해당 컬럼의 값과 그 값이 저장된 위치를 담고 있습니다. 따라서 인덱스 리스트를 탐색하면서 해당 값이 저장된 위치를 찾아야 합니다.

  2. 해당 위치에 있는 데이터 탐색: 인덱스 리스트에서 해당 값이 저장된 위치를 찾았다면, 그 위치에 있는 데이터를 탐색해야 합니다.

image

이렇기 때문에 인덱스는 비용이다 : 먼저 인덱스는 두 번 탐색하도록 강요합니다. 인덱스 리스트, 그다음 컬렉션 순으로 탐색하기 때문이며, 관련 읽기 비용이 들게 됩니다.

 




또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


REST API (Self-descriptive messages)

0

28

1

시스템 엔지니어 관련 질문입니다.

0

52

2

오버라이딩 관련하여 질문드립니다.

0

62

2

교착상태의 4가지 필요조건이 필요충분조건이 아닌 이유

0

91

1

렌더 트리, 렌더 레이어와 그래픽 레이어

0

57

2

로컬스토리지, 세션스토리지, 쿠키의 공통점

0

68

1

IPv4가 IPv6보다 빠른 경우

0

102

2

UDP가 전송계층의 역할을 못하는 건 아닌지

0

59

1

Path MTU 발견하였음에도 패킷 분할이 필요한 이유?

0

65

2

교재의 LFU 알고리즘에서 6번이 왜 히트인가요?

0

64

2

페이지 교체 알고리즘? 프레임 교체 알고리즘?

0

83

2

Static 키워드가 메모리에 올라가는 시점

0

77

2

헤더 압축부분 질문드립니다

0

73

2

공유 캐시 관련 질문 드립니다.

0

56

2

컨텍스트는 context와 contextual information으로 나눠진다는게 무슨뜻인가요?

0

201

1

회선과 대역폭의 관계

0

62

2

44강 질문

0

95

2

버스 토폴로지 질문 있씁니다

0

55

1

자바스크립트, xml 문법 관련

0

66

2

전략패턴과 의존성주입 질문

0

69

2

Model이 비즈니스 로직을 담당하나요?

0

107

2

CS 공부 하는 법

0

181

2

큰돌님 블로그에 개념정리해서 올려도될까요!

0

137

2

FIN 세그먼트 질문

0

71

2