히스토그램(v3)

제공된 검색과 관련된 채용정보 수를 히스토그램으로 표현할 수 있습니다. 히스토그램 속성이 설정된 검색 요청은 검색결과 및 특정 쿼리와 일치하는 모든 채용정보 수를 요청된 searchType에 따라 구분하여 반환합니다.

예를 들어 히스토그램 검색은 고객의 채용정보 세트에서 고용 유형별(전일제, 시간제 등) 채용정보 수를 반환할 수 있습니다.

Cloud Talent Solution 베타 출시 버전(v3p1beta1)을 사용하면 덜 구조화되고 더 유연하며 더 직관적인 방식으로 히스토그램을 정의할 수 있습니다. 히스토그램 표현은 변경되지 않습니다.

장점

히스토그램 쿼리의 새로운 구조는 개발자가 히스토그램 요청을 더 직관적인 방법으로 정의할 수 있게 해줄 뿐 아니라 버킷, 범위 등을 더 명확히 정의할 수 있게 해 줍니다.

용도

이전의 히스토그램을 정의하는 구조화된 필드가 검색어의 새로운 히스토그램 부분으로 대체됩니다.

코드 샘플

다음 코드 샘플은 히스토그램 결과를 반환합니다.

histogramQuery 필드는 이제 히스토그램을 정의하는 표현식인 단일 문자열 필드입니다. 히스토그램 쿼리에 사용할 수 있는 함수에 대한 자세한 내용은 HistogramQuery를 참조하세요.

Java

Cloud Talent Solution 클라이언트 설치 및 생성에 대한 자세한 내용은 Cloud Talent Solution 클라이언트 라이브러리를 참조하세요.

Java

CTS에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.


/** Histogram search */
public static void histogramSearch(String companyName) throws IOException, InterruptedException {
  // Make sure to set the requestMetadata the same as the associated search request
  RequestMetadata requestMetadata =
      new RequestMetadata()
          // Make sure to hash your userID
          .setUserId("HashedUserId")
          // Make sure to hash the sessionID
          .setSessionId("HashedSessionID")
          // Domain of the website where the search is conducted
          .setDomain("www.google.com");

  HistogramFacets histogramFacets =
      new HistogramFacets()
          .setSimpleHistogramFacets(Arrays.asList("COMPANY_ID"))
          .setCustomAttributeHistogramFacets(
              Arrays.asList(
                  new CustomAttributeHistogramRequest()
                      .setKey("someFieldName1")
                      .setStringValueHistogram(true)));

  // conducted.
  SearchJobsRequest searchJobsRequest =
      new SearchJobsRequest()
          .setRequestMetadata(requestMetadata)
          .setSearchMode("JOB_SEARCH")
          .setHistogramFacets(histogramFacets);
  if (companyName != null) {
    searchJobsRequest.setJobQuery(new JobQuery().setCompanyNames(Arrays.asList(companyName)));
  }

  SearchJobsResponse searchJobsResponse =
      talentSolutionClient
          .projects()
          .jobs()
          .search(DEFAULT_PROJECT_ID, searchJobsRequest)
          .execute();
  Thread.sleep(1000);

  System.out.printf("Histogram search results: %s\n", searchJobsResponse);
}

Python

Cloud Talent Solution 클라이언트 설치 및 생성에 대한 자세한 내용은 Cloud Talent Solution 클라이언트 라이브러리를 참조하세요.

Python

CTS에 인증하려면 애플리케이션 기본 사용자 인증 정보를 설정합니다. 자세한 내용은 로컬 개발 환경의 인증 설정을 참조하세요.

def histogram_search(client_service, company_name):
    request_metadata = {
        "user_id": "HashedUserId",
        "session_id": "HashedSessionId",
        "domain": "www.google.com",
    }
    custom_attribute_histogram_facet = {
        "key": "someFieldName1",
        "string_value_histogram": True,
    }
    histogram_facets = {
        "simple_histogram_facets": ["COMPANY_ID"],
        "custom_attribute_histogram_facets": [custom_attribute_histogram_facet],
    }
    request = {
        "search_mode": "JOB_SEARCH",
        "request_metadata": request_metadata,
        "histogram_facets": histogram_facets,
    }
    if company_name is not None:
        request.update({"job_query": {"company_names": [company_name]}})
    response = (
        client_service.projects().jobs().search(parent=parent, body=request).execute()
    )
    print(response)