Retour : Page Principale > sommaire aide > sommaire aide logiciels
Harvesting and Indexing Toolkit (HIT) est destiné à simplifier la gestion de l’agrégation de données relatives à la biodiversités notamment en étant capable de traiter différents protocoles de transmission de données.
HIT est capable de traiter les protocoles suivants :
Il est relativement facile d'ajouter un nouveau protocole Ă HIT.
app.baseUrl=http://www.tela-botanica.org:8080/
# this is where we harvest into
harvest.directory=/home/tomcat/hit/moissonnage/
# when we backup a harvested dataset it will be stored here
backup.directory=/home/tomcat/hit/moissonnage-sauvegarde/
# HIT database parameters
dataSource.username=telabotap
dataSource.password=MOT_DE_PASSE
dataSource.driverClassName=com.mysql.jdbc.Driver
dataSource.url=jdbc:mysql://localhost:3306/tb_hit_moissonnage?autoReconnect=true&useUnicode=true&characterEncoding=UTF8&characterSetResults=UTF8
# Portal indexing database parameters
portalDataSource.servername=localhost
portalDataSource.name=tb_hit_indexation
portalDataSource.port=3306
portalDataSource.driverClassName=com.mysql.jdbc.Driver
portalDataSource.username=telabotap
portalDataSource.password=MOT_DE_PASSE
portalDataSource.url=jdbc:mysql://localhost:3306/tb_hit_indexation?autoReconnect=true&useUnicode=true&characterEncoding=UTF8&characterSetResults=UTF8
Ajout de :
<security-constraint>
<login-config>
<user name="nom" password="motdepasse" roles="hituser" />
Un "Operator" est un service web correspondant à une ressource par exemple une base de données comme le Carnet en Ligne.
Commencer par ajouter une BioDatasource en indiquant les informations suivantes:
BioDatasource name*: Tela Botanica
Provider Name*: Tela Botanica
URL*: http://www.tela-botanica.org/tapirlink/tapir.php/MON_SERVICE
Factory class*: Tapir Metadata factory
Country: FR
Actuellement, je n'ai pas réussi à indiquer un seul point d'entrée pour TapirLink. Pour ajouter tous les services, il faut à chaque fois, modifier l'url est indiquer l'url de chaque ressource listée dans TapirLink.
Utilisation d'un logiciel de moissonage (HIT) des données fournit par le protocole TAPIR via le logigiel TapirLink.
A intervalle régulier, HIT interroge les sources de données enregistrées.
Les données sont récupérés et intégrés à Eflore.
L'intégration se fait par écrasement.
Les données sont récupérées de façon globales, en un seule fois, par appel des services.
Source :
Notes : si vous changez de nom de classe du harvester n'oubliez pas de mettre à jour la table de la base de donnée de HIT : bio_datasource
HIT
Voir aussi
Présentation de HIT
http://code.google.com/p/gbif-indexingtoolkit/Harvesting and Indexing Toolkit (HIT) est destiné à simplifier la gestion de l’agrégation de données relatives à la biodiversités notamment en étant capable de traiter différents protocoles de transmission de données.
HIT est capable de traiter les protocoles suivants :
- DIGIR 1.0 et Manis DIGIR 1.0 (Darwin Core 1.0, 1.2, 1.21 et 1.4)
- BIOCASE 1.3 (ABCD 1.2 et ABCD 2.06)
- TAPIR 1.0 (Darwin Core 1.4 et ABCD 2.06)
Il est relativement facile d'ajouter un nouveau protocole Ă HIT.
Installation de HIT et fin paramétrage de Tomcat
- Manuel installation de HIT : http://code.google.com/p/gbif-indexingtoolkit/wiki/Installation
- Création d'un dossier /home/tomcat
- Déplacement de /usr/local/tomcat/webapps dans /home/tomcat/
- Déplacement de /usr/local/tomcat/logs dans /home/tomcat/
- Création d'un dossier /home/tomcat/war/ pour stocker les war à installer
- Upload du war de Hit dans /home/tomcat/war/hit-0.9.3.war
- Passage des droits de /home/tomcat/war/hit-0.9.3.war Ă tomcat:tomcat
- Utilisation de l'interface en ligne http://tela-botanica.org:8080/manager/html/list
- pour déployer le war. Utilisation du formulaire "Deploy directory or WAR file located on server" avec les champs remplis comme suit :
- Context path : /hit
- WAR or Directory URL : /home/tomcat/war/hit-0.9.3.war
- Apparition dans la section "Applications" de : /hit harvest-webapp
- pour déployer le war. Utilisation du formulaire "Deploy directory or WAR file located on server" avec les champs remplis comme suit :
- Création de deux bases de données via Webmin : tb_hit_indexation (= portal) & tb_hit_moissonnage (=hit) en UTF-8 utf8_general_ci sur le compte de telabotap
- Création de la structure et du contenu de tb_hit_moissonnage via phpmyadmin > onglet importer avec le fichier hit-1.sql ou /usr/local/mysql/bin/mysql -u telabotap -Dtb_hit_moissonnage -p < /home/admin/script/hit/bdd-hit-0.9.3/hit-1.sql
- Création de la structure de tb_hit_indexation sur le serveur en root (demande des droits root) : /usr/local/mysql/bin/mysql -u root -Dtb_hit_indexation -p < /home/admin/script/hit/bdd-hit-0.9.3/portal.ddl
- Création du contenu de tb_hit_indexation sur le serveur en root : /usr/local/mysql/bin/mysql -u root -Dtb_hit_indexation -p < /home/admin/script/hit/bdd-hit-0.9.3/initPortal.data
- Ajout des deux bdd dans le script de sauvegarde /etc/cron.daily/mysqlbackup
- Configuration de mysql : ajout de l'hĂ´te 127.0.0.1 pour l'utilisateur telabotap et les bases tb_hit_indexation et tb_hit_moissonnage.
- Configuration de hit : (webapps/hit/WEB-INF/classes/application.properties)
app.baseUrl=http://www.tela-botanica.org:8080/
# this is where we harvest into
harvest.directory=/home/tomcat/hit/moissonnage/
# when we backup a harvested dataset it will be stored here
backup.directory=/home/tomcat/hit/moissonnage-sauvegarde/
# HIT database parameters
dataSource.username=telabotap
dataSource.password=MOT_DE_PASSE
dataSource.driverClassName=com.mysql.jdbc.Driver
dataSource.url=jdbc:mysql://localhost:3306/tb_hit_moissonnage?autoReconnect=true&useUnicode=true&characterEncoding=UTF8&characterSetResults=UTF8
# Portal indexing database parameters
portalDataSource.servername=localhost
portalDataSource.name=tb_hit_indexation
portalDataSource.port=3306
portalDataSource.driverClassName=com.mysql.jdbc.Driver
portalDataSource.username=telabotap
portalDataSource.password=MOT_DE_PASSE
portalDataSource.url=jdbc:mysql://localhost:3306/tb_hit_indexation?autoReconnect=true&useUnicode=true&characterEncoding=UTF8&characterSetResults=UTF8
Protection basique par mot de passe
- Modification de conf/server.xml :
- <Realm className="org.apache.catalina.realm. MemoryRealm"/>
- Modification de : webapps/hit/WEB-INF/web.xml
Ajout de :
<security-constraint>
- <web-resource-collection>
- <web-resource-name>HIT</web-resource-name>
- <url-pattern>/*</url-pattern>
- </web-resource-collection>
- <auth-constraint>
- <role-name>hituser</role-name>
- </auth-constraint>
<login-config>
- <auth-method>BASIC</auth-method>
- <realm-name>HIT</realm-name>
- Modification de : /conf/tomcat-users.xml
<user name="nom" password="motdepasse" roles="hituser" />
Utilisation de HIT
Un "Metadata updater" représente le point d'accès d'une structure, où l'on va pouvoir obtenir l'ensemble des infos de cette strucuture et la liste des "Operators".Un "Operator" est un service web correspondant à une ressource par exemple une base de données comme le Carnet en Ligne.
Commencer par ajouter une BioDatasource en indiquant les informations suivantes:
BioDatasource name*: Tela Botanica
Provider Name*: Tela Botanica
URL*: http://www.tela-botanica.org/tapirlink/tapir.php/MON_SERVICE
Factory class*: Tapir Metadata factory
Country: FR
Actuellement, je n'ai pas réussi à indiquer un seul point d'entrée pour TapirLink. Pour ajouter tous les services, il faut à chaque fois, modifier l'url est indiquer l'url de chaque ressource listée dans TapirLink.
Chargement du code source de HIT
Voir : http://code.google.com/p/gbif-indexingtoolkit/wiki/InstallationForDevelopersSolution pour mettre Ă jour eFlore
- utiliser un script exterieur à HIT (en PHP) qui va récupérer les données moissonnées par HIT sous forme de fichier texte puis les mettre dans la BDD d'eFlore
- - Pour : developpement rapide
- - Contre : outil exterieur à HIT, nécessite quand même de développer un Harvester (moissonneur) pour HIT (au format COEL)
- développer une extenssion à HIT (en JAVA) qui va directement depuis réaliser l'intégration dans eFlore
- - Pour : facile à déployer avec HIT, meilleure visibilité de Tela Botanica à l'internationale...
- - Contre : peu de documentation, développement Java plus long (moins de compétence), HIT n'est pas encore stable
Problèmes rencontrés :
- L'indexation de HIT ne gère pas les champs VerbatimCoordinates et ne permet pas de stoker les coordonnées UTM.
- Aucun champ disponible dans le standard DWC pour stocker les numéros nomenclatural et taxonomique. Nous avons utiliser le champs MinimumElevationInMeters pour sotcker le nt dans un premier temps.
Idée d'utilisation de HIT et TapirLink dans le cadre de Tela Botanica
Communication entre le Sytème Eflore et des systèmes de collecte de données tiers : carnet en ligne (CEL) et Collections en ligne (COEL).Utilisation d'un logiciel de moissonage (HIT) des données fournit par le protocole TAPIR via le logigiel TapirLink.
A intervalle régulier, HIT interroge les sources de données enregistrées.
Les données sont récupérés et intégrés à Eflore.
L'intégration se fait par écrasement.
Les données sont récupérées de façon globales, en un seule fois, par appel des services.
Développer dans HIT
- Configurer votre poste de travail pour travailler avec Java
- Installer Maven, le plugin M2Eclipse...
- Dans Eclipse, créer un nouveau workspace et le sélectionner.
- Sélectionner la perspective SVN.
- AJouter le dépôt HIT du GBIF (http://gbif-indexingtoolkit.googlecode.com/svn/trunk/)
- Réaliser un checkout de harvest-webapp avec Project Wizard et utiliser un projet Maven "Check out Maven Projects from SCM".
- Utilisez le workspace courant et créer un working-set nommé "Hit"
- Vérfiez que votre configuration Mysql de Xampp n'utilise pas skip-networking (vérfiez dans le fichier vi /opt/lampp/etc/my.cnf et commentez la ligne skip-networking si nécessaire ). Si mysql utilise skip-networking, le port 3306 n'apparaitra pas dans la liste qui s'affiche avec la commande : netstat -vaptn
- Ajouter dans /home/MON_HOME/.m2 un fichier setttings.xml dans lequel vous mettrez : <settings><localRepository>/home/MON_HOME/web/maven_repository</localRepository></settings>
- Pour créer un nouveau projet, il est possible d'utiliser des archétypes :
- Pour un simple projet Gbif Maven : mvn archetype:create -DarchetypeGroupId=org.gbif -DarchetypeArtifactId=gbif-archetype -DarchetypeVersion=1.0-SNAPSHOT -DremoteRepositories=http://tools.gbif.org/maven/repository/ -DgroupId=org.gbif -DartifactId=myProjectName
- Pour l'application web complète : mvn archetype:create -DarchetypeGroupId=org.gbif -DarchetypeArtifactId=gbif-war-archetype -DarchetypeVersion=1.0-SNAPSHOT -DremoteRepositories=http://tools.gbif.org/maven/repository/ -DgroupId=org.gbif -DartifactId=myProjectName
- Commencer par créer un projet Gbif Maven simple à l'aide de l'archetype indiqué ci-dessus.
- Puis dans Eclipse, choisir File > Import -> General > Maven Project. Dans la fenêtre qui s'ouvre choisir le dossier du projet Maven créé avec l'archétype.
- Commencer à créer le moissonneur (= harvester/operator) à partir des exemple du Gbif.
- Pour créer un nouveau moissonneur (= harvester/operator), il semble nécessaire de créer aussi un nouveau metadata updater.
- Il faut créer le metadata updater dans le dossier harvest-webapp du Gbif où dans son propre harvest-webapp créé à partir du second archétype.
- Renseigner le fichier pom.xml du dossier harvest-webapp en ajoutant la dépendance au dossier du nouveau moissonneur.
- Lancer le script ./buildingFromSourceScript- Eclipse2.sh récupéré depuis le projet google du Gbif. Il doit être installé dans le dossier maven créé lors de l'import depuis le dépôt svn du Gbif.
- Se rendre dans le dossier de votre moissonneur et lancer la commande : mvn clean install eclipse:clean eclipse:eclipse
- Se rendre dans le dossier harvest-webapp et lancer la commande : mvn clean package
- La commande lancer dans le dossier de votre moissonneur va créée un jar qui sera déposé dans le dépôt local (spécifié dans le fichier settings.xml).
- La commande lancer dans le dossier harvest-webapp va :
- tout rassembler dans le dossier target présent dans le dossier harvest-webapp.
- le jar de votre moissonneur est placé dans le dossier target/hit/WEB-INF/lib
Source :
- Poursuivre en suivant les indications indiquer sur le Wiki du projet Hit du GBIF
- Puis utilisez l'article du blog des développeur de Hit pour créer un nouveau projet Maven pour Hit
Notes : si vous changez de nom de classe du harvester n'oubliez pas de mettre à jour la table de la base de donnée de HIT : bio_datasource
A faire :
- Developpement module client TapirLink CEL
- Developpement module serveur CEL
- Recolte par HIT
- Integration Ă la base de donnee (Tapirus?)
- Construire le Modele base de donnees
- Recuperer DB designer
- Installer eflore en local
- programmes
- base de donnes
- Developpement module client TapirLink COEL
- Developpement module serveur COEL (HIT + Tapirus)
Ressources :
- tapirus , module d'interrogation de services Tapir : servira à l'intégration.
- Voir plutĂ´t Ă utiliser HIT Ă la place de Tapirus
Calendrier
- 02/12/2009 [David DELON] : svn http://gbif-indexingtoolkit.googlecode.com/svn/trunk/ harvest-core (revision 905)
- 23/12/2009 [David DELON] : installation de hit 0.9.1 depuis svn
- 13/01/2009 [Jean-Pascal MILCENT] : fin paramétrage de Tomcat
- 14/01/2009 [Jean-Pascal MILCENT] : mise en place de HIT 0.9.3 (war + bdd)
Reste Ă faire :
- A FAIRE : voir oĂą placer les dossiers harvest.directory et backup.directory > DavidDelon ????
- A FAIRE : inclure les modifs faite dans le Tapirlink local sur mon poste sur le Tapirlink de Tela > JeanPascalMilcent
- A FAIRE : modifier le module d'eFlore pour qu'il récupère les données de la base GBIF pour afficher la carte du CEL avec les données du CEL -> DavidDelon : OK
- A FAIRE : moissonner et indexer les données du CEN-LR dans la base du GBIF via HIT -> DavidDelon ....
- A FAIRE : modifier le module d'eFlore pour qu'il récupère les données de la base GBIF pour afficher la carte utm avec les données du CEN -> DavidDelon
- A FAIRE : développer un synchroniseur DWC et ABCD pour eFlore intrégré à HIT -> DavidDelon
- A FAIRE : synchroniser les données du CEL et du CEN-LR avec eFlore dans HIT -> DavidDelon
- A FAIRE : mettre Ă jour le module d'eFlore pour qu'il utilise la base eFlore Ă la place de la base du GBIF -> DavidDelon
- A FAIRE : connecter COEL à TapirLink avec un fichier CNS spécifique -> JeanPascalMilcent
- A FAIRE : développer un moissonneur HIT pour COEL -> JeanPascalMilcent
- A FAIRE : moissonner les données du COEL avec HIT -> JeanPascalMilcent
- A FAIRE : développer un synchroniseur des données du COEL pour eFlore intrégré à HIT -> JeanPascalMilcent
- A FAIRE : synchroniser les données du COEL avec eFlore dans HIT -> JeanPascalMilcent
- A FAIRE : développer un module d'eFlore pour les données du COEL présentes dans la bdd d'eFlore sur la base du module Collection -> JeanPascalMilcent
Fait :
- 2009-01-25 : installer un environnement local de developpement tomcat + hit sur postes de travail JeanPascalMilcent et DavidDelon -> voir sur cette page le paragraphe "Développer dans Hit".
- 2009-01-21 : indexer les données moissonnées du CEL dans la base du GBIF via HIT
- 2009-01-20 : mapper dans Tapirlink les coordonnées du CEL
- 2009-01-18 tester le moissonnage sur le CEL de Tela Botanica : OK. JeanPascalMilcent DavidDelon
- 2009-01-18 mettre Ă jour le tapirlink de Tela Botanica vers la version 0.7.0 > JeanPascalMilcent OK.
- 2009-01-18 régler le problème des droits de l'utilisateur telabotap. Actuellement, HIT fonctionne que si on utilise l'utilisateur root. > DavidDelon : OK
- 2009-01-17 déplacer /home/tomcat/logs dans /home/log/tomcat/ > DavidDelon : OK
- 2009-01-17 protection par mot de passe de /hit > DavidDelon : OK
- 2009-01-17 vérifier que la sauvegarde fonctionne > DavidDelon : OK.
- 2009-01-17 régler le problème des droits de l'utilisateur telabotap. Actuellement, HIT fonctionne que si on utilise l'utilisateur root. > DavidDelon : OK
- 2009-01-14 [JeanPascalMilcent] : Faire une redirection de /usr/local/tomcat/webapps vers /home/tomcat/webapps
- 2009-01-14 [JeanPascalMilcent] : Installer le War dans le répertoire qui va bien : /home/tomcat/webapps via l'interface en ligne de Tomcat http://tela-botanica.org:8080/
- 2009-01-14 [JeanPascalMilcent] : Creer les bases de données : harvesting ('hit') database et indexing ('portal') database
- 2009-01-14 [JeanPascalMilcent] : Lancer l'application : http://tela-botanica.org:8080/