Organisation HFD (Dilib)
L'organisation HFD ( Hierarchical File organisation for Documentation ) est une organisation de fichier permettant de ranger des grandes collections de données par des clés qui sont facilement associables à des adresses de fichiers.
Implémentation initiale
Les premières implémentations visaient à gérer par accès direct des collections limitées à 1 000 000 objets représentés par des documents XML sur une ligne physique (Stream XML).
A chaque document Sxml est associé une clé à 6 chiffres (de 000000 à 999999).
- les 2 premiers chiffres repèrent un répertoire (suffixé par dd),
- les 2 chiffres du milieu repèrent un fichier (suffixé par df),
- les 3 derniers repèrent le document dans le fichier (en fait chaque document Sxml est précédé par la clé complète).
Par exemple, la document 123456 sera :
- le 57ème document Sxml
- d'un fichier nommé 34.df
- rangé dans le répertoire 12.dd
Son adresse dans le système de fichier Unix sera alors :
- maBiblio.hfd/12.dd/34.df
Implémentation implicite dans Dilib
A partir de la version V0.5.55, de façon implicite, les quatre premiers caractères des clés sont codés en hexadécimal. On peut ainsi gérer plus de 6 000 000 de documents.
Les 2 derniers caractères ont été laissés en décimal pour faciliter les opérations manuelles (mise au point de reformatage).
Ainsi la progression implicite des clés est la suivante :
- 000000 000001 ... 000099 000100 ... 000999 000A00 ... 00FF99 010000 ...