MySQL의 products 테이블의 name 컬럼에 맥북 에어 13 M4라고 저장해놓고, 특정 키워드로 데이터를 검색하려면 아래와 같이 SQL문을 작성한다.
SELECT * FROM products WHERE name = “%맥북 에어 13%”;
만약 MySQL에서 맥북 13 에어라고 검색하면 데이터가 검색되지 않는다.
SELECT * FROM products WHERE name = “%맥북 13 에어%”;
하지만 실제로 우리가 쿠팡에서 물건을 검색할 때 단어의 순서를 정확하게 기억하고 검색하진 않는다.
위 제품을 쿠팡에 검색해서 구매하고 싶다고 할 때, 우린 쿠팡에 맥북 에어 13 M4라고 검색할 수도 있지만, 맥북 13 에어 M4라고 검색할 수도 있다. 이와 같이 쿠팡에서는 제품 이름의 단어 순서를 지키지 않고 검색해도 같은 결과를 얻을 수 있다. 위와 같은 검색 기능을 구현하려면 Elasticsearch를 활용하면 된다.
👨🏻🏫
다음 강의에서 Elasticsearch를 활용하면 단어의 순서가 바뀌더라도 검색이 가능한 지 실제로 테스트해보고 눈으로 확인해보자.