![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/2zTP9/btrIdYL31Lj/X5IEJGKMam03mBUQcKbZZ1/img.jpg)
데이터베이스에 인덱스가 없다면 테이블에 데이터가 삽입되는 순서는 특정 제약이 없다. 또한 데이터 조회 시(일반적인 where절 사용) 테이블 풀스캔이 발생한다. 이때 match 되는 데이터를 찾더라도 데이터 순회를 끝내는 것이 아니라, 테이블의 끝까지 데이터를 '순차 탐색'하면서 match 되는 데이터를 '모두' 찾는다. 이러한 테이블 풀스캔이 항상 나쁘다고 할 순 없지만 데이터가 많아질수록 성능에 문제가 발생할 것이다. 물리적으로는 한 테이블의 데이터 record들이 위와 같은 페이지 구조로 저장된다. 만약 record들을 특정 컬럼 기준으로 정렬해서 저장한다고 하면 테이블 풀스캔을 하지 않고도 찾고자 하는 데이터를 찾을 순 있지만 순차 탐색을 해야 한다는 단점이 존재한다. 이를 해결하기 위한 가장 대..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ch6Usj/btrIbMFN7rq/SX2oW2kKWh7aLYFDREWabk/img.jpg)
Balanced Tree (불균형) 이진탐색트리의 문제점은 최악의 경우 O(N)이 발생한다는 것이다. Balanced Tree는 항상 균형을 맞추어진 상태로 유지함으로써 O(logN)의 성능을 보인다. 하지만 데이터의 삭제, 삽입, 갱신이 발생할 때 Balance를 유지하기 위한 연산이 추가로 필요하게 된다는 단점이 있다. Balanced Tree의 종류로 AVL Tree와 레드블랙트리, 2-3 Tree, 2-3-4 Tree, B Tree 등이 있다. B-Tree는 다차원트리 B-Tree는 Balanced Tree이면서 다차원 트리이다. 하나의 노드가 가질 수 있는 자식 노드의 개수(링크 개수)를 M이라고 했을 때 하나의 노드에 '최대' M-1개의 자료를 담을 수 있으며 이 경우 M차 다차원 트리라고 한..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/cbvfje/btrIdYL32wS/BUNkK51GXaDswBD9LgtwkK/img.jpg)
Type Of Index single level index composite index multilevel index 1. Single Level Index - 인덱싱하는 컬럼이 1개인 경우에 해당함 - primary key에 걸면 Primary Index(기본 인덱스), 다른 컬럼에 걸면 Secondary Index(보조 인덱스) - SQL문에서 where = {key1} = {value1} 가 하나인 경우 equality search가 빠르다. - 메모리에 index table의 데이터 크기가 table보다 작음 - 카디널리티가 매우 낮은 컬럼이라면 인덱스를 지정하지 않는 것이 더 나을 수도 있음 [인덱스 정렬 타입] 1) Dense Index(밀집 인덱스) - 한 인덱스에 원하는 데이터가 바로 매칭..
- Total
- Today
- Yesterday
- K8s
- 코틀린
- go
- db
- 우분투
- LFCS
- 카프카
- Linux
- github actions
- Controller
- 컨트롤러
- ubuntu
- kafka
- 쿠버네티스
- ci/cd
- Java
- Non-Blocking
- Stream
- spring
- golang
- GitOps
- argocd
- RDB
- jvm
- Kubernetes
- container
- CICD
- docker
- helm
- rolling update
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |