이해 Index 하고 Mapping _ Elasticsearch

확신하는! Index 다음은 및 Mapping 에 대한 설명과 예제의 번역입니다 Elasticsearch.

Index ~에 Elasticsearch

입력 Index 은 Elasticsearch 기존 데이터베이스 관리 시스템(DBMS)의 데이터베이스와 유사합니다. 관련 문서 모음을 저장합니다. 각각은 Index 일반적으로 애플리케이션의 특정 데이터 유형에 해당합니다. 예를 들어 전자 상거래 응용 프로그램에서 Index 제품에 대한 정보를 저장하는 항목과 Index 사용자 및 주문에 대한 정보를 저장하는 항목을 만들 수 있습니다.

각각 Index 은 Elasticsearch 데이터 배포를 위해 더 작은 샤드로 나뉩니다. 샤드는 의 작은 부분 Index 이며 각 샤드는 Elasticsearch 클러스터 내의 별도 노드에 저장할 수 있습니다. 데이터를 샤드로 분할하면 검색 및 쿼리 성능이 최적화되고 시스템의 확장성이 향상됩니다.

 예를 들어 에서 Index 명명된 새 항목을 만들려면 API 또는 Kibana와 같은 관리 도구를 사용하여 다음 명령을 실행할 수 있습니다. products Elasticsearch

PUT /products  
{  
  "settings": {  
    "number_of_shards": 3,  
    "number_of_replicas": 2  
  }  
}  

위의 예에서는 가용성 및 데이터 백업을 보장하기 위해 각각 Index products 3개와 shard 2개로 를 생성했습니다. replica shard

 

Mapping ~에 Elasticsearch

Mapping Elasticsearch 내에서 데이터를 저장하고 처리하는 방법을 정의하는 프로세스입니다 Index. 에 새 문서를 추가할 때 는 Index 문서 에 있는 각 필드의 데이터 유형을 결정하는 데 Elasticsearch 사용됩니다. Mapping 이는 Elasticsearch 다양한 필드에서 데이터를 처리하고 검색하는 방법을 이해하는 데 도움이 됩니다.

예를 들어, (제품 이름) 및(제품 가격) 필드 를 각각 text 및 float 유형으로 Index products 정의하려는 경우  다음 명령을 실행할 수 있습니다. Mapping name price

PUT /products/_mapping  
{  
  "properties": {  
    "name": {  
      "type": "text"  
    },  
    "price": {  
      "type": "float"  
    }  
  }  
}  

 위의 예에서 데이터 유형이 있는 필드 와 데이터 유형이 있는 가격 필드를  사용하여 인덱스 Mapping 에 대해 정의했습니다. 이렇게 하면 인덱스 에 대한 새 문서를 수신할 때  정의된 데이터 유형에 따라 및 "가격" 필드를  저장하고 처리합니다. products name text float Elasticsearch products name

Index Mapping 에서 데이터를 구성하고 관리하는 데 중요한 역할을 합니다 Elasticsearch. 데이터를 효율적 Elasticsearch 으로 이해 및 처리하고, 검색 및 쿼리 작업을 최적화하고, 시스템에 유연한 확장성 기능을 제공합니다.