inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

ElasticSearch Essential

여덟 번째 강의 - text vs keyword

text와 keyowrd를 모두 사용하는 경우도 있을까요?

해결된 질문

403

열심히하자

작성한 질문수 12

1

안녕하세요 강사님 수업 잘 듣고 있습니다!

 

text와 keyword를 수업을 듣던 와중 궁금한게 있는데요,

text와 keyword를 둘 다 사용하는 경우도 있을까요?

예시의 url을 보면 text 타입이 적절해 보이는데 url 전문을 검색하는 경우도 많아서 keyword도 적절해 보여요.

ex) /v1/api/story 인 경우 story로도 /v1/api/story로도 둘 다 검색을 자주 할 것 같아요

이럴 경우 text와 keyword 둘 다 두는 것이 좋을지, 아니면 둘 다 두는 건 불필요하니 text 하나만 두는 것이 좋을지 궁금합니다.

 

elasticsearch

답변 1

3

강진우

네 그럴 경우에는 text, keyword 타입 둘 다 유지하면 됩니다. 예를 들어 url 이라는 필드를 두 타입 모두 유지한다고 하면 아래와 같이 정의해 볼 수 있습니다.

"url" : {
  "type": "text",
  "fields": {
    "keyword": {
      "type": "keyword"
    }
  }
}

그럼 말씀 하신것처럼 경우에 따라서 url 필드에 쿼리를 날리거나 url.keyword 필드에 쿼리를 날리면 됩니다.

그리고 사실 위와 같은 매핑은 동적 매핑을 통해서 생성 되도록 하는 게 좋기 때문에 문자열인데 textkeyword 두 타입을 모두 사용하고자 한다면 동적 매핑이 되도록 정적 매핑을 사용하지 않아도 됩니다.

다만 동적 매핑을 할 경우 아래와 같이 keyword 타입에 자동으로 ignore_above 가 붙기 때문에 해당 문자열이 256자를 넘어 간다면 정적 매핑을 사용하는 게 좋습니다.

2

열심히하자

아하 동적 매핑으로 생성할 경우 ignore_above가 붙는군요?? 데이터 확인하고 적절히 사용해보겠습니다.

쉬는 날이신데 답변이 엄청 빠르시군요;; 알려주셔서 감사합니다. 저는 다시 완강을 향해 가보겠습니다 =3

Red 인 상황에서 유실

0

64

2

하루 100GB 로그를 30기간 저장하는 클러스터 예시중 질문이 있습니다.

0

108

2

노드당 샤드수 제한 질문입니다.

0

84

2

노드에서의 가용영역 이슈

0

104

3

노드당 샤드 수 질문입니다.

0

149

3

색인과정 이해하기 중 질문입니다.

0

227

2

xlsx 파일 색인 중 CircuitBreakingException 발생

0

202

1

ES 트러블슈팅 사례분석 강의 내용중 궁금한 게 있습니다.

0

246

1

동잭매핑 매핑 시 색인 질문

0

200

1

Elastic Search 동작 이해하기 색인 설명 관련

0

415

2

Compressed OOP 조건에 따른 ES Heap Size 제약

0

707

1

6강 10분 색인 과정에 대해 질문 있습니다.

0

342

2

4강 14분51초 질문 있습니다!

0

399

2

안녕하세요 elastic cloud를 사용하는데 cpu가 계속 칩니다 .

0

381

1

검색이 안되는 문제 문의

0

337

1

7번째 강의에서 Token과 Term은 다른 건가요??

0

464

1

서버 업데이트후 키바나 동작안함

1

337

1

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

0

358

1

/_cat/indices?v 로 인덱스 조회시 보이는 나머지 항목들

0

406

1

색인 분석이란?

0

253

1

동적 스키마가 NoSQL을 의미하나요???

0

524

1

노리분석기 노드 적용 질문

1

272

1

노드 heap size에 관해서

0

682

2

로드밸런스 endpoint

1

310

1