Persistance

TXM utilise différentes stratégies et différents composants pour la persistance :

  • le workspace d'Eclipse RCP
  • les fichiers de configuration de TXM (txm.ini…)
  • les répertoires de corpus binaires :
    • fichiers de registre (import.xml) pour les partitions, sous-corpus, liens aux éditions, requêtes, etc.
    • index CQP
    • les pages HTML d'éditions
    • les répertoires d'images
    • les index d'autres moteurs (TIGERSearch)
    • etc.
  • les référentiels de catégories
  • le répertoire de résultats (results)
  • le répertoire des macros et scripts
  • le répertoire des xsl
  • le catalogue des schémas XML
  • l'environnement R

Ces composants utilisent des formats adhoc reposant sur des représentations TXT, XML ou binaire.

Cette spécification vise à intégrer d'autres composants de persistance, locaux ou distants :

  • SGBDR (par SQL)
  • bases XML (par XQuery…)
  • etc.

On s'intéresse également à des composants de persistance en tant que tel propres à Java (Hibernate, le framework de persistance d'Eclipse, etc.).

Bases Relationnelles

Solution

Le plus immédiat est :

  • de piloter une base par l'API JDBC
  • de choisir une implémentation native Java : HSQLDB

Tickets : ???

Recette

Pour confirmer le bon fonctionnement de base de l'accès relationnel on utilise la première étape de jointure de lexiques de la recette Palafra V3 :

  • importer la table lexiqueA depuis le fichier lexiqueA.tsv
  • importer la table lexiqueB depuis le fichier lexiqueB.tsv
  • faire la jointure sur X entre les lexiques lexiqueA et lexiqueB
  • afficher les lignes de jointure

Cette recette doit être réalisée dans la solution et dans une implémentation de référence. On compare les résultats et les performances, éventuellement pour différentes tailles de lexiques (pour estimer une courbe de charge).

Implémentations de référence possibles :

  • clients :
    • code Java/jdbc (solution)
    • script Groovy/jdbc
    • logiciel en ligne de commande
    • plugin UI Eclipse
    • logiciel UI Linux
  • serveur :
    • Hsqldb (solution)
    • Sqlite
    • MySQL
    • PostgreSQL

Etat courant

[WIP]

Corpus / sous-corpus / partitions

  • méthode : fichiers XML-TXL, fichiers CQP
  • localisation :

Editions

  • méthode : fichiers HTML, CSS
  • localisation :

Dictionnaires

  • méthode : SGBD
  • localisation :

Référentiels

  • méthode : distant et fichiers
  • localisation :

Doc

public/specs/specs_persistance.txt · Dernière modification: 2017/06/12 16:15 par sebastien.jacquot@univ-fcomte.fr