Créer et gérer un ensemble de données

Les ensembles de données vous permettent d'importer des données géospatiales à partir d'un fichier local ou de Google Cloud Storage vers Google Maps Platform. Vous pouvez ensuite associer un ensemble de données à un ou plusieurs styles de carte dans la console Cloud. Après avoir associé l'ensemble de données à un style de carte, utilisez l'API de style basé sur les données pour appliquer un style dynamique à votre application Maps.

Vous pouvez également utiliser une API REST pour importer vos données géospatiales dans un ensemble de données. Pour en savoir plus, consultez la section API Maps Datasets.

Configurer les rôles

Pour créer et gérer des ensembles de données dans un projet Google Cloud, vous devez disposer du rôle IAM Owner (Propriétaire) ou Editor (Éditeur) du projet.

Vous pouvez également attribuer les rôles IAM suivants à un compte utilisateur ou à un compte de service que vous utilisez pour gérer des ensembles de données :

  • Le rôle Maps Platform Datasets Admin accorde à l'utilisateur ou au compte de service un accès en lecture/écriture aux ensembles de données du projet. Ce rôle permet à l'utilisateur d'effectuer toutes les opérations sur un ensemble de données.
  • Le rôle Maps Platform Datasets Viewer accorde un accès en lecture seule aux ensembles de données du projet. Ce rôle vous permet de lister, d'obtenir ou de télécharger des éléments d'un ensemble de données.

Pour en savoir plus, consultez Attribuer un rôle IAM à l'aide de la console Google Cloud.

Source de données d'un ensemble de données

Après avoir créé un ensemble de données, importez les données dans l'ensemble de données à partir de Google Cloud Storage ou d'un fichier local.
  • Lorsque vous importez des données à partir de Cloud Storage, spécifiez le chemin vers la ressource contenant les données dans Cloud Storage. Ce chemin d'accès est au format gs://GCS_BUCKET/FILE.

    L'utilisateur qui effectue la requête doit disposer du rôle Lecteur des objets Storage ou de tout autre rôle comprenant l'autorisation storage.objects.get. Pour en savoir plus sur la gestion des accès à Cloud Storage, consultez Présentation du contrôle des accès.

  • Lorsque vous importez des données à partir d'un fichier local, spécifiez le chemin d'accès au fichier GeoJSON, KML ou CSV contenant les données à importer.

Prérequis

Lorsque vous créez un ensemble de données :

  • Les noms à afficher doivent être uniques au sein de votre projet Google Cloud.
  • Les noms à afficher doivent comprendre moins de 64 octets (ces caractères étant représentés au format UTF-8, chaque caractère peut correspondre à plusieurs octets dans certaines langues).
  • Les descriptions doivent comprendre moins de 1 000 octets.

Lorsque vous importez des données :

  • Les types de fichiers CSV, GeoJSON et KML sont acceptés.
  • La taille maximale autorisée pour les fichiers est de 350 Mo.
  • Les noms de colonnes d'attributs ne peuvent pas commencer par la chaîne "?_".
  • Les géométries tridimensionnelles ne sont pas acceptées. Cela inclut le suffixe "Z" au format WKT et les coordonnées d'altitude au format GeoJSON.

Bonnes pratiques pour la préparation des données

Si vos données sources sont complexes ou volumineuses, telles que des points denses, de longues polylignes ou des polygones (souvent les fichiers sources de plus de 50 Mo entrent dans cette catégorie), envisagez de simplifier vos données avant de les importer afin d'obtenir des performances optimales sur une carte visuelle.

Voici quelques bonnes pratiques pour préparer vos données:

  1. Réduire les propriétés des fonctionnalités Ne conservez que les propriétés d'élément cartographique nécessaires pour styliser votre carte (par exemple, "id" et "category"). Vous pouvez associer d'autres propriétés à un élément géographique d'une application cliente à l'aide de styles basés sur les données sur une clé d'identifiant unique. Par exemple, consultez la section Afficher vos données en temps réel avec le style basé sur les données.
  2. Dans la mesure du possible, utilisez des types de données simples pour les objets de propriété, tels que les entiers, afin de réduire la taille des tuiles et d'améliorer les performances des cartes.
  3. Simplifiez les géométries complexes avant d'importer un fichier. Pour ce faire, vous pouvez utiliser un outil géospatial de votre choix, tel que l'utilitaire Open Source Mapshaper.org, ou dans BigQuery, en utilisant ST_Simplify, sur des géométries de polygones complexes.
  4. Regrouper des points très denses avant l'importation d'un fichier. Vous pouvez le faire dans un outil géospatial de votre choix, tel que les fonctions de cluster turf.js Open Source, ou dans BigQuery en utilisant ST_CLUSTERDBSCAN sur des géométries de points denses.

