728x90
- DB
- Index
Index 작동 원리- Index 종류
B-Tree 인덱스Hash IndexesBitmap IndexGIST(Generalized Search Tree)R-TreeFull Text Index- Spatial Index
- Trie(Prefix Tree) Index
- Covering Index
- 영속성
- 트랜잭션
- ORM
- ACID
- N+1 문제
- DB 정규화
- Data Replication
- sharding 전략
- CAP 이론
- Index
란?
- 공간 데이터를 효율적으로 저장하고 검색하기 위해 사용되는 데이터 구조
Spatial Index 유형
- R-Tree
- MBR(Minimum Bounding Rectangle) 이라는 최소 경계 사각형을 사용하는 트리 구조임.
각 노드는 MBR 을 포함하여, 자식 노드들은 이 MBR 내에 속하는 요소들을 나타냄. - 특징
- 공간 객체가 겹치는 경우에도 효율적으로 검색할 수 있음. 범위 검색 및 근접성 검색에 적합함.
- MBR(Minimum Bounding Rectangle) 이라는 최소 경계 사각형을 사용하는 트리 구조임.
- Quadtree
- 구조
Quadtree 는 2차원 공간을 4개의 사분면으로 재귀적으로 분할하는 트리구조. 각 노드는 4개의 자식 노드를 가지며, 공간의 특정 영역을 나타냄. - 특징
특정 위치에서의 데이터 밀도가 높은 경우에도 효율적으로 작동함. 주로 2차원 공간 데이터를 다룰 때 사용됨.
- 구조
- Geohash
- 구조
- 지리 좌표를 문자열로 인코딩하는 방법.
- 지구 표면을 그리드로 나누고, 각 그리드 셀에 고유한 해시 값을 부여함.
- 특징
- 문자열 비교를 통해 공간적 근접성을 빠르게 판단할 수 있음. 분산 데이터베이스에서 주로 사용됨.
- 구조
- Grid Index
- 구조
- 공간을 고정된 크기의 그리드 셀로 나누고, 각 셀에 공간 객체를 매핑함.
- 특징
- 간단한 구현과 빠른 조회 속도를 제공함. 그러나 그리드 셀의 크기를 적절히 설정하는 것이 중요함.
- 구조
활용
- 지리 정보 시스템(GIS)
공간 데이터를 다루는 대표적인 분야로, 지도 서비스, 위치 기반 서비스, 도시 계획, 환경 모니터링 등에서 Spatial Index 를 활용함. - 컴퓨터 그래픽
3D 모델링, 충돌 감지, 시각화 등에서 공간 인덱싱 기법을 사용하여 효율성을 높임. - 게임 개발
게임 내에서의 객체 위치, 경로 탐색, 충돌 감지 등에 Spatial Index 를 활용함. - DB
공간 데이터를 효율적으로 저장하고 검색하는 기능을 제공하기 위해 RDBMS 와 NoSQL 데이터베이스에서 Spatial Index 를 지원함.
주요 기능
- 범위 검색
- 특정 범위 내에 속하는 모든 객체를 찾음.
- 근접성 검색(Nearest Neighbor Query)
- 특정 지점에서 가장 가까운 객체를 찾음.
- 교차 검색(Intersection Query)
- 특정 영역과 교차하는 모든 객체를 찾음.
728x90
Comment