Elastic Search는 검색, 분석을 위한 엔진
맨 꼭대기에 있는 cluster, 그 아래로 각 실행흐름인 node, 그 아래 RDB의 테이블과 비슷한 개념으로 생각할 수 있는 index가 존재
클러스터는 여러 개가 존재할 수 있으며, 각 클러스터가 논리적으로 분리됨
클러스터끼리 데이터를 주고 받는 식으로 통신이 가능
클러스터 아래에 노드는 여러 개가 달려있을 수 있음
노드는 하나의 Instance라고 부름
노드 아래에 존재하는 개념인 인덱스는 테이블과 유사하다고 볼 수 있음
DB에는 Insert를 한다면, Index에는 Indexing을 함
DB의 row는 Index의 document
Text
Keyword
RDB에서 테이블을 정의하는 것과 같은 동작
mapping은 index를 정의함 = index의 스키마를 정하는 것이 mapping
정의되지 않은 필드에 document를 인덱싱하려고 하면 Elastic Search는 동적으로 매핑을 진행해줌 (그다지 권장되지는 않음)
이 때, 동적으로 매핑이 발생하더라도 그에 대한 어느 정도의 기반을 마련해 주는 것이 dynamic templates
정의하지 않아도 dynamic mapping은 발생하지만, 정의된 틀에 맞는 경우에는 어느 정도 대비할 수 있게 됨
유사도
혹은 유용도
를 수치화한 것