Pour obtenir des conseils supplémentaires sur les bonnes pratiques concernant les ensembles de données, consultez la page Visualiser vos données avec des ensembles de données et BigQuery.

Exigences du format GeoJSON

Le SDK Maps pour iOS accepte la spécification GeoJSON actuelle. Le SDK Maps pour iOS est également compatible avec les fichiers GeoJSON contenant l'un des types d'objets suivants:

  • Objets Geometry : un objet Geometry est une forme spatiale, décrite comme une union de points, de lignes et de polygones avec facultativement des trous.
  • Objets Feature : un objet Feature contient une géométrie et des paires nom/valeur supplémentaires, dont la signification dépend de l'application.
  • Collections d'éléments géographiques : une collection d'éléments géographiques est un ensemble d'objets Feature.

Le SDK Maps pour iOS n'est pas compatible avec les fichiers GeoJSON contenant des données dans un système de coordonnées de référence (CRS) autre que WGS84.

Pour en savoir plus sur GeoJSON, consultez la page sur la conformité RFC 7946.

Exigences du format KML

La configuration requise pour le SDK Maps pour iOS est la suivante:

  • Toutes les URL doivent être locales (ou relatives) par rapport au fichier lui-même.
  • Les géométries acceptées sont les points, les lignes et les polygones.
  • Tous les attributs de données sont considérés comme des chaînes.
Les éléments géographiques KML suivants ne sont pas acceptés :
  • Icônes ou <styleUrl> définis en dehors du fichier
  • Liens réseau tels que <NetworkLink>
  • Superpositions au sol telles que <GroundOverlay>
  • Géométries 3D ou toute balise d'altitude telle que <altitudeMode>
  • Spécifications concernant la prise de vue telles que <LookAt>
  • Styles définis dans le fichier KML

Exigences du format CSV

Pour les fichiers CSV, les noms de colonnes acceptés sont indiqués ci-dessous par ordre de priorité :

  • latitude, longitude
  • lat, long
  • x, y
  • wkt (Well-Known Text)
  • address, city, state et zip
  • address
  • Une seule colonne contenant toutes les informations d'adresse telles que 1600 Amphitheatre Parkway Mountain View, CA 94043

Par exemple, votre fichier contient des colonnes nommées x, y et wkt. Étant donné que x et y ont une priorité plus élevée d'après l'ordre des noms de colonnes acceptés dans la liste ci-dessus, les valeurs des colonnes x et y sont utilisées, et la colonne wkt est ignorée.

En outre :

  • Chaque nom de colonne doit appartenir à une seule colonne. Autrement dit, vous ne pouvez pas avoir de colonne nommée xy contenant à la fois les coordonnées x et y. Les coordonnées x et y doivent se trouver dans des colonnes distinctes.
  • Les noms de colonnes ne sont pas sensibles à la casse.
  • L'ordre des noms de colonnes n'a pas d'importance. Par exemple, si votre fichier CSV contient les colonnes lat et long, elles peuvent apparaître dans n'importe quel ordre.

Gérer les erreurs d'importation de données

Lorsque vous importez des données dans un ensemble de données, vous pouvez rencontrer l'une des erreurs courantes décrites dans cette section.

Erreurs GeoJSON

Voici quelques erreurs GeoJSON courantes :

  • Champ type manquant, ou bien le type n'est pas une chaîne. Le fichier de données GeoJSON importé doit contenir un champ de type chaîne nommé type dans chaque définition d'objet Feature et Geometry.

Erreurs KML

