Suite

Créer des données spatiales à la volée pour l'application de la chronologie ?


Faits:

Les données sont stockées dans une base de données MySql sans données spatiales. à la place, il existe une uri du service de répertoire géographique qui renverra des données spatiales au format json.

Projet:

construire un chronologie webgis application (couches ouvertes ??) avec ces données.

Mon problème est de savoir comment procéder...

Existe-t-il un framework capable de produire à la volée des données GeoJSON prêtes à l'emploi ?


Je trouve probablement la réponse ou au moins un point de départ.

Des travaux ont déjà été menés sur la desserte à la volée d'une couche spatiale via geoJson. https://github.com/bmcbride/PHP-Database-GeoJSON

Dans mon cas, je vais modifier le code afin d'obtenir les attributs de couche de la base de données et l'emplacement du répertoire géographique externe et de créer à la volée une réponse GeoJSON.


Table des matières

Introduction

Traditionnellement, les données géographiques ont été collectées et organisées autour de la feuille de carte. Alors que l'approche centrée sur les feuilles de cartes était appropriée pour automatiser le processus de création de cartes, cette méthode d'organisation des données devient de plus en plus problématique à mesure que le SIG évolue vers de nouveaux domaines.

Le Spatial Database Engine (SDE) récemment annoncé par Esri prétend répondre aux besoins de la prochaine génération d'utilisateurs de données géographiques. Ce produit de base de données géographique fournit une extension spatiale à un système de gestion de base de données relationnelle (SGBDR) commercial sous-jacent, permettant ainsi à toutes les données (spatiales et non spatiales) d'être stockées dans un seul SGBDR.

Un système prototype a été déployé à l'aide du SDE d'Esri. Ce système stocke les données cadastrales et topographiques dans une seule base de données transparente. Le système prototype évalue le SDE d'Esri et est comparé à un système existant qui utilise une technologie SIG antérieure. Ce prototype exerce de nombreuses fonctionnalités du SDE d'Esri, notamment la création de types de fonctionnalités par programmation, le chargement de données, la vérification d'intégrité et la prise en charge des transactions. Le prototype fait également un usage intensif de l'interface du programmeur d'application (API) SDE en effectuant des opérations de généralisation et de fusion de feuilles de carte.

En plus du moteur de base de données spatiale, le prototype utilise également le moteur de manipulation de caractéristiques (FME) pour assurer l'interopérabilité avec d'autres systèmes SIG. Ce produit permet d'exporter les données du SDE vers une variété de formats SIG courants. Le moteur de manipulation de fonctionnalités fournit une couche d'interopérabilité pilotée par table qui peut être personnalisée pour des schémas particuliers et/ou des transformations de schéma. Le prototype prend actuellement en charge SAIF, les fichiers Shape d'Esri, le DGN d'Intergraph et le MIF de MapInfo.

Pour évaluer les outils d'administration du moteur de base de données spatiale, un outil d'administration de base de données spatiale basé sur X-Windows a été construit. Cette interface graphique est utilisée pour tester la facilité avec laquelle les administrateurs peuvent effectuer le réglage d'index et d'autres opérations d'administration sur le moteur de base de données spatiale.

Présentation du système

Le système prototype a été développé pour remplacer et étendre un système existant construit avec une myriade de technologies SIG antérieures. Bien que le système existant soit adéquat, il est lourd et coûteux à exploiter. Le prototype a été conçu pour fournir les capacités suivantes.

Le prototype doit être capable de stocker une grande quantité de données couvrant une vaste zone géographique. La zone utilisée pour tester le prototype est à peu près de la taille de la Californie, de l'Oregon, de Washington et du Nevada réunis.
Le prototype doit avoir une fonction de requête puissante. En particulier, le prototype doit être capable de traiter un grand nombre et une variété de requêtes de manière automatisée. veut automatiser autant que possible la réponse à la requête.
Le prototype doit être capable de créer des produits dérivés facilement grâce à une API bien définie. Le système prototype doit être capable de gérer les demandes de données personnalisées qui se produisent de temps à autre. Les demandes de données personnalisées sont actuellement très problématiques pour le système existant.
Le prototype doit avoir une architecture évolutive afin qu'il puisse gérer un nombre croissant d'utilisateurs et des quantités croissantes de données.
Le prototype doit être capable de produire des données dans une variété de formats SIG courants.

Système existant

Bien que le système existant réponde à bon nombre des besoins décrits ci-dessus, il s'agit d'un système orienté lot dans lequel le temps d'exécution est mesuré en heures au mieux et en jours au pire.

  1. Un utilisateur forme une demande avec une petite application de création de demande et enregistre la demande construite dans un fichier. Le fichier de requête précise les informations suivantes :
    • Les feuilles de cartes nécessaires pour satisfaire la demande
    • Les contraintes spatiales de la demande.
    • Les contraintes non spatiales de la requête.
  2. Cette requête est ensuite envoyée à l'entrepôt de données existant pour être traitée. L'entrepôt de données charge ensuite la demande dans son système
  3. La première étape du traitement d'une requête est l'identification des disques optiques qui doivent être chargés dans le lecteur optique. Une fois les disques identifiés, le système demande à l'opérateur du système de charger les disques optiques.
  4. Les cartes requises sont ensuite lues à partir des disques optiques et chargées dans un SIG et un SGBDR.
  5. Le SGBDR est utilisé pour effectuer la composante de recherche non spatiale.
  6. Les entités résultantes sont ensuite chargées dans un SIG où elles subissent un traitement spatial.
  7. La demande est complète et les données sélectionnées sont envoyées au demandeur.

Bien que des efforts considérables aient été faits pour automatiser le système existant, il s'agit d'une approche intrinsèquement coûteuse pour la distribution des données. Une intervention manuelle doit être utilisée à plusieurs étapes de chaque demande de données. Cependant, compte tenu des outils SIG disponibles au moment de son développement, il est difficile de trouver une meilleure solution. La solution actuelle n'inclut pas non plus la possibilité de distribuer les données dans une variété de formats. Le système distribue ses données dans un format unique laissant l'interopérabilité aux autres systèmes.

