강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

oros님의 프로필 이미지
oros

작성한 질문수

ElasticSearch Essential

네 번째 강의 - 인덱스와 샤드 이해하기

인덱스 설계에서 type 문의드립니다.

해결된 질문

작성

·

327

·

수정됨

0

엘라스틱서치 버전 7부터 type이 제거되었다는데,

 

강의에서 설명하는 인덱스 설계를 보면

 

library 인덱스 vs 각 자료별 인덱스(book, 매거진 등)

 

예시로 나옵니다.

 

그럼 버전 7 이상부터는 이 설명이 유효하지 않은 건가요?

 

아니면 예시에 나온 type과 엘라스틱서치 7.x이상이부터 삭제된 type은 다른 개념인지 궁금합니다.

 

아니면 아래 질문에 있는 답변을 참고하면 될까요??

ElasticSearch 와 RDBMS에 대한 비교 질문이 있습니다.

답변 1

1

강진우님의 프로필 이미지
강진우
지식공유자

예시에 나온 type 은 JSON 문서 안에 있는 type 이라는 필드이지 ES의 예전 버전에 존재하던 type 을 의미하는 건 아닙니다.

예를 들면 /library 라는 인덱스 안에 아래와 같은 문서를 색인 할 것이냐

{
  "type": "book",
  "title": "elasticsearch",
  "author": "alden"
}

아니면 /book 이라는 인덱스를 만들어서 아래와 같은 문서를 색인 할 것이냐

{
  "title": "elasticsearch",
  "author": "alden"
}

의 선택의 문제 입니다.

아마도 ES의 예전 버전에 존재하던 type 이랑 저 문서에 있는 type 이랑 철자가 같아서 오해 하시는 것 같은데 둘은 완전히 다른 개념 입니다.

type 때문에 헷갈린다면 /library 인덱스에 아래와 같이 문서를 색인할 수도 있습니다.

{
  "product_type": "book",
  "title": "elasticsearch",
  "author": "alden"
}

위에 문서에서는 type 이라는 필드를 썼고 바로 위 문서에서는 product_type 이라는 필드를 썼습니다.

 

ES의 예전 버전에 존재하던 type은 하나의 인덱스 안에 서로 다른 스키마를 가진 문서를 저장할 때 사용했던 개념 이고 말씀 하신 것처럼 현재는 사용하지 않고 _doc 으로 통일되어 있습니다.

oros님의 프로필 이미지
oros
질문자

답변 감사합니다!!

oros님의 프로필 이미지
oros

작성한 질문수

질문하기