Retour : Page Principale > sommaire aide > sommaire aide logiciels

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 :
    • Apparition dans la section "Applications" de : /hit harvest-webapp
  • 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 :
Ă  la place du Realm existant.

  • 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>
</security-constraint>

<login-config>
  • <auth-method>BASIC</auth-method>
  • <realm-name>HIT</realm-name>
</login-config>

  • Modification de : /conf/tomcat-users.xml
Ajout de :
<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/InstallationForDevelopers

Solution 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 :

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/