Histogramme (v3)

Vous pouvez obtenir une représentation du nombre d'emplois associés à une recherche donnée sous forme d'histogramme. Une requête de recherche avec un ensemble d'attributs de l'histogramme renvoie les résultats de la recherche ainsi que le nombre total d'emplois correspondant à une requête donnée, répartis selon le type de recherche (searchType) demandé.

Par exemple, une recherche dans l'histogramme peut renvoyer le nombre d'emplois par type de contrat (temps plein, temps partiel, etc.) parmi l'ensemble des offres d'emploi d'un client.

La version bêta de Cloud Talent Solution (v3p1beta1) vous permet de définir des histogrammes de manière moins structurée, plus flexible et plus intuitive. Les représentations d'histogramme ne sont pas modifiées.

Avantages

La nouvelle structure des requêtes d'histogramme permet aux développeurs de définir les demandes d'histogramme de manière plus intuitive, tout en clarifiant la définition des buckets, des plages, etc.

Utilisation

Dans la requête de recherche, la nouvelle zone associée à l'histogramme remplace les anciens champs structurés qui permettaient de définir ce dernier.

Exemples de code

L'exemple de code suivant renvoie les résultats de l'histogramme.

Le champ histogramQuery est désormais un champ à chaîne unique, laquelle est une expression qui définit l'histogramme. Pour en savoir plus sur les fonctions disponibles pour les requêtes d'histogramme, consultez la page traitant du champ HistogramQuery.

Java

Pour en savoir plus sur l'installation et la création d'un client Cloud Talent Solution, consultez la page Bibliothèques clientes Cloud Talent Solution.

Java

Pour vous authentifier auprès de CTS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.


/** 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

Pour en savoir plus sur l'installation et la création d'un client Cloud Talent Solution, consultez la page Bibliothèques clientes Cloud Talent Solution.

Python

Pour vous authentifier auprès de CTS, configurez les Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.

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)