En attendant l’implant cérébral, le plus petit support mobile pour gérer des données géographiques est le téléphone portable. Mais quelles sont les possibilités de gestion de données spatialisées depuis cet appareil ? Alors que j’étais en déplacement à l’étranger sans mon pc portable, je me retrouvai face à un problème. Je devais mettre à jour un zonage géographique pour un service de cartographie en ligne de toute urgence. L’architecture SIG du service se base sur le Système de Gestion de Bases de Données PostgreSQL et son extension spatiale PostGIS sur un serveur dédié. Alors, comment importer des données géographiques dans PostgreSQL sur smartphone ? Je trouvais rapidement des applications pour gérer des bases de données PostgreSQL / PostGIS. Et encore mieux l’émulateur Termux me garantit l’utilisation d’outils SIG comme psql et ogr2ogr.
Termux : un émulateur sur smartphone
Termux, c’est quoi? L’application Android Termux offre un environnement de ligne de commande complet comme celui de Linux. Termux permet d’exécuter des commandes Unix, installer des packages et des utilitaires, et même compiler et exécuter du code source directement sur le smartphone. Ainsi, il est possible de réaliser de tâches de développement, d’administration système et de coder sur le téléphone portable. Il est conseillé d’installer l’application Termux depuis F-Droid.
Installation de PostgreSQL sur smartphone
Dans le terminal Termux, on installe PostgreSQL en saisissant : apt update && apt install postgresql
. Puis, on créée un répertoire et on initialise un cluster de base de données : mkdir ./postgres && initdb ./postgres
.
Comment lancer le serveur PostgreSQL ?
Le démarrage de PostgreSQL s’exécute par la commande : pg_ctl -D ./postgres start
. Comme le montre la figure 1 ci-après, on peut utiliser l’outil d’administration psql pour se connecter à la base de données distante.
Installation de GDAL sur téléphone portable
Il existe différents utilitaires pour importer une donnée géographique dans PostgreSQL. L’outil ogr2ogr est complet et exécutable en ligne de commande. Ce outil est disponible via le package GDAL. L’installation de GDAL sur Termux se réalise avec la ligne de commande : pkg install gdal
. Alors, l’outil SIG ogr2ogr est disponible sur le terminal (figure 2).
Mais comment accéder à la donnée géographique téléchargée sur son smartphone?
Accès aux périphériques du smartphone avec Termux
L’accès au stockage interne du téléphone est possible grâce à la commande sur le terminal Termux : termux-setup-storage
. Ainsi, on peut lister les répertoires et fichiers du téléphone portable (figure 3).
ogr2ogr sur Smartphone
Enfin, l’import du shapefile dans PostgreSQL avec ogr2ogr se réalise en saisissant :
ogr2ogr -f PostgreSQL PG:"dbname='<nom de la base de données>' host='<IP du serveur physique>' port='<port>' user='<utilisateur>' password='<mot de passe>'" <nom du fichier>.shp -lco GEOMETRY_NAME=geom -lco FID=gid -lco SPATIAL_INDEX=GIST -nlt PROMOTE_TO_MULTI -nln <nom de la table dans PG> -overwrite
La documentation d’ogr2ogr est disponible en ligne pour plus d’informations sur les paramètres utilisés ci-dessus.
La vérification de l’import des données géographiques dans la base de données pourrait se réaliser par l’utilitaire psql. Toutefois, on choisit d’utiliser l’application cliente PostgreSQL Viewer pour visualiser les données en base sur smartphone.
PostgreSQL Viewer : application mobile
Comment fonctionne PostgreSQL sur smartphone?
Le SGBD PostgreSQL fonctionne sur un modèle Serveur/Client avec une connexion de type TCP/IP. Comme pour ogr2ogr, l’application PostgreSQL Viewer se connecte au serveur de base de données à partir des paramètres classiques : l’IP de la machine hôte, le port, le nom de la base de données, l’utilisateur et le mot de passe. La capture d’écran ci-après (figure 4) montre les paramètres de connexion à saisir dans l’application:
Requêtes SQL sur smartphone
Une fois connecté à la base de données PostgreSQL sur smartphone, on peut réaliser des requêtes SQL pour manipuler les informations géographiques (figure 5).
En conclusion, l’émulateur Termux offre la possibilité d’utiliser de nombreux outils SIG connectables aux bases de données comme ogr2ogr. Cet utilitaire nous a permis d’importer des données géographiques dans PostgreSQL sur smartphone. Enfin, l’application PostgreSQL Viewer favorise la manipulation des données bancarisées à l’aide de requêtes SQL.