Architecture du système prototype

Le système prototype se compose de deux éléments technologiques clés. Le premier composant, le SDE, constitue la base sur laquelle le reste du système est construit. Le deuxième composant, le FME, fournit une couche d'interopérabilité au-dessus du SDE.

L'utilisation du SDE, a permis de remplacer l'ensemble du système existant depuis les disques optiques jusqu'au traitement spatial et non spatial des requêtes de données avec un seul composant logiciel !

Fondation SDE

Le moteur de base de données spatiale (SDE) d'Esri fait entrer le SIG dans le domaine du SIG en fournissant une interface spatiale efficace et puissante à la technologie RDBMS standard de l'industrie.

Le SDE permet à un système de gestion de base de données relationnelle (SGBDR) de stocker à la fois des données spatiales et non spatiales.

Le SDE fournit un modèle de données géo-relationnel transparent organisé autour de types d'entités. Les types d'entités sont à peu près équivalents à des entités pour ceux qui sont familiers avec les diagrammes Entité-Relation, des classes pour ceux qui sont familiers avec les concepts orientés objet, ou des couches pour ceux qui sont familiers avec la CAO ou les produits SIG traditionnels.

Les exemples de types d'entités incluent les routes et les rivières . Une seule base de données SDE peut être constituée d'un grand nombre de types d'entités différents.

  1. Chaque type d'entité a un index spatial qui peut être réglé spécifiquement pour le type d'entité. L'index spatial pour chaque type d'entité se compose d'une à trois grilles 2D. Les tailles des éléments de grille sont ordonnées de telle sorte que (taille d'élément de grille0) < (taille d'élément de grille1) < (taille d'élément de grille2).
  2. Chaque type d'entité possède une seule table relationnelle dans laquelle les attributs sont stockés. Il existe un mappage 1-1 entre les entités du type d'entité et les lignes de la table relationnelle.
  3. Toutes les entités d'un type d'entité doivent avoir une dimensionnalité homogène (soit 2D, soit 3D).
  4. Un ou plusieurs indices d'attributs peuvent être créés sur chaque type d'entité pour augmenter les performances de la partie non spatiale des requêtes.

Le SDE a été choisi comme magasin de données des prototypes pour plusieurs raisons, notamment :

Modèle de données transparent : les données n'ont plus besoin d'être ventilées le long des limites de la feuille de carte. Cette approche transparente permet de traiter les requêtes spatiales beaucoup plus rapidement que n'importe quel produit SIG basé sur une carte.
Prise en charge de clients hétérogènes : le SDE permet aux clients UNIX (de nombreuses variétés) et Win32 de communiquer directement avec le serveur SDE. Cela fait du SDE une solution idéale pour les fournisseurs de données qui souhaitent prendre en charge différents types de clients à partir d'une seule base de données. Étant donné que les clients SDE communiquent avec le serveur SDE à l'aide de la norme industrielle TCP/IP, il est raisonnable de s'attendre à ce que d'autres plates-formes clientes soient ajoutées à l'avenir.
Architecture évolutive : Le SDE peut être installé sur des machines allant de la très petite à la très grande. Au fur et à mesure que le référentiel de données d'une organisation augmente ou que le nombre de clients accédant à la base de données augmente, le serveur SDE peut croître avec le référentiel de données, garantissant des performances rapides dans un avenir imprévisible. Le SDE tire parti de la technologie RDBMS mature pour fournir un chemin de migration fluide. Cette évolutivité diminue également le coût et donc le risque d'évaluation de la SDE. Le SDE peut souvent être installé et évalué sans avoir besoin d'acheter de nouvelles ressources matérielles.
Performances de requête spatiale inégalées : pour les grands magasins de données, les performances du SDE sont actuellement inégalées.
Gestion des données : Le système existant était géré comme une collection de fichiers avec des procédures pour garantir que plusieurs mises à jour ne se produisaient pas et qu'aucun véritable système de sécurité n'était en place. Le SDE fournit ses propres outils d'administration en plus de la gestion des données du SGBDR sous-jacent.

FME : couche d'interopérabilité

Le Feature Manipulation Engine (FME) se trouve au-dessus du SDE et est chargé de fournir l'interopérabilité des données sémantiques entre le système prototype et les systèmes externes. Le couplage du FME avec le SDE permet au prototype de déplacer librement et facilement des données entre le SDE et une variété de systèmes. La conception FME permet d'ajouter de nouveaux formats sans impacter le reste du système.

Grâce à l'utilisation de la puissante fonction de requête du SDE, le FME extrait les données du SDE et les convertit au format souhaité par l'utilisateur à la volée. Du point de vue de l'utilisateur, les données semblent être stockées dans le système prototype en tant que fichiers de forme Esri, fichiers de conception IGDS ou MapInfo MID/MIF, ou tout autre format pris en charge par le FME.

Le FME est également responsable de la généralisation des fonctionnalités stockées dans le prototype lorsqu'un utilisateur demande des données à un niveau de détail inférieur à celui stocké dans le SDE. Cette capacité donne l'impression que le système prototype stocke les mêmes données à de nombreux niveaux de détail différents alors qu'en fait les données ne sont stockées qu'une seule fois.

Modèle de données

Lors de la conception du modèle de données, un certain nombre de problèmes importants se sont posés :

Les données source du prototype sont divisées en plusieurs produits de données différents et logiquement non liés. Par exemple, le produit cadastral se composait de plusieurs couches qui étaient logiquement différentes des couches du produit topographique . Il a été décidé que les plages de couches au sein du SDE seraient réservées pour chacun des différents produits de données. Comme le SDE a un nombre pratiquement illimité de couches, c'était une tâche simple.

Nous avons également remarqué qu'il y avait un grand chevauchement entre certaines des données stockées dans les produits. Idéalement, la notion de produits de données ne serait pas reflétée au niveau de la base de données. Un produit de données est simplement une combinaison standard de données extraites du SDE. Malheureusement, cela dépassait la portée du prototype et chacun des produits de données a été laissé intact. La redondance des données pourrait être réduite par la rationalisation des données qui sont dupliquées de produit de données à produit de données.

Les données sources du prototype ont été initialement stockées en coordonnées UTM. En raison de la taille de la zone de test, les données croisent 3 zones UTM différentes. Comme le SDE stocke les données dans un seul plan cartésien, un système de coordonnées cartésiennes a dû être décidé avant que le chargement des données puisse commencer. Après avoir examiné de nombreuses projections planes différentes, il a été décidé d'étendre simplement la zone UTM médiane suffisamment pour couvrir complètement les données de test. La conversion des coordonnées a été effectuée avant le chargement des données dans le SDE.
Le système existant permet actuellement aux clients de demander des données à certains produits qui sont à différentes échelles. Le stockage des données à de nombreux niveaux de détail différents a été envisagé, mais a été abandonné au profit du stockage des données uniquement au niveau de détail le plus élevé. Si une demande concerne des données à un niveau de détail inférieur, la couche d'interopérabilité généralise les informations telles qu'elles sont extraites du SDE. Cela a considérablement réduit la quantité de données à stocker dans la base de données et permet également au système prototype de prendre en charge plusieurs niveaux de détail.
Comme le SDE est une base de données transparente, une tentative a été faite pour effectuer une fusion de feuilles de carte sur les données stockées dans le SDE. L'objectif était d'éradiquer tous les vestiges des limites des feuilles de carte de toutes les données stockées dans la base de données. Le prototype dispose d'une fonction de fusion de feuilles de carte qui automatise une grande partie de ce processus. Il est capable de fusionner des polygones et des lignes brisées le long des limites de la feuille de carte. Cependant, nos pires craintes se sont réalisées lorsque des entités qui ne se rejoignent pas aux limites de la feuille de carte (mais devraient) ont été découvertes. Ceux-ci nécessiteront une intervention manuelle pour se joindre.

Chargement des données

Une fois qu'un modèle de données préliminaire avait été décidé, l'objectif de l'activité de prototype a changé pour développer une méthode de stockage des données au sein du SDE. Le SDE effectue de nombreuses vérifications d'intégrité géométrique lors du chargement des données. Ce contrôle d'intégrité garantit que les données chargées dans le SDE sont valides. Au cours du développement du prototype, il a été découvert très tôt que les entités d'entrée occasionnelles ont une géométrie invalide ou insoupçonnée. Cela entraîne le rejet de la fonctionnalité par le SDE et l'abandon par le FME de l'opération de chargement des données. L'opération de chargement de données a ensuite dû être redémarrée après que toutes les fonctionnalités qui ont été chargées avec succès lors de l'opération de chargement de données ont été supprimées de la base de données. Ce n'était pas une situation idéale et a été résolue comme décrit ci-dessous.

Prise en charge des transactions

Initialement, le processus de chargement des données ne tirait pas parti du modèle de transaction du SDE et, par conséquent, lorsqu'une opération de chargement des données était interrompue, il était difficile de la récupérer de telle sorte qu'aucune fonctionnalité n'était ignorée et qu'aucune fonctionnalité n'était chargée deux fois dans le SDE. Le prototype a ensuite été mis à niveau pour tirer parti du modèle de transaction SDE. Cela permet au prototype de récupérer des données erronées de manière gracieuse et contrôlée. L'impact sur le système prototype était étonnamment faible et n'a nécessité que 2 jours d'efforts. Le système prototype effectue désormais une validation de transaction toutes les 100 fonctionnalités et imprime le numéro de transaction dans un fichier journal FME. Si l'opération de chargement de données est interrompue en raison de données incorrectes ou d'autres événements erronés, l'utilisateur corrige simplement le(s) problème(s) et réexécute l'opération de chargement de données avec la dernière transaction réussie spécifiée. Le FME garantit que le chargement des entités dans le SDE commence au bon moment de l'opération de chargement des données. Aucune fonctionnalité n'est perdue et aucune n'est dupliquée.

Création de schéma programmatique

  1. Création de couches par programmation : les couches n'ont pas besoin d'être créées avant une opération d'importation de données. Tous les détails de création de couche sont gérés par le FME.
  2. Création d'attributs par programmation : les tables d'attributs de couche sont créées automatiquement, éliminant ainsi la tâche sujette aux erreurs de définition manuelle des tables d'attributs. Des attributs facultatifs et obligatoires peuvent être créés.
  3. Création d'index d'attributs programmatiques. Les indices d'attribut peuvent être spécifiés dans les fichiers de contrôle FME. Ces indices sont utilisés pour améliorer les performances de la composante non spatiale des recherches.
  4. Vérification de la couche et des attributs par programmation : lors du chargement de données dans une base de données spatiale existante, le prototype vérifie que les définitions d'entités spécifiées dans le fichier de contrôle correspondent à la couche SDE existante et aux définitions d'attributs.
  5. Prise en charge de la journalisation des fonctionnalités : un fichier journal SDE peut être spécifié. Ce fichier journal contient les identifiants de fonction SDE des fonctions chargées dans le SDE.

Rendre le module de chargement de données responsable de tous les aspects de la création et de la vérification des couches a considérablement réduit le temps nécessaire pour préparer une nouvelle base de données SDE à utiliser.

Le prototype utilise des fichiers de contrôle FME pour décrire complètement tous les types d'entités stockés dans la base de données SDE. Ces fichiers de contrôle contrôlent tous les aspects d'interopérabilité du système prototype. Parce qu'ils peuvent être facilement modifiés, les modifications apportées à n'importe quel schéma d'importation ou d'exportation peuvent être effectuées rapidement et sans peine par les analystes de données sur le terrain, sans nécessiter de modifications du code source du logiciel et de recompilation.

Diffusion des données

