Suite

Comment modéliser plusieurs classes de topologie dans une requête avec ArcGIS


Nous avons beaucoup de données géographiques avec différents types de géométrie dans notre application, qui sont conservées dans la base de données Oracle 11g avec ST_Geometry pris en charge par Arcgis SDE 10.

Les fonctionnalités peuvent être organisées en arborescence :

Données géographiques (forme, nom, adresse) ImportantFeature(level, classcode… ) ImportFeaturePoint ImportFeatureLine ImportFeaturePolygon River RiverLine RiverPolygon Hotel: HotelPoint School SchoolPoint…

Et les données d'origine sont créées par Esri FileGeotadabase (.gdb), une caractéristique une table (dans arcmap), puis ces données sont exportées vers Oracle 11g par SDE.

Maintenant, nous avons des tables de base de données :

BuildingPoint RiverLine RiverPolygon…

Et nous devons interroger ces données selon différents critères, par exemple, nous devons interroger toutes les données géographiques, toutes lesFonctionnalité importantedonnées ou tous lesfleuvequel que soit le type de géométrie est point, polyligne ou polygone.

Je crée donc une vue pour regrouper les fonctionnalités telles que :

créer la vue xxView as select shape, name, address from ImportFeaturePoint union all select shape, name, address from ImportFeatureLine…

Cependant, j'ai obtenu de très faibles performances pour cette solution, vérifiez mon dernier message, alors je me demande s'il existe un autre moyen de mettre en œuvre mon exigence.


À propos des auteurs

Rémi Myers

Rémi est le chef de produit pour ArcGIS Utility Network et passe son temps libre à explorer le désert du sud-ouest des États-Unis et les plages de Californie.

Équipe du réseau de distribution

L'équipe du réseau de services publics publie des blogs sur des sujets liés au secteur des services publics et sur les fonctionnalités disponibles avec l'extension ArcGIS Utility Network Management. #UtilityNetwork #EsriElectric #EsriGas #SmartGrid


Topologie de bus

La topologie en bus utilise un seul câble qui relie tous les nœuds inclus. Le câble principal sert de colonne vertébrale à l'ensemble du réseau. L'un des ordinateurs du réseau fait office de serveur informatique. Lorsqu'il a deux extrémités, il s'agit d'une topologie de bus linéaire.

Avantages :

  • Le coût du câble est très inférieur à celui d'une autre topologie, il est donc largement utilisé pour construire de petits réseaux.
  • Célèbres pour les réseaux LAN car ils sont peu coûteux et faciles à installer.
  • Il est largement utilisé lorsqu'une installation réseau est petite, simple ou temporaire.
  • C'est l'une des topologies passives. Ainsi, les ordinateurs sur le bus n'écoutent que les données envoyées, qui ne sont pas responsables du déplacement des données d'un ordinateur à un autre.

Désavantages:

  • En cas de défaillance du câble commun, l'ensemble du système tombera en panne.
  • Lorsque le trafic réseau est important, il développe des collisions dans le réseau.
  • Chaque fois que le trafic réseau est important ou que les nœuds sont trop nombreux, le temps de performance du réseau diminue considérablement.
  • Les câbles sont toujours d'une longueur limitée.

Interrogation d'un modèle d'informations sur le bâtiment pour obtenir des informations spatiales spécifiques à la construction

La communauté de la conception et de la construction a montré un intérêt croissant pour l'adoption de modèles d'information sur le bâtiment (BIM). La richesse des informations fournies par les BIM a le potentiel de rationaliser les processus de conception et de construction en permettant une communication, une coordination, une automatisation et une analyse améliorées. Cependant, il existe de nombreux défis pour extraire des informations spécifiques à la construction des BIM. Dans la plupart des cas, les praticiens de la construction doivent identifier manuellement les informations requises, ce qui est inefficace et sujet aux erreurs, en particulier pour les projets complexes et à grande échelle. Cet article décrit le processus et les méthodes que nous avons formalisés pour automatiser partiellement l'extraction et l'interrogation d'informations spécifiques à la construction à partir d'un BIM. Nous décrivons des méthodes d'analyse d'un BIM pour rechercher des informations spatiales pertinentes pour les praticiens de la construction, et qui sont généralement représentées implicitement dans un BIM. Notre approche intègre des données ifcXML et d'autres données spatiales pour développer un modèle plus riche pour les utilisateurs de la construction. Nous utilisons des prédicats XQuery topologiques 2D personnalisés pour répondre à une variété de requêtes spatiales. Les résultats de la validation démontrent que cette approche fournit une représentation plus riche des informations spécifiques à la construction par rapport aux outils BIM existants.

