SpoilerAvertissement : L'outil dans le téléchargement du blog présente un problème connu, dans ArcGIS Pro 3.6 lorsqu'il est exécuté dans le thread principal, la sortie n'est pas correctement renvoyée - la table de correspondance pour les catégories alternatives de lieux est manquante - utilisez donc le thread de géotraitement, qui est le comportement par défaut.
Voici 350K points d'intérêt en République tchèque que j'ai générés à la demande, avec des champs descriptifs de la table de base et des descriptions de catégories alternatives associées, tous en tant que entités dans l'espace de travail mémoire d'ArcGIS Pro. Vous pouvez créer vos propres données pour toute zone d'intérêt dans le monde entier en utilisant l'outil script de génération de données dans le téléchargement du blog. Vous aurez besoin d'ArcGIS Pro 3.5+ et de quelques secondes de votre temps - dans mon cas 35 secondes pour les données tchèques (soit 761422 entités au total entre les points de lieu et la table de correspondance).
Points d'intérêt en République tchèque
Je vous laisse inspecter vous-même la source de l'outil, mais l'essentiel est qu'il est facile de manipuler des données à l'échelle mondiale dans Pro sans se soucier des limitations d'échelle ou des performances - lorsque vous utilisez la bonne approche - à savoir avec DuckDB.
L'inspiration pour ce post est venue lorsque je regardais une présentation de PyData 2025, où j'ai été rappelé que les workflows plus grands que la mémoire peuvent être gérés par DuckDB, y compris les requêtes avec une composante spatiale.
Dans le cas de l'outil du post, la composante spatiale est un paramètre d'entrée de données polygonales (n'importe quel système de coordonnées, n'importe quel nombre de polygones, la caractéristique bleu pâle sur la carte) qui englobe une zone d'intérêt, et pour une composante non spatiale, une clause where optionnelle à appliquer en plus de la zone d'intérêt. Dans le cas des données montrées, la clause était country = 'CZ'. Vous devriez créer des données test dans une petite zone d'intérêt pour affiner toute clause where dont vous avez besoin - la clause doit utiliser des identifiants du schéma des données en sortie et la syntaxe DuckDB SQL.
Notez que dans l'outil je ne passe pas les données par un dataframe, j'utilise une relation DuckDB et un curseur d'insertion ArcPy.
C'est tout, génération performante de données dans ArcGIS à la demande. L'outil accède à la dernière version du thème places d'Overture Maps Foundation places theme, actualisé mensuellement.
N'hésitez pas à commenter ici en cas de problème.