Elasticsearch Data 구조

dhjung 기술 블로그·2021년 3월 31일
0

Elasticsearch

목록 보기
3/5

1. Elasticsearch와 RDBMS

Elasticsearch의 구조를 파악하기 전, 흔히들 아는 RDBMS 데이터 구조와 비교해 보겠습니다.

위 그림처럼 RDBMS에 사용되는 데이터 구조를 ES에 맵핑할 수 있습니다.

2. Elasticsearch Data 구조

1) 인덱스(Index)

위 그림에서 Index = Database 다. 라는 정의를 보셨을 겁니다.
Elasticsearch의 7.x 버전 이하에서는 다양한 Type을 제공하였기 때문에 Type이 Table 역할이라고 할 수 있었지만 7 이후로 Type은 사라졌기에 Index가 Table, Database 역할을 수행할 수 있다고 생각하면 됩니다.
Elasticsearch를 클러스터 환경으로 구성했을 경우 index는 여러 노드로 분산 처리됩니다.

2) 도큐먼트(Document)

Elasticsearch 데이터 최소 단위입니다. RDBMS의 Row 와 유사합니다. 하나의 Document는 다양한 필드로 구성되어 있으며, 이 필드에는 데이터 필드에 해당하는 데이터 타입이 들어갑니다.

3) 필드(Field)

필드는 Document에 들어가는 데이터 타입으로 RDBMS의 Column과 유사합니다. 하지만 Elasticsearch의 필드는 보다 동적입니다. Column의 경우 하나의 데이터 타입만 가질 수 있지만, Elasticsearch의 필드의 경우 여러 타입의 데이터가 존재할 수 있습니다.
예를 들어 파이썬의 list 데이터 구조와 비슷하다고 생각하시면 됩니다.

profile
빅데이터, 데이터 엔지니어

0개의 댓글