Résumé graphique

Points forts

► Un framework intégré pour répondre aux requêtes spatiales sur un BIM est proposé. ► Nous extrayons les données spatiales, non disponibles dans ifcXML, à partir de l'API Autodesk Revit. ► Un schéma d'application GML est utilisé pour représenter les données BIM spatiales et non spatiales dans une syntaxe et un schéma communs. ► Des prédicats de requête spatiale XQuery développés sur mesure sont utilisés pour traiter les requêtes. ► Notre approche extrait des informations spécifiques à la construction qui sont par ailleurs implicites dans un BIM.


La topologie de réseau représente un arrangement de réseau composé de plusieurs nœuds, c'est-à-dire des nœuds émetteurs et récepteurs, et des lignes qui les relient.

Types de topologie de réseau

Examinons le type de topologies de réseau disponibles.

Développement Web, langages de programmation, tests de logiciels et autres

1. Topologie de bus

La topologie en bus est le type de topologie de réseau où chaque nœud, c'est-à-dire chaque périphérique du réseau, est connecté à une ligne de câble principale solo. Les données sont transmises en un seul itinéraire, d'un point à l'autre. Nous ne pouvons pas transmettre de données dans les deux sens. Lorsque cette topologie a précisément deux extrémités, on parle de topologie de bus linéaire. Il est principalement utilisé pour les petits réseaux.

Avantages de la topologie en bus

  • C'est rentable.
  • La longueur de câble requise est la plus petite par rapport aux autres topologies.
  • Le fonctionnement de cette topologie est facile à comprendre.
  • L'extension peut être effectuée facilement en reliant les câbles entre eux.

Inconvénients de la topologie en bus

  • Si le câble principal s'effondre, le réseau complet s'effondre.
  • La performance du réseau est en jeu et diminue s'il y a de nombreux nœuds et un trafic réseau important.
  • Le câble principal ne peut être que si long. La longueur du câble est limitée.
  • La topologie en bus n'est pas aussi rapide que la topologie en anneau.

2. Topologie en anneau

La topologie en anneau est un type de topologie dans lequel chaque ordinateur est connecté à un autre ordinateur de chaque côté. Le dernier ordinateur est connecté au premier, formant ainsi une forme d'anneau. Cette topologie permet à chaque ordinateur d'avoir exactement deux ordinateurs voisins.

Dans cette topologie, l'ordinateur principal est connu sous le nom de station de contrôle, qui est responsable de toutes les opérations. La transmission de données entre les appareils se fait à l'aide de jetons. Pour transmettre des données, le poste informatique doit détenir le jeton. Le jeton n'est libéré que lorsque la transmission est terminée, après quoi d'autres stations informatiques peuvent utiliser le jeton pour transmettre des données.

La transmission des données se fait selon une méthode séquentielle, c'est-à-dire bit par bit. Par conséquent, les données doivent passer par chaque nœud du réseau pour atteindre le nœud de destination. Nous utilisons des répéteurs dans une topologie en anneau pour éviter la perte de données pendant la transmission. Ces répéteurs sont particulièrement utiles lorsque la topologie comporte un grand nombre de nœuds et que les données doivent atteindre le tout dernier nœud du réseau.

La transmission de données est unidirectionnelle dans une topologie en anneau, mais elle peut être créée pour être bidirectionnelle en connectant chaque nœud à un autre ensemble de lignes de connexion. C'est ce qu'on appelle la topologie à double anneau. Ici, deux réseaux en anneau sont créés, les données dans chacun circulant dans des directions opposées.

Avantages de la topologie en anneau

  • Le réseau n'est pas affecté par de nombreux nœuds ou un trafic intense, car seuls les nœuds possédant des jetons peuvent transférer des données.
  • La topologie en anneau permet une installation et une extension bon marché.

