Selenith

Projets, Memos, Infos.

Histone




Histone-Database est un systeme de base de données que j'ai developpé sous forme de fichiers plats en PHP. Il gere, en outre, toute la persistance des données du projet Plasmide.

 

 

1) Pourquoi des fichiers plats et pas un systeme tel que MySQL ou Oracle ?

Il est vrai qu'a l'ère du tout centralisé et du cloud, il peut paraitre étonnant de concevoir un système "a l'ancienne". Il y a deux raison a cela. 
La premiere est que j'utilise pour la plupart de mes projet un raspberry pi, qui bien que performant, n'a pas pour but d'etre une machine ultra puissante. Un systeme de gestion de base de données (SGBD) tel que MySQL est trop gourmand pour une telle configuration. 

La seconde vient du fait que j'ai pu observé que la plupart du temps, lorqu'un SGBD est installé sur une machine, il ne sert que pour l'unique site web hebergé sur la meme machine.

Malgres mes recherches, je n'ai trouvé aucun systeme de persistances des données suffisamment optimisé pour de telles contraintes. Il existe bien quelques bibliotheques PHP pour manipuler des fichiers XML, mais les temps d'acces explosent quand il commence a il y avoir plusieurs milliers d'enregistrements.

 

2) Le fonctionnement

Histone-Database utilise un systeme d'index interne couplé a la gestion du Cache du Zend Engine, le moteur de PHP. Chaque entrée, ou tuple, est materialisé par un fichier. Ces entrées sont regroupés dans differents dossiers, chacun representant une Table.

 


3) le site du projet

Vous pouvez retrouver le projet et sa documentation sur http://histone.selenith.fr

 

Réagissez à cet article

Pour poster un commentaire, utilisez le formulaire ci-dessous :