Elasticsearch 2.3.0 색인 설정

색인 설정 업데이트
REST 스타일 url 설정에서/_ 설정settings (모든 인덱스) 또는 {index}/_settings, 하나 이상의 인덱스를 설정할 수 있습니다. 예를 들면:
요청: PUT localhost: 9200/my_index/_settings
매개변수:
{
    "index" : {
        "number_of_replicas" : 4
    }
}

분사기 업데이트
색인을 만들면 새로운 분석기를 추가할 수 있습니다.분석기를 추가하기 전에 색인을 닫고 추가한 후에 색인을 열어야 합니다.
POST localhost:9200/myindex/_close
PUT localhost:9200/myindex/_settings
매개변수:
{
  "analysis" : {
    "analyzer":{
      "content":{
        "type":"custom",
        "tokenizer":"whitespace"
      }
    }
  }
}

POST localhost:9200/myindex/_open
위의 예시와 같이 myindex 인덱스를 닫고 사용자 정의 분석기를 추가합니다. 분석기 정책은 공백 분석기(whitespace)입니다. 공백에 따라 단어를 나누는 것입니다.
색인 매개변수 가져오기:
GET http://localhost:9200/twitter/_settings
색인 구성 매개변수를 가져오는 요청 형식은 다음과 같습니다.
host:port/{index}/_settings
host: 호스트 이름
port:포트 번호
{index}: 다양한 형식 수신, * | _all | name1, name2, …
구성 매개변수 결과 필터링
GET 'http://localhost:9200/twitter/_settings/name=index.number_*'
name=index.number_*설정은 number_of_replicas,number_of_shards 두 개의 매개 변수 상세 정보.

분사기


분석(analysis)은 다음과 같은 과정입니다.
우선, 텍스트 블록을 거꾸로 색인에 적용되는 단독 단어로 표시합니다 (term)
그런 다음 이러한 단어를 표준 형식으로 표준화하여 검색 가능 또는 전체 검색 속도 향상
이 작업은 분석기(analyzer)가 완성한 것이다.분석기(analyzer)는 세 가지 기능을 하나로 묶는 데 사용됩니다.
문자 필터
우선 문자열은 문자 필터 (character filter) 를 거쳐서 표시화하기 전에 문자열을 처리합니다.문자 필터는 HTML 태그를 제거하거나 "&"를 "and"로 변환할 수 있습니다.
분사기
다음 단계에서 분사기(tokenizer)는 독립된 단어로 표기됩니다.간단한 단어 구분기 (tokenizer) 는 빈칸이나 쉼표에 따라 단어를 구분할 수 있습니다.
태그 필터링
마지막으로, 모든 단어는 모든 표기 필터 (token filters) 를 통해 단어를 수정할 수 있다. (예를 들어 "Quick"을 소문자로 바꾸는 것), 단어를 삭제하거나 (예를 들어 사용 정지어인 "a", "and""the"등) 단어를 추가하거나 (예를 들어 동의어인 "jump"와 "leap")
Elasticsearch는 상자를 열면 사용할 문자 필터, 분사기, 표기 필터를 많이 제공합니다.이것들은 서로 다른 수요에 대응하기 위해 사용자 정의 분석기를 만들 수 있다.
테스트 분석기:
curl -XGET 'localhost:9200/_analyze' -d '
{
  "analyzer": "standard",
  "text": "this is a test"
}'
이 결과는'this is a test'가 표준 분석기를 사용한 후 단어의 해석 상황을 되돌려줍니다.
이 분석기에서this,is,a,test 네 단어를 분석할 것이다.
사용자 정의 분석기
curl -XGET 'localhost:9200/_analyze' -d '
{
  "tokenizer": "keyword",
  "token_filters": ["lowercase"],
  "char_filters": ["html_strip"],
  "text": "this is a test"
}'
키워드 분사기, lowercase 분사 필터, 문자 필터는 html_strip, 이 세 부분은 분사기를 구성합니다.
위의 예제에서 분사를 되돌려 주는 결과는this is a test입니다. 그 중에서 html_strip에서 html 문자를 필터링했습니다.
색인을 지정하여 단어를 나눌 수도 있습니다.url 형식은 다음과 같습니다.
localhost:9200/test/_analyze
색인 상세 정보
분석기 분석의 더 많은 세부 사항을 얻으려면,explain 속성을true (기본값false) 로 설정하고, 분사기의 분사 정보를 출력합니다.요청 형식은 다음과 같습니다.
요청: GET test/_analyze
매개변수:
{
  "tokenizer" : "standard",
  "token_filters" : ["snowball"],
  "text" : "detailed output",
  "explain" : true,
  "attributes" : ["keyword"]
}

