2017-04-11 3 views
0

Elasticsearch에서 새로운 기능이 있습니까? 기본적으로 ES는 모든 필드의 모든 단어에 대한 색인을 만듭니다. 하지만 유스 케이스에서는 두 필드 만 검색하므로 ES에 문서의 모든 항목에 대한 색인을 만들지 말고 매핑에 지정하는 필드 만 색인을 작성하도록 ES에 알려 주려고합니다. 그래서 여기나는 elasticsearch에서 인덱싱 필드 수를 제한 할 수 있습니까 5.3

내 매핑

PUT /benefits 
    { 
    "mappings": { 
     "benefit": { 
     "_all": {"enabled": false}, 
      "properties": { 
      "subCategory": {"type": "text"}, 
      "description": {"type": "text"} 
     } 

     } 
    } 
} 

하고 내 문서 그래서 내가뿐만 아니라 "planName" 나에 "subCategory""description" (에서 검색됩니다이

{ 
"bpi" : "123456", 
"category" : "CAT1", 
"subCategory" : "Primary Care Physician Copay", 
"planName" : "MyPlan HMO Individual", 
"description" : "0 per office visit for Convenient Care & Minute Clinics Complete ABC Document", 
"categoryId" : 200.0, 
"desktop360Id" : 1001.0, 
"createTimeStamp" : "2017-02-21T22:00:12.000Z" 

}

처럼 보인다 다른 필드 텍스트) 위의 매핑에 표시된대로 색인/매핑을 만들었지 만 다른 필드에서 텍스트를 검색 할 수 있습니다. 잘. 예를 들어 "planName" 필드에서 "MyPlan"을 검색하면 검색이 작동하여이 문서가 표시됩니다. 모든 필드에서 모든 단어 ('a', 'of'유형 제외)에 대한 색인이 작성되었음을 의미합니까? 나는 내가 필요로하지 않는 지표에 대해 기억을 낭비하고 싶지 않기 때문에이 질문을 던집니다.

제안 사항?

+1

"동적": "거짓"을 맵핑 ("_all"과 같은 레벨)에 추가하기 만하면된다. 이 작업은 객체 수준에서 수행되지만 인덱스 수준이나 템플릿에서 설정하여 모든 인덱스에 대해 설정할 수도 있습니다. 이 정보에 대한 정보는 [여기] (https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic-mapping.html) – Olivier

+0

Olivier에게 감사드립니다. 나는 그것을 얻었다 고 생각한다. 내가 '질문에 답하십시오'라는 예제를보십시오 – JBone

답변

2

다른 필드를 인덱싱에서 제외하려면 매핑에 지정해야하며 index 속성을 no 값으로 설정해야합니다. 여기에 예제가있다

{ 
    "mappings": { 
     "benefit": { 
      "properties": { 
       "subCategory": { 
        "type": "string" 
       }, 
       "description": { 
        "type": "string" 
       }, 
       "planName": { 
        "type": "string", 
        "index": "no" 
       }, 
       "bpi": { 
        "type": "string", 
        "index": "no" 
       }, 
       "category": { 
        "type": "string", 
        "index": "no" 
       } 
      } 
     } 
    } 
} 
+0

이것은 작동합니다. 감사. – JBone

+0

후속 질문이 있습니다. 나는 다른 질문을 게시해야한다는 것을 압니다. 그러나 이미 질문에 대한 문맥을 입력했습니다.이 질문을 물어 보도록하겠습니다. '설명'보다 '하위 카테고리'에있는 검색 결과에 더 많은 가중치를 두는 방법은 무엇입니까? 어떤 제안? – JBone

+0

인덱스를 만드는 동안 두 필드에 "부스트"값을 추가하여이 값을 계산했습니다. 감사 – JBone