Inconvénients de la topologie en anneau

  • C'est une tâche fastidieuse à résoudre dans la topologie en anneau.
  • Il est difficile d'ajouter ou de supprimer des nœuds, car cela interrompt l'activité du réseau.
  • Si un ordinateur tombe en panne, toute l'activité du réseau est interrompue.

3. Topologie en étoile

La topologie en étoile est le type de topologie de réseau dans laquelle tous les nœuds sont connectés via des câbles à un seul nœud appelé concentrateur, qui est le nœud central. Le hub peut être de nature active ou passive. Les concentrateurs actifs contiennent des répéteurs, tandis que les concentrateurs passifs sont considérés comme des nœuds non intelligents. Chaque nœud contient une connexion réservée au nœud central, dont le nœud central fait office de répéteur lors de la transmission de données.

Avantages de la topologie en étoile

  • La topologie en étoile offre des performances rapides en raison du faible trafic réseau.
  • Il est facile de mettre à niveau le Hub au fur et à mesure des besoins.
  • La configuration peut être effectuée facilement et peut également être facilement modifiée.
  • La topologie en étoile est facile à dépanner.
  • En cas de défaillance d'un nœud, il peut facilement être remplacé sans affecter le fonctionnement du reste du réseau.

Inconvénients de la topologie en étoile

  • Le coût d'installation est extrême, et il est coûteux à utiliser.
  • Tous les nœuds dépendent du hub.

4. Topologie de maillage

La topologie maillée est le type de topologie dans laquelle tous les nœuds sont connectés à tous les autres nœuds via un canal réseau. La topologie maillée est une connexion point à point. Il dispose de n(n-1)/2 canaux réseau pour connecter n nœuds.

La topologie maillée a deux techniques pour la transmission de données, à savoir le routage et l'inondation. Dans la technique de routage, les nœuds possèdent une logique de routage, comme la logique pour la distance la plus courte jusqu'au nœud de destination ou la logique pour éviter les routes avec des connexions interrompues. Dans la technique d'inondation, tous les nœuds du réseau reçoivent les mêmes données. Cela ne nous laisse aucun besoin de logique de routage. Cette technique rend le réseau robuste mais entraîne une charge indésirable sur le réseau.

Avantages de la topologie maillée

  • Chaque connexion a la capacité de transporter sa charge de données particulière.
  • La topologie en maillage est très robuste.
  • Il est facile de diagnostiquer les défauts.
  • La topologie en maillage offre confidentialité et sécurité.

Inconvénients de la topologie maillée

  • La topologie en maillage est difficile à installer et à configurer.
  • Comme tous les nœuds sont connectés les uns aux autres, le câblage est coûteux.
  • Le câblage en vrac est essentiel.

5. Topologie arborescente

La topologie arborescente est la topologie dans laquelle les nœuds sont connectés hiérarchiquement, avec tous les nœuds connectés au nœud le plus haut ou au nœud racine. Par conséquent, il est également connu sous le nom de topologie hiérarchique. La topologie arborescente comporte au moins trois niveaux de hiérarchie.

La topologie arborescente est appliquée dans le réseau étendu. C'est une extension de la topologie en bus et de la topologie en étoile. Il est préférable que les postes de travail soient situés en groupes, pour un travail et une gestion faciles.

Avantages de la topologie arborescente

  • Il est facile d'étendre le réseau avec plus de nœuds.
  • Il est facile à entretenir et à gérer.
  • Il est facile de détecter une erreur dans le réseau.

Inconvénients de la topologie arborescente

  • C'est profondément câblé.
  • C'est cher par rapport à d'autres topologies.
  • Si le nœud racine s'effondre, le réseau s'effondre également.

6. Topologie hybride

La topologie hybride est essentiellement une topologie de réseau comprenant deux ou plusieurs types de topologies différentes. C'est une topologie fiable et évolutive, mais en même temps, elle est coûteuse. Il reçoit les mérites et les inconvénients des topologies utilisées pour le construire.

Avantages de la topologie hybride

  • Il est facile à dépanner et fournit des techniques simples de détection d'erreurs.
  • Il s'agit d'une topologie de réseau flexible, ce qui la rend très efficace.
  • Il est évolutif car la taille peut être augmentée facilement.

Inconvénients de la topologie hybride

Conclusion

Nous avons vu les différentes topologies de réseau à notre disposition, ainsi que leurs avantages et leurs inconvénients. Selon nos besoins, il nous sera désormais facile de choisir quelle topologie de réseau peut être utilisée.