반환 결과는 다음과 같습니다.
{
  "detail" : {
    "custom_analyzer" : true,
    "charfilters" : [ ],
    "tokenizer" : {
      "name" : "standard",
      "tokens" : [ {
        "token" : "detailed",
        "start_offset" : 0,
        "end_offset" : 8,
        "type" : "<ALPHANUM>",
        "position" : 0
      }, {
        "token" : "output",
        "start_offset" : 9,
        "end_offset" : 15,
        "type" : "<ALPHANUM>",
        "position" : 1
      } ]
    },
    "tokenfilters" : [ {
      "name" : "snowball",
      "tokens" : [ {
        "token" : "detail",
        "start_offset" : 0,
        "end_offset" : 8,
        "type" : "<ALPHANUM>",
        "position" : 0,
        "keyword" : false
      }, {
        "token" : "output",
        "start_offset" : 9,
        "end_offset" : 15,
        "type" : "<ALPHANUM>",
        "position" : 1,
        "keyword" : false
      } ]
    } ]
  }
}

색인 템플릿


색인 템플릿 만들기
색인 템플릿은 색인 매개 변수 설정 (settings) 과 맵핑 (mapping) 을 만드는 템플릿입니다. 새 색인을 만들 때 템플릿 이름을 지정하면 템플릿이 정의한 매개 변수 설정과 맵핑을 사용할 수 있습니다.예는 다음과 같습니다.
요청: PUT localhost: 9200/_template/template_1 
{
    "template" : "te*",
    "settings" : {
        "number_of_shards" : 1
    },
    "mappings" : {
        "type1" : {
            "_source" : { "enabled" : false }
        }
    }
}

템플릿을 정의하면 te*를 사용할 수 있습니다. 분할 수량은 1, 기본 문서 형식 type1,_소스의 enabled는false입니다.
템플릿에서 별칭 등 다른 속성을 정의할 수도 있습니다.
색인 템플릿 삭제
curl -XDELETE localhost:9200/_template/template_일
template_1 이전에 만든 인덱스 템플릿 이름입니다.
색인 템플릿 가져오기
curl -XGET localhost:9200/_template/template_일
와일드카드 또는 쉼표 구분자 사용
curl -XGET localhost:9200/_template/temp*
curl -XGET localhost:9200/_template/template_1,template_이
모든 색인 템플릿 가져오기
curl -XGET localhost:9200/_template/
색인 템플릿 존재 여부 판단
curl -XHEAD -i localhost:9200/_template/template_일
여러 템플릿 일치
이런 경우,template_1,template_2 두 개의 템플릿,te*를 사용하면 두 개의 템플릿과 일치하고, 마지막으로 두 개의 템플릿의 설정을 통합합니다. 설정이 중복되면order 속성을 설정해야 합니다. order는 0부터 시작하는 숫자입니다. 먼저 order 숫자가 작은 것과 일치하고, 숫자가 큰 것과 일치하며, 같은 속성 설정이 있으면, 일치하는 것은 이전의 설정을 덮어씁니다.
세크랜드(secisland)는 Elasticsearch의 최신 버전의 각종 기능을 점차적으로 분석할 것이니 기대해 주십시오.가입도 환영합니다.
secisland 공중호가 관심을 가지다.

좋은 웹페이지 즐겨찾기