Voici quelques erreurs KML courantes :

  • Le fichier de données ne doit contenir aucun des éléments géographiques KML non acceptés dont la liste figure plus haut dans ce document. Sinon, l'importation des données risque d'échouer.

Erreurs CSV

Voici quelques erreurs CSV courantes :

  • Certaines lignes ne contiennent aucune valeur dans une colonne de géométrie. Toutes les lignes d'un fichier CSV doivent contenir des valeurs non vides pour les colonnes de géométrie. Les colonnes de géométrie incluent :
    • latitude, longitude
    • lat, long
    • x, y
    • wkt
    • address, city, state et zip
    • address
    • Une seule colonne contenant toutes les informations d'adresse telles que 1600 Amphitheatre Parkway Mountain View, CA 94043
  • Si x et y sont des colonnes de géométrie, assurez-vous que les unités sont la longitude et la latitude. Certains ensembles de données publics utilisent différents systèmes de coordonnées sous les en-têtes x et y. Si vous utilisez des unités incorrectes, l'ensemble de données sera peut-être importé, mais dans le rendu, les points de l'ensemble de données pourront s'afficher à des emplacements inattendus.

Créer un ensemble de données

Pour créer un ensemble de données :

  1. Dans la console Google Cloud, accédez à la page Ensembles de données.
  2. Cliquez sur Créer un ensemble de données.
  3. Saisissez le nom de l'ensemble de données. Chaque ensemble de données doit avoir un nom unique.
  4. Saisissez éventuellement une description pour l'ensemble de données.
  5. Cliquez sur Continuer. La page Importer des données s'affiche.
  6. Sélectionnez Ordinateur de bureau (pour un fichier local sur votre système) ou Bucket Google Cloud Storage comme Source d'importation des données à charger dans l'ensemble de données.
    • Pour Ordinateur de bureau, cliquez sur Parcourir, puis sélectionnez le fichier dans le sélecteur.
    • Pour Bucket Google Cloud Storage, cliquez sur Parcourir, puis sélectionnez le bucket et le fichier contenant les données.
  7. Sélectionnez le format de fichier.
  8. Cliquez sur Continuer pour examiner vos paramètres.
  9. Cliquez sur Créer. La page Ensembles de données s'affiche avec votre nouvel ensemble de données. L'état doit être Traitement en cours.
  10. Attendez que votre ensemble de données affiche l'état Terminé.

Afficher ou modifier un ensemble de données

Une fois que vous avez créé un ensemble de données, son état affiche Terminé. Vous pouvez alors consulter ses détails.

Pour afficher ou modifier l'ensemble de données:

  1. Dans la console Google Cloud, accédez à la page Ensembles de données.
  2. Cliquez sur le nom de l'ensemble de données. La page Détails de l'ensemble de données s'affiche.
    1. Cliquez sur l'onglet Détails pour afficher des informations sur l'ensemble de données. Dans cet onglet, vous pouvez également modifier le nom et la description de l'ensemble de données.
    2. Cliquez sur l'onglet Aperçu pour afficher votre ensemble de données sur une carte.
    3. Cliquez sur l'onglet Données de la table pour afficher tous les attributs de l'ensemble de données. Ce sont les attributs que vous pouvez utiliser pour styliser l'ensemble de données sur la carte.
    4. Cliquez sur le bouton Télécharger pour télécharger les données dans un fichier local.
    5. Cliquez sur le bouton Supprimer pour supprimer l'ensemble de données.
    6. Cliquez sur le bouton Import Data File (Importer un fichier de données) pour importer de nouvelles données dans l'ensemble de données.

      L'importation de nouvelles données dans le jeu de données crée une nouvelle version du jeu de données. Si les nouvelles données sont correctement importées:

      • La nouvelle version de l'ensemble de données est à l'état COMPLETED.
      • La nouvelle version devient "active" et correspond à la version utilisée par votre application.

      Si une erreur se produit lors de l'importation:

      • Le statut de la nouvelle version de l'ensemble de données est défini sur un état autre que TERMINÉ. Par exemple, s'il existe une version "active" précédente, l'état de l'ensemble de données est défini sur RÉVERTED.
      • La version précédemment "active" de l'ensemble de données reste la version "active" et correspond à la version utilisée par votre application.