검색은 범위를 점점 좁혀가며 원하는 문서를 찾아가는 과정입니다.

  • 검색필터 : 수많은 아이템중 필요한 아이템 컬렉션으로 줄이기 위한 검색 옵션
  • 키워드검색 : 제공되는 필터만으로는 검색 결과를 줄이는것에 한계가 있다. 키워드 검색은 쿼리 검색으로 간주할수 있다.
  • 검색결과 : 검색 필터와 키워드검색 조합에 의해 반환된 아이템 컬렉션
  • 검색내 재검색 : 검색 결과를 줄여주는 Tip(Summay)를 제공함으로 원하는 범위로 줄일수 있는 기능을제공 ( 키워드 → 필터A(카테고리) → 필터B(가격범위한정)
  • 검색결과 오더순서 : 검색 결과의 정렬 즉 첫번째아이템이 검색결과에의한 추천 아이템으로 간주할수 있다.




검색 옵션(필터)

namespace SearchApi.Models.Filter
{

    public class Paging
    {
        public int page { get; set; }   // 0 base
        public int limit { get; set; }
    }

    public class Sort
    {
        public string price { get; set; }

        public string viewCnt { get; set; }

        public string saleCnt { get; set; }

    }

    public class Filters
    {
        public int minPrice { get; set; }

        public int maxPrice { get; set; }

        public string category1 { get; set; }

        public string category2 { get; set; }

        public string category3 { get; set; }

        public string tag { get; set; }
    }

    public class SearchFilter
    {
        public Paging paging { get; set; }

        public Sort sort { get; set; }

        public Filters filters { get; set; }

        public string keyword { get; set; }
    }
}

검색옵션(필터)는 다음과 같은 요소로 나누어 이해할수 있습니다. 

  • 기본요소 : 페이징처리및 정렬방법
  • 확장요소 : 가격범위,카테고리 한정등 도메인에 특화된 필터
  • 고급요소 : 반경검색및  형태소 분석이 반영된 키워드 검색등...


검색결과

    public class FilterCount
    {
        public string fieldName { get; set; }

        public string name { get; set; }

        public int count { get; set; }
    }

    public class Summary
    {
        public List<string> tags { get; set; }

        public List<FilterCount> filterCounts { get; set; }

    }

    public class SearchResult
    {
        public List<SearchGoods> list {get;set;}

        public int total { get; set; }

        public int size { get; set; }

        public Summary summary { get; set; }
    }

노출을 위한 기본 상품 정보(SearchGoods) 컬렉션을 포함하여  페이징 처리및 결과내 재검색을 위한 몇가지 집계 정보도 같이 내려주게됩니다.

검색필터에 적용된 전체 집계정보를 항상 내려줌으로 , 결과내 재검색이 가능하게해야합니다.

  1. 의류 키워드를 통해 검색을 했다.
  2. 의류 키워드에는   A 카테고리 -15개 , B 카테고리 -20개 관련 카테고리 요약 정보가 표시된다.
  3. 사용자는 의류 + A 카테고리 간편 검색(결과내 재검색)을 수행할수 있다. 







  • No labels