Le système prototype permet d'exporter les données via l'utilisation de requêtes prédéfinies ou de fichiers de contrôle personnalisés pour ceux qui ont un accès direct. Les requêtes personnalisées non gérées par la couche d'interopérabilité peuvent également être développées à l'aide de l'API C du SDE ou d'autres interfaces fournies par Esri telles qu'Avenue et MapObjects, bien que cela n'ait pas été nécessaire pour le prototype.

Le prototype intègre un système de distribution de données (DDS) avec lequel les utilisateurs peuvent directement s'interfacer. L'objectif de ce composant était de permettre aux utilisateurs connectés au même réseau que le prototype (intranet ou internet) de pouvoir effectuer des requêtes ad hoc sur la base de données. Le module DDS accepte la requête et renvoie les données demandées dans le format souhaité. Le prototype y parvient en utilisant le module SDE QueryFactory de FME.

  1. Démarre une session SDE sur la base de données de destination de la requête. Il est ainsi possible d'avoir une seule couche d'interopérabilité au-dessus de plusieurs bases de données SDE.
  2. Utilise l'API SDE C pour construire une requête et envoie la requête au SDE.
  3. Chaque caractéristique qui est récupérée par la requête est ensuite transmise au reste du FME pour une sortie dans le format demandé par la requête.

Le module de distribution de données du prototype est piloté par de simples fichiers ASCII, ce qui permet aux autres modules logiciels de communiquer facilement avec le système prototype. Dans le système prototype, il existe deux modules logiciels de ce type. Un frontal textuel est utilisé par le public et remplace un ancien système de commande par lots. Cependant, un visualiseur interactif permet aux utilisateurs disposant d'un lien direct à haut débit de sélectionner de manière interactive les données à extraire du système prototype. Il a été constaté que la plupart des commandes de données personnalisées peuvent être résolues grâce à l'utilisation de cette visionneuse interactive sans qu'il soit nécessaire de développer un logiciel.

La fonction de requête présente dans le système prototype exploite la fonctionnalité SDE suivante :

Recherche spécifiant à la fois un composant spatial arbitraire et une clause where arbitrairement complexe . La composante spatiale comprend la méthode de recherche qui doit être utilisée lorsque la recherche est effectuée. La clause where n'est pas touchée par la fonction de requête et est transmise directement au SDE pour traitement.
Les caractéristiques maximales à retourner peuvent également être spécifiées.
La technologie des corridors de la SDE est également exploitée. Si la requête spécifie une distance tampon, alors la distance tampon est construite par le SDE. Le SDE reçoit ensuite l'instruction d'utiliser la fonction de mise en mémoire tampon pour la requête.
La capacité de filtrage spatial du SDE est également utilisée. Cela permet au composant spatial de la recherche d'utiliser deux caractéristiques pour filtrer les données.

Le composant de distribution de données du prototype est l'un des composants les plus intéressants du prototype. Il permet au prototype de répondre très rapidement à un grand nombre de requêtes.

Conclusion

Le système prototype décrit ici démontre un environnement de traitement de données spatiales sophistiqué construit à l'aide du moteur de base de données spatiale. En utilisant le SDE comme noyau, le système prototype est capable de gérer efficacement, et plus important encore, de mettre à la disposition des utilisateurs, une grande quantité d'informations spatiales et d'attributs.

Les requêtes typiques qui prenaient des heures ou des jours à traiter avec l'ancien système ont été réduites à quelques secondes seulement avec le nouveau système basé sur SDE. Le système prototype permet également des manipulations de données et des requêtes qui étaient auparavant d'un coût prohibitif.

L'API SDE s'est avérée riche et puissante, permettant de surmonter rapidement les obstacles rencontrés lors du développement. Le système qui en résulte est à la fois rapide et robuste.

Le fait que le prototype ait été presque entièrement construit à partir de produits commerciaux standard rend les résultats obtenus encore plus encourageants.

Pages d'accueil de l'auteur : Don Murray et Dale Lutz
Page d'accueil Esri
Moteur de base de données spatiale (SDE) d'Esri
Page d'accueil du moteur de manipulation de fonctionnalités (FME)
Page d'accueil de l'entreprise Safe Software Inc.
Page d'accueil du format d'archivage spatial et d'échange (SAIF)

Coordonnées

Safe Software Inc.
Bureau 105 10720 - 138e Rue
Surrey, C.-B.
Canada
V3T 4K5


Rencontrez les étudiants et les anciens de notre programme de master en science des données spatiales :


Créer des données spatiales à la volée pour l'application de la chronologie ? - Systèmes d'information géographique

Données spatiales sont des données qui décrivent la position, la forme et l'orientation des objets dans un espace défini. Les données spatiales dans SQL Anywhere sont représentées sous forme de géométries 2D sous la forme de points, de courbes (chaînes de lignes et chaînes d'arcs de cercle) et de polygones. Par exemple, l'image suivante montre l'état du Massachusetts, représentant l'union de polygones représentant les régions de code postal.

Deux opérations courantes effectuées sur des données spatiales sont le calcul de la distance entre les géométries et la détermination de l'union ou de l'intersection de plusieurs objets. Ces calculs sont effectués à l'aide de prédicats tels que des intersections, des contenus et des croisements.

La documentation des données spatiales suppose que vous avez déjà une certaine connaissance des systèmes de référence spatiale et des données spatiales avec lesquelles vous avez l'intention de travailler. Si vous ne le faites pas, des liens vers du matériel de lecture supplémentaire peuvent être trouvés ici : Lectures recommandées sur des sujets spatiaux.

La prise en charge des données spatiales pour Windows 32 bits et Linux 32 bits nécessite un processeur prenant en charge les instructions SSE2. Cette prise en charge est disponible avec Intel Pentium 4 ou version ultérieure (sortie en 2001) et AMD Opteron ou version ultérieure (sortie en 2003).

Exemple d'utilisation des données spatiales

La prise en charge des données spatiales dans SQL Anywhere permet aux développeurs d'applications d'associer des informations spatiales à leurs données. Par exemple, une table représentant des entreprises pourrait stocker l'emplacement de l'entreprise sous forme de point ou stocker la zone de livraison de l'entreprise sous forme de polygone. Cela pourrait être représenté en SQL comme :

