ElasticSearch의 다중 엔터티 바인딩에 대한 인덱스 구조
ElasticSearch(ES)에 대한 기본적인 이해부터 시작하여 설정에 대한 어려움에 직면합니다. 여러 엔터티 바인딩이 있는 복잡한 데이터베이스 구조를 가진 레거시 전자 상거래 애플리케이션을 위한 효율적인 인덱스 구조입니다.
이 문제를 해결하려면 데이터베이스 구조를 평면화하는 것이 좋습니다. 여기에는 필요한 모든 정보를 포함하는 제품에 대한 단일 인덱스를 생성하고 제품과 플래그 간의 N:M 관계를 제거하는 작업이 포함됩니다.
제품 인덱스 매핑:
PUT products { "mappings": { "product": { "properties": { "id": { "type": "string", "index": "not_analyzed" }, "title": { "type": "string" }, "price": { "type": "double", "null_value": 0.0 }, "flags": { "type": "string", "index": "not_analyzed" } } } } }
이 매핑은 ID, 제목, 가격 및 플래그에 대한 필드가 있는 제품 인덱스를 생성합니다. 플래그 필드는 관련 플래그를 나타내는 문자열 배열입니다.
데이터 검색을 위한 SQL 쿼리:
제품 데이터 및 관련 플래그를 검색하려면 다음을 사용하세요. SQL 쿼리:
위 내용은 전자상거래에서 여러 엔터티 바인딩에 대해 Elasticsearch 인덱싱을 최적화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!