Cette page a été traduite par l'API Cloud Translation.
Switch to English

Procéder à la lecture dans BigQuery

En plus de lire les fichiers JSON dans Google Cloud Storage, l'API Inference permet également de lire à partir d'une table BigQuery.

Préparer une table BigQuery

La table BigQuery à traiter par l'API Inference doit comporter les colonnes suivantes:

  1. group_id dans le type INTEGER
  2. data_name dans le type STRING
  3. data_value dans le type STRING
  4. start_time dans le type TIMESTAMP
  5. end_time (facultatif) dans le type TIMESTAMP

Vous pouvez générer la table BigQuery à partir de n'importe quelle table existante avec une requête BigQuery.

Cliquez ici pour savoir comment exporter les résultats des requêtes vers une nouvelle table.

Créer votre ensemble de données

Comme dans l'exemple de démarrage rapide, vous allez créer un ensemble de données d'API Cloud Inference à l'aide de la méthode REST createdataset.

  1. Créez un fichier de requête JSON contenant le texte ci-dessous, puis enregistrez-le sous la forme d'un fichier texte brut nommé create-gdelt-dataset.json :

    {
      "name":"gdelt_bq_2018_04_data",
      "data_names": [
        "PageURL",
        "PageDomain",
        "PageCountry",
        "PageLanguage",
        "PageTextTheme",
        "PageTextGeo",
        "ImageURL",
        "ImagePopularityRawScore",
        "ImagePopularity",
        "ImageSafeSearch",
        "ImageLabel",
        "ImageWebEntity",
        "ImageWebEntityBestGuessLabel",
        "ImageGeoLandmark",
        "ImageFaceToneHas"
      ],
      "data_sources": [
        { "uri":"infer-test:gdelt_demo.inference_gdelt_demo" },
      ]
    }
    

    Cette table BigQuery contient les mêmes données avec les entrées de démonstration de démarrage rapide. La table est accessible au public, et vous n'avez donc pas besoin d'identifiants d'authentification pour y accéder.

  2. Vérifiez que vous disposez d'un jeton d'autorisation :

    gcloud auth application-default print-access-token
      
  3. Utilisez curl pour effectuer une requête createdataset, en transmettant le jeton d'accès et le nom de fichier de la requête JSON que vous avez configurée à l'étape 1:

    curl -s -H "Content-Type: application/json" \
      -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
      https://infer.googleapis.com/v1/projects/PROJECT_NUMBER/datasets \
      -d @create-gdelt-dataset.json
      

    Notez que pour indiquer un nom de fichier dans la commande curl, vous devez utiliser l'option -d (pour "data") et faire précéder le nom de fichier du symbole @. Ce fichier doit se trouver dans le même répertoire que celui depuis lequel vous exécutez la commande curl.

    Un résultat semblable aux lignes suivantes doit s'afficher :

    {
      "name": "gdelt_bq_2018_04_data",
      "state": "STATE_PENDING"
    }
    

Une fois l'ensemble de données chargé, vous pouvez l'interroger.

Pour utiliser votre propre table BigQuery, vous devez fournir l'ID de table complet au format <project id>:<dataset name>.<table name>. Le compte utilisé pour appeler l'API Inference doit également être un lecteur de données BigQuery de la table.

Obtenir l'ID de la table