Le type de données spatiales ST_Point dans l'exemple représente un point unique et ST_Polygon représente un polygone arbitraire. Avec ce schéma, l'application peut afficher tous les emplacements de l'entreprise sur une carte ou savoir si une entreprise livre à une adresse particulière à l'aide d'une requête similaire à la suivante :

SQL Anywhere fournit des fonctionnalités de stockage et de gestion des données pour les données spatiales, vous permettant de stocker des informations telles que des emplacements géographiques, des informations de routage et des données de forme.

Ces informations sont stockées sous forme de points et de diverses formes de polygones et de lignes dans des colonnes définies avec un correspondant type de données spatiales (comme ST_Point et ST_Polygon). Vous utilisez des méthodes et des constructeurs pour accéder aux données spatiales et les manipuler. SQL Anywhere fournit également un ensemble de fonctions spatiales SQL conçues pour être compatibles avec d'autres produits.


Créer des données spatiales à la volée pour l'application de la chronologie ? - Systèmes d'information géographique

Conception, conception et gestion

Un système de base de données spatiale peut être défini comme un système de base de données qui offre des types de données spatiales dans son modèle de données et son langage de requête, et prend en charge les types de données spatiales dans sa mise en œuvre, fournissant au moins des méthodes d'indexation spatiale et de jointure spatiale.

Les systèmes de bases de données spatiales offrent la technologie de base de données sous-jacente pour les systèmes d'information géographique et d'autres applications. Nous étudions la modélisation des données, les requêtes, les structures de données et les algorithmes, et l'architecture du système pour de tels systèmes. L'accent est mis sur la description de la technologie connue de manière cohérente, plutôt que sur la liste des problèmes ouverts.

Dans divers domaines, il est nécessaire de gérer géométrique, géographique, ou alors spatial données, c'est-à-dire des données relatives à espace. L'espace d'intérêt peut être, par exemple, l'abstraction bidimensionnelle de (parties de) la surface de la terre ou un espace 3D représentant un modèle numérique de terrain. Au moins depuis l'avènement des systèmes de bases de données relationnelles, il y a eu des tentatives pour gérer de telles données dans des systèmes de bases de données.

La caractéristique de la technologie émergente pour répondre à ces besoins est la capacité de traiter grandes collections d'objets géométriques relativement simples, par exemple, un ensemble de 100 000 polygones. Plusieurs termes ont été utilisés pour les systèmes de base de données offrant un tel support comme pictural, image, géométrique, géographique, ou base de données spatiale système. Les termes système de base de données « pictural » et « image » découlent du fait que les données à gérer sont souvent initialement capturées sous forme d'images matricielles numériques (par exemple, télédétection par satellite, ou tomographie par ordinateur dans les applications médicales).

Le terme « système de bases de données spatiales » est devenu populaire au cours des dernières années et est associé à une vision d'une base de données comme contenant des ensembles d'objets dans l'espace plutôt que des images ou des images d'un espace. En effet, les exigences et les techniques pour traiter des objets dans l'espace qui ont une identité et des étendues, des emplacements et des relations bien définis sont assez différentes de celles pour traiter des images raster.

Une base de données spatiale a donc les caractéristiques suivantes :

(1) Un système de base de données spatiale est un système de base de données.

(2) Il propose des types de données spatiales (SDT) dans son modèle de données et son langage de requête.

(3) Il prend en charge les types de données spatiales dans sa mise en œuvre, fournissant au moins une indexation spatiale et des algorithmes efficaces pour la jointure spatiale.

Personne ne se soucie d'un système à usage spécial qui n'est pas capable de gérer toutes les tâches standard de modélisation et d'interrogation de données. Par conséquent, un système de base de données spatiales est un système de base de données à part entière avec Additionnel capacités de traitement des données spatiales. L'indexation spatiale est donc obligatoire. Il devrait également prendre en charge la connexion d'objets de différentes classes via une relation spatiale.

Une base de données spatiale comprend des collections d'informations sur l'emplacement spatial, la relation et la forme d'entités géographiques topologiques et les données sous forme d'attributs. La conception de la base de données spatiale est le processus formel d'analyse des faits sur le monde réel dans un modèle structuré. La conception de la base de données est caractérisée par les phases suivantes : analyse des besoins, conception logique et conception physique. En d'autres termes, vous avez essentiellement besoin d'un plan, d'un schéma de conception, puis des données pour terminer le processus.

Avoir une base de données spatiale solide et bien conçue est la clé pour effectuer une bonne analyse spatiale. La base de données peut être complexe et conçue avec un logiciel sophistiqué coûteux ou peut être simplement une simple collection de données bien organisée qui peut être utilisée sous une forme géographique.

Les trois principales catégories de fonctions de modélisation spatiale qui peuvent être appliquées aux entités géographiques au sein d'un SIG sont : (1) les modèles géométriques, tels que le calcul de la distance euclidienne entre les entités, la génération de zones tampons, le calcul des zones et des périmètres, etc. (2) les modèles de coïncidence , tels que la superposition topologique et (3) les modèles d'adjacence (recherche de chemin, redécoupage et allocation). Les trois catégories de modèles prennent en charge les opérations sur les données spatiales telles que les points, les lignes, les polygones, les boîtes et les grilles. Les fonctions sont organisées en une séquence d'étapes pour dériver les informations souhaitées pour l'analyse.