Articles recommandés

Il s'agit d'un guide sur les types de topologie de réseau. Nous discutons ici de 8 types de topologie de réseau avec leurs avantages et inconvénients respectifs. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus –


Le framework Knockout vous permet de lier de manière déclarative des éléments DOM à des variables JavaScript afin de les modifier dans le DOM les modifie immédiatement dans le JavaScript. En outre, vous pouvez récupérer les événements de modification, ce qui vous permet de retraiter les données si nécessaire. Dans cet exemple, vous souhaiterez peut-être interroger la base de données chaque fois que votre champ change. Voici comment procéder :

Dans Knockout, vous utilisez 'data-bind="value: var"' pour sélectionner la variable à lier à l'élément DOM. Dans le JavaScript, vous avez :

Bien que ce soit évidemment un peu plus compliqué que le modèle jQuery, c'est un outil puissant puisqu'il permet de traiter de manière réactive les données au fur et à mesure qu'elles sont mises à jour dans le DOM.


Comment dessiner un diagramme de déploiement ?

Un modèle de déploiement peut être développé en suivant les étapes ci-dessous.

  1. Tout d'abord, identifiez les nœuds qui représentent les processeurs client et serveur de votre système, puis mettez en évidence les périphériques pertinents pour le comportement de votre système.
    Par exemple, vous souhaiterez modéliser des périphériques spéciaux, tels que des lecteurs de cartes de crédit, des lecteurs de badges et des périphériques d'affichage autres que les moniteurs, car leur placement dans la topologie matérielle du système est susceptible d'être important sur le plan architectural.
  2. Fournissez des repères visuels pour ces processeurs et appareils via des stéréotypes.
  3. Modélisez la topologie de ces nœuds dans un diagramme de déploiement.
  4. De même, spécifiez la relation entre les composants dans la vue d'implémentation de votre système et les nœuds dans la vue de déploiement de votre système.

5 réponses 5

Il est possible de générer des classes (via cglib, asm, javassist, bcel), mais vous ne devriez pas le faire de cette façon. Pourquoi?

  • le code qui utilise la bibliothèque doit s'attendre à taper Object et obtenir tous les champs en utilisant la réflexion - ce n'est pas une bonne idée
  • java est un langage à typage statique et vous souhaitez introduire le typage dynamique - ce n'est pas l'endroit.

Si vous voulez simplement les données dans un format non défini, vous pouvez les renvoyer dans un tableau, comme Object[] , ou Map<String, Object> si vous voulez qu'elles soient nommées, et les récupérer à partir de là - cela vous évitera bien des problèmes avec les classes inutiles génération dans le seul but de contenir certaines données qui seront obtenues par réflexion.

Ce que vous pouvez faire à la place, c'est avoir des classes prédéfinies qui contiendront les données et les passeront comme arguments aux méthodes d'interrogation. Par exemple:

Ainsi, vous pouvez utiliser la réflexion sur la classe attendueResultat transmise pour créer un nouvel objet de ce type et le remplir avec le résultat de la requête.

Cela dit, je pense que vous pourriez utiliser quelque chose d'existant, comme un framework ORM (Hibernate, EclipseLink), le JdbcTemplate de Spring, etc.


C'est en fait très similaire à jQuery :

ET (les deux classes)

OU ALORS (au moins une classe)

OU exclusif (une classe mais pas l'autre)

NAND (pas les deux classes)

NI (aucune des deux classes)

querySelectorAll avec des sélecteurs de classe standard fonctionne également pour cela.

Comme @filoxo l'a dit, vous pouvez utiliser document.querySelectorAll .

Si vous savez qu'il n'y a qu'un seul élément avec la classe que vous recherchez, ou si vous n'êtes intéressé que par le premier, vous pouvez utiliser :

BTW, tandis que .class1.class2 indique un élément avec tous les deux classes, .class1 .class2 (notez les espaces) indique une hiérarchie - et un élément avec la classe class2 qui est à l'intérieur d'un élément avec la classe class1 :

Et si vous voulez forcer la récupération d'un enfant direct, utilisez le signe > ( .class1 > .class2 ):


Voir la vidéo: How to calculate area in ArcGIS from attribute table (Septembre 2021).