Presque toutes les entités de la réalité géographique ont au moins un caractère spatial tridimensionnel, mais toutes les dimensions peuvent ne pas être nécessaires. Par exemple. une chaussée d'autoroute a en fait une profondeur qui peut être importante, mais qui n'est pas aussi importante que la largeur, qui n'est pas aussi importante que la longueur. La représentation doit être basée sur les types de manipulations qui pourraient être entreprises. L'échelle cartographique du document source est importante pour limiter le niveau de détail représenté dans une base de données. Par exemple. sur une carte au 1:100 000 les maisons individuelles ou les champs ne sont pas visibles

  1. Conceptuel
    1. indépendant du logiciel et du matériel
    2. décrit et définit les entités incluses
    3. identifie comment les entités seront représentées dans la base de données
    4. c'est-à-dire sélection d'objets spatiaux - points, lignes, zones, cellules raster
    5. nécessite des décisions sur la façon dont la dimensionnalité et les relations du monde réel seront représentées
    6. ceux-ci peuvent être basés sur le traitement qui sera fait sur ces objets
    7. par exemple. un bâtiment doit-il être représenté comme une zone ou un point ?
    8. par exemple. les segments d'autoroute doivent-ils être explicitement liés dans la base de données ?
    1. spécifique au logiciel mais indépendant du matériel
    2. définit la structure logique des éléments de la base de données, déterminée par le système de gestion de la base de données utilisé par le logiciel
    1. spécifique au matériel et au logiciel
    2. nécessite l'examen de la façon dont les fichiers seront structurés pour l'accès à partir du disque

    Caractéristiques d'une bonne conception de base de données

    Afin que la base de données SIG fournisse le meilleur service, elle doit être :

    o Contemporaine les données doivent être mises à jour régulièrement afin de fournir des informations se rapportant à la même période pour toutes ses variables mesurées

    o Flexible et extensible afin que des ensembles de données supplémentaires puissent être ajoutés si nécessaire pour les applications prévues

    les catégories d'informations et les sous-catégories qu'elles contiennent doivent contenir toutes les données nécessaires pour analyser ou modéliser le comportement de la ressource à l'aide de méthodes et de modèles conventionnels

    o Positionnement précis si, par exemple, la limite entre les terres résidentielles et agricoles a changé, cela peut être facilement intégré.

    o Exactement compatible avec d'autres informations qui peuvent s'y superposer

    o Précision interne, décrivant la nature des phénomènes sans erreur - nécessite des définitions claires des phénomènes qui sont inclus

    o Facilement mis à jour selon un horaire régulier

    o Accessible à qui en a besoin

    Gestion de la base de données spatiale

    De nombreux facteurs influencent la réussite de la mise en œuvre d'un système d'information géographique (SIG). Cependant, aucune n'est plus fondamentale que d'avoir les bonnes stratégies de gestion et les bons logiciels pour les mettre en œuvre. La base de données spatiale est la base par laquelle toutes les données sont uniformément créées et converties. Mais le maintien de l'intégrité et de l'actualité des données est d'une importance fondamentale. Une erreur classique commise par de nombreuses organisations est de penser qu'une conception générique de base de données spatiale sera suffisante pour leurs besoins. Ce n'est tout simplement pas le cas. La base de données spatiale est le résultat final d'une série de processus qui déterminent les exigences fonctionnelles spécifiques pour l'utilisateur et les applications clés. L'interopérabilité des données est également un sujet de préoccupation critique dans le développement de systèmes d'information sur les données spatiales. Alors que nous passons des données nouvellement créées à l'assimilation de toutes les données existantes, une base de données spatiale bien conçue est une assurance pour le succès de l'utilisateur final. Un bon progiciel de gestion de bases de données spatiales doit être capable de :


    Référence spatiale des données CAO (fichiers .prj)

    Par défaut, un fichier AutoCAD ou MicroStation ne contient pas d'informations de référence spatiale Esri pour définir un système de coordonnées. La référence spatiale non définie Esri est supposée lorsqu'aucune définition de système de coordonnées n'est détectée par ArcGIS Pro pour un jeu de données d'entités DAO (fichier DAO). Lorsque des données sont ajoutées à une carte ou à une scène dans ArcGIS Pro avec une référence spatiale non définie, les coordonnées des données sont supposées être le même système de coordonnées que la référence spatiale de la carte ou de la scène actuelle, ce qui peut être correct ou non. It is recommended that you define a spatial reference for all data added to ArcGIS Pro so that it can be properly positioned.

    Spatial reference for AutoCAD files

    An AutoCAD file may contain spatial reference information in the .dwg or .dxf file created by the ArcGIS for AutoCAD plug-in application, or as a result of the ArcGIS Desktop Export To CAD geoprocessing tool.

    You can associate an Esri spatial reference to any CAD file by including a valid Esri .prj file containing the spatial reference information in the same file folder as the CAD file where the name of the file is the same as the CAD file, but with a .prj extension.

    ArcGIS Pro does not support the Autodesk spatial reference information of AutoCAD Map 3D or Civil 3D.

    Spatial reference for MicroStation files

    You can associate an Esri spatial reference to any CAD file, including MicroStation files, by including a valid Esri .prj file in the same file folder as the CAD file. The included .prj file must have the same name as the CAD file, but with a .prj extension.

    Universal CAD and BIM spatial reference (ESRI_CAD.prj)

    To define the same spatial reference for every CAD or BIM file in a file folder, you can rename the .prj file containing the desired spatial reference to ESRI_CAD.prj . Then every CAD or BIM file that does not have a defined spatial reference will use the ESRI_CAD.prj file as its spatial reference. This is useful when all of the files in the folder should use the same spatial reference.


    INSPIRE Directive

    INSPIRE, formally known as European Directive 2007/2/EC, establishes an Infrastructure for Spatial Information in the European Union. The Directive was transposed into Maltese legislation currently by Legal Notice 185 of 2013 under the Environment Protection Act (Cap. 549).

    The Malta Information Technology Agency (MITA) has been designated as the competent Authority in terms of the implementation of the Directive and the National Spatial Data Infrastructure in Malta.

    The intention of INSPIRE is to create a European Union (EU) spatial data infrastructure (SDI) that facilitates the sharing of environmental spatial information across public sector organisations (at a national and international level) and improves public access to spatial information across Europe.

    INSPIRE is based on a number of common principles:

    • Data should be collected only once and kept where it can be maintained most effectively.
    • It should be possible to combine seamless spatial information from different sources across Europe and share it with many users and applications.
    • It should be possible for information collected at one level/scale to be shared with all levels/scales detailed for thorough investigations, general for strategic purposes.
    • Geographic information needed for good governance at all levels should be readily and transparently available.
    • Easy to find what geographic information is available, how it can be used to meet a particular need, and under which conditions it can be acquired and used.

    To ensure that Member State SDIs are compatible and usable across European boundaries, the Directive requires that, for the 34 environmental themes in scope within INSPIRE, spatial datasets are available in a consistent format. Technical Implementing Rules have been made available by the European Commission to support the implementation of INSPIRE, covering the following areas:

    • Métadonnées
    • Data Specifications
    • Network Services
    • Data and Service Sharing
    • Monitoring and Reporting

    The Implementing Rules are adopted as Commission Decisions or Regulations, and are binding in their entirety.

    INSPIRE technical architecture

    The following figure provides a simplified overview of key elements in the technical architecture of INSPIRE.

    Spatial Data

    In principle, every spatial object dans un spatial data setneeds to be described by a data specification en précisant le sémantique et le les caractéristiques of the types of spatial objects in the data set. The spatial object types provide a classification of the spatial objects and determine among other information the properties that any spatial object may have (be they thematic, spatial, temporal, a coverage function, etc.) as well as known constraints (e.g. the coordinate reference systems that may be used in spatial data sets). This information is, in principle, captured in an application schema using a conceptual schema language, which is a part of the data specification.

    It is important to note that the logical schema of the spatial data set may and will often differ from the specification of the spatial object types in the data specification. In this case, and in the context of realtime transformation, a service will transform queries and data between the logical schema of the spatial data set and the published INSPIRE application schema on-the-fly. This transformation can be performed e.g. by the download service offering access to the data set or a separate transformation service.

    Métadonnées

    Service métadonnées provides basic information about a service instance to enable the Découverte of spatial data services. Le description of a service includes the service type, a description of the operations and their parameters as well as information about the geographic information available from a service offering.

    Network Services

    Network services are necessary for partage spatial data between the various levels of public authority in the Community. For these services interoperability is requested by the Directive, which means the possibility for services to interact, without repetitive manual intervention.

    It is important to note that for INSPIRE it is assumed that all kind of data and metadata access and processing is performed using web services . All services are described by service descriptions (service metadata, as part of the INSPIRE metadata), allowing humans and software applications to discover specific service instances in the infrastructure and invoke them automatically.

    Another view on the INSPIRE Network Services is to see them as a médiateur between the services provided by the member states or offered by third parties and their EU-level usage for example via the INSPIRE geo-portal .

    The European Commission INSPIRE website has the latest information on INSPIRE and an archive of related documents.


    Creating spatial data on-the-fly for timeline application? - Systèmes d'information géographique

    MySQL has spatial data types that correspond to OpenGIS classes. The basis for these types is described in Section 11.4.2, “The OpenGIS Geometry Model”.

    Some spatial data types hold single geometry values:

    GEOMETRY can store geometry values of any type. The other single-value types ( POINT , LINESTRING , and POLYGON ) restrict their values to a particular geometry type.

    The other spatial data types hold collections of values:

    GEOMETRYCOLLECTION peut stocker une collection d'objets de tout type. The other collection types ( MULTIPOINT , MULTILINESTRING , and MULTIPOLYGON ) restrict collection members to those having a particular geometry type.

    Example: To create a table named geom that has a column named g that can store values of any geometry type, use this statement:

    Columns with a spatial data type can have an SRID attribute, to explicitly indicate the spatial reference system (SRS) for values stored in the column. Par exemple:

    SPATIAL indexes can be created on spatial columns if they are NOT NULL and have a specific SRID, so if you plan to index the column, declare it with the NOT NULL and SRID attributes:

    InnoDB tables permit SRID values for Cartesian and geographic SRSs. MyISAM tables permit SRID values for Cartesian SRSs.

    The SRID attribute makes a spatial column SRID-restricted, which has these implications:

    The column can contain only values with the given SRID. Attempts to insert values with a different SRID produce an error.

    The optimizer can use SPATIAL indexes on the column. See Section 8.3.3, “SPATIAL Index Optimization”.

    Spatial columns with no SRID attribute are not SRID-restricted and accept values with any SRID. However, the optimizer cannot use SPATIAL indexes on them until the column definition is modified to include an SRID attribute, which may require that the column contents first be modified so that all values have the same SRID.

    For other examples showing how to use spatial data types in MySQL, see Section 11.4.6, “Creating Spatial Columns”. For information about spatial reference systems, see Section 11.4.5, “Spatial Reference System Support”.


    Useful tools for web mapping

    Maps are nice – and sometimes necessary – for many websites. But creating beautiful, usable, accurate maps can be tricky. There is a thicket of concepts, tools and data sources to navigate.

    Here’s our quick guide to some of the useful tools for web mapping out there to help web developers work with spatial data.

    As a note – here we’ll present resources roughly in line with the path spatial data takes from its origin to a user’s browser from the perspective of a full stack web developer: collect – manipulate – analyse – store – access – visuali s e . Also, this list is not exhaustive! Loads of useful tools for web mapping exist – this is more of a windscreen tour.

    Collecter

    Data comes from somewhere, and spatial data is no different. Exactly comment spatial data is captured and created is beyond the scope of this post – all we need to know is that images raster et vector features can be downloaded or fetched from several reliable, authoritative sources.

    OS Maps API . The Maps API serves detailed and scalable raster backdrop maps in four colour palettes – ‘Roads’, ‘Outdoor’, ‘Light’ and ‘Leisure’. The service is offered in Web Map Tile Service (WMTS) and ZXY protocols, and can be connected to maps built with Leaflet, Mapbox GL JS, OpenLayers, and other libraries.

    OS Features API . Our Features API lets users request detailed vector features along with rich attribution metadata in various formats. Data can be requested using HTTP requests via curl, JavaScript APIs (like fetch, d 3.json , axios), Python tools like urllib.request and requests, etc.

    OS Vector Tile API . We serve vector tiles via our Vector Tile API, offering scalable, customisable and lightweight mapping data for users to visualise with various mapping libraries.

    Data prep

    Data prep is often a major step in creating a web app. Working with spatial data can be tricky, especially for developers less familiar. These tools can help speed up the job.

    Format conversion

    Often spatial (vector) data is downloaded from sources as shapefiles – but very often web applications and JavaScript libraries are designed to work with GeoJSON, an open standard that describes geographic features and non-spatial attributes. These tools enable conversion between various spatial data formats.

    mapshaper.org . A handy in-browser tool for working with spatial data. Users upload .shp, GeoJSON, and other data formats, then can manipulate the attributes and geometries. The Export function lets users select the output format. Very useful for quick manipulations, especially with smaller datasets.

    QGIS . QGIS is an open source desktop GIS (geographic information system) program. With Q GIS , users can load, visualize, manipulate and export vector and raster data – including into GeoJSON and other formats.

    GDAL . The Geospatial Data Abstraction Library really deserves to stand on its own – it is an incredibly powerful tool to work with both raster and vector data. Many geospatial tools are built on top of GDAL (including QGIS). With the library developers can manipulate spatial data in a very sophisticated way – but it is quite a technical tool to use.

    toGeoJSON . A quick JS library to convert KML and GPX to GeoJSON on the command line, in with Node.js or in the browser. From Mapbox.

    TopoJSON . Vector datasets can be quite large – making websites slower and the web developer’s life more difficult. TopoJSON helps by reducing the size of GeoJSON files by efficiently describing line segments (arcs) so the same lines don’t appear twice in the dataset. Note – to use TopoJSON you’ll need to also use the TopoJSON client , to convert back to GeoJSON.

    Data management

    Again, web developers tend to work with GeoJSON – so our focus will be managing these files.

    GeoJSONLint . For checking validity of GeoJSON objects.

    GeoJSON-Validation . A npm module to check validity of GeoJSON. Especially useful for validating user-uploaded files.

    geojson-vt . Create vector tiles from GeoJSON data efficiently on the fly.

    Back end

    Spatial datasets require speciali s ed databases to efficiently store and access. Most notably, spatial queries enable developers to access records based on some spatial dimension – selecting points that are contained within a polygon, for example, or lines that intersect another line.

    PostSIG . PostgreSQL, with the PostGIS extension, is a commonly used relational database for spatial data. Well tested, large community, SQL.

    SpatiaLite . Like PostGIS, SpatiaLite extends SQLite to support spatial queries.

    Boîte à cartes . With Mapbox, users can upload spatial data, which is stored in a way that it can be served to a browser. With Mapbox Studio users can create custom map styles for their location data.

    Carto . Carto is a location intelligence platform with tools to ingest, enrich, analyse, visualise and integrate spatial data.

    MongoDB . This NoSQL database supports geospatial queries.

    GéoDjango . For developers running a Django back end, GeoDjango extends the framework to work with geographic data. Designed to connect to a geographic database like PostGIS or SpatiaLite.

    NodeJS . Node seamlessly can work with spatial data, connecting to PostGIS and MongoDB instances. The runtime environment benefits from having access to the multitude of JavaScript libraries developed for working with location data.

    Front end

    Brochure . Leaflet is “a JavaScript library for interactive maps”. The library handles raster and vector tiles and enables web developers to customize styling and interactivity – on desktop and mobile devices. A standard for web mappers.

    Mapbox GL JS . Mapbox GL JS lets web developers build customizable, interactive vector maps, rendered using WebGL. This gives developers the option the customize styling and offers a smooth, impressive user experience, including 3D effects. GL JS fits into the Mapbox ecosystem.

    OpenLayers . OpenLayers is another library for creating dynamic, interactive maps in the browser. The library handles both raster and vector tiles and can visualize spatial data from various formats, like GeoJSON, KML, GML and others.

    API ArcGIS pour JavaScript . With Esri’s ArcGIS API for JavaScript developers can build location experiences in 2D and 3D, using dynamic styling based on data.

    d3.js . Data-Driven Documents (D3) is an incredibly powerful library for working with data in the browser. The library excels as a way to create interactive geographic maps and visualizations – supported by a large community and range of example code snippets.

    Proj4js . A very useful JavaScript library for transforming coordinates between coordinate systems, including datum transformations.

    L'analyse des données

    Turf.js . Geospatial analysis in JavaScript. Turf provides a suite of functions to analyse vector geospatial features and work with coordinates and coordinate arrays.

    geotiff.js . A JavaScript library for parsing and visualizing TIFF (raster) files, including raw raster data.

    Geoblaze . Extending geotiff.js, Geoblaze enables users to analyse and visualize raster data in the browser or in NodeJS.

    Observable . Observable is a web-based notebook for exploring and visualizing data. Powerful – well worth a look.

    Design/Cartography

    Colour pickers

    Colorbrewer . Created by a cartographer who has extensively researched how to use colour on maps, Colorbrewer provides various colour palettes for map designers.

    Adobe Color . A tool to generate colour palettes, including various schemes and hex code outputs.

    OS Colour Palette . Ordnance Survey cartographers have created a colour scheme to be used on OS maps, made available in the OS GeoDataViz toolkit on Github.

    Iconographie

    Mapbox Maki . From Mapbox, Maki is a set of vector icons specifically for map designers – beautiful, with lots of icons you don’t find elsewhere.


    Explore the Center

    Gens

    Meet the interdisciplinary faculty, scholars and students using spatial data to interpret and address complex global issues.

    Recherche

    See how you’ll use innovative tools and the application of location-based data to inform critical decision-making.

    Engage

    Discover how our team of experts leverage service learning and unique skill sets to advance collaborative partnerships.


    Center for Geospatial Analytics

    2800 Faucette Dr.
    Campus Box 7106
    Raleigh, NC 27695
    General Inquiries: 919.513.4000


    Voir la vidéo: Νέοι κλάδοι παίρνουν σειρά στον υποχρεωτικό εμβολιασμό: Ένστολοι, ΜΜΜ, ύδρευση u0026 ενέργεια (Octobre 2021).