IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XQUERY/SGBD XML Discussion :

Utiliser des fichiers XML comme "bdd"


Sujet :

XQUERY/SGBD XML

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 333
    Points : 586
    Points
    586
    Par défaut Utiliser des fichiers XML comme "bdd"
    Bonjour,


    J'ai quelques questions à propos de l'emploi d'XML dans une application web :
    - est-ce que l'on peut rivaliser avec une base de donnée en terme de performance, pour des recherche dans des fichier relativement petits (pas plus de 100ko, au pire 200ko) ?
    - point de vue sécurité, si on utilise des fichiers XML pour stocker / récupérer des données, quels serait les points de sécurité auxquelles prêter attention ?

    Pour expliquer, j'essaye de gérer mes photos et leur affichage via des fichiers XML. J'ai un fichier par albums, et chaque fichiers sont répertorié par un petit fichier à la racine du site (qui donne simplement le chemin d'accès et le nom des fichiers XML, ainsi que le nombre de photos présente dans chaque albums).

    Pour le moment, ça fonctionne très bien. Les fichiers XML se mettent à jour quand j'upload / détruit des photos, l'édition des titres / commentaires de chaque photos également, et je peux également faire l'affichage aléatoire d'une photo en n'appelant qu'une fois le mini-fichier "répertoire", etc…


    Bien que tout fonctionne, et que la vitesse d'exécution est (très) rapide et qu'au passage ça soulage la BDD, est-ce vraiment une bonne idée ? Jusqu'où peux-t'on aller avec une "base de donnée maison" en XML ?

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    Salut,
    Il faut juste créer autant de fichiers indexe que le nombre clefs dont tu te sert dans tes recherches. Faut juste éviter d'avoir à ouvrir chacun des fichiers pour tester leurs attributs avant une action.
    Tu peux aussi utiliser une bdd juste pour les indexes.
    Et il existe des bdd xml -> eXist.

  3. #3
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    si le système te satisfait sur le plan fonctionnel et celui des performances, pas de raison d'en changer. Par contre, il faut avoir conscience qu'il supportera assez mal la montée en charge, et tes données étant stockées dans des fichiers il n'y aura pas de possibilités d'accès concurrents en modification (pas facilement tout du moins).

    XML est une excellente technologie (pour moi une des avancées majeures en informatique de ces dix dernières années), mais en ce qui concerne le stockage et l'extraction de données les SGBDR sont loin devant aussi bien en performance qu'en fonctionnalités. Il existe par contre un ensemble de problèmes, généralement liés à la gestion documentaire, où le rapport s'inverse.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 333
    Points : 586
    Points
    586
    Par défaut
    Citation Envoyé par Morbo Voir le message
    Salut,
    Il faut juste créer autant de fichiers indexe que le nombre clefs dont tu te sert dans tes recherches. Faut juste éviter d'avoir à ouvrir chacun des fichiers pour tester leurs attributs avant une action.
    Tu peux aussi utiliser une bdd juste pour les indexes.
    Et il existe des bdd xml -> eXist.

    Pour l'album photo par exemple, deux fichiers sont ouverts : un qui indexe tout les fichiers XML (et donc albums photo puisque "un dossier photo = un XML"), et il ouvre ensuite le fichier XML correspondant à l'album que désire voir le visiteur…

    Par contre j'avoue que pour l'affichage d'une photo aléatoire, plusieurs fichiers sont ouverts puisque j'ai besoin de récupérer les titres pour le placer dans l'attribut "alt" de la balise "img".
    Je devrait peut-être penser à faire un autre fichier qui regroupe toutes les images et la valeur du texte alternatif correspondant, quit à l'intégrer dans mon "fichier d'index", et ne garder les autres que lorsque j'ai besoin de plus de détails (i.e. affichage d'une photo en grande taille dans l'album).


    Par contre, il faut avoir conscience qu'il supportera assez mal la montée en charge, et tes données étant stockées dans des fichiers il n'y aura pas de possibilités d'accès concurrents en modification (pas facilement tout du moins).
    Oui, c'est pour cela que je pose la question, je ne sais pas comment ça va se passer une fois en production (mon site n'est pas non plus ultra-visité, même pas 150 vis/jour )…
    Qu'entends-tu par "pas de possibilités d'accès concurrents en modification", des accès simultanés à la base visant à modifier les données sont impossibles ? En tout cas le système sera rarement modifié, principalement lord d'ajout de photo et rarement en pour l'édition / suppression…

    Désolé, j'apprends tout tout seul et j'ai parfois un peu de mal quand on me parle en language informatique autre que ceux qui servent à coder

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 333
    Points : 586
    Points
    586
    Par défaut
    Rebonjour,



    Je ne sais toujours pas de ce qu'il en est pour la sécurité, le sujet ne semble jamais abordé… Si je suppose qu'une fonction pour les quotes est inutile, je ne sais pas qu'est-ce qui serait absolument essentiel…


    thx

  6. #6
    Membre chevronné Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Points : 1 895
    Points
    1 895
    Par défaut
    Citation Envoyé par Shirraz Voir le message
    Rebonjour,



    Je ne sais toujours pas de ce qu'il en est pour la sécurité, le sujet ne semble jamais abordé… Si je suppose qu'une fonction pour les quotes est inutile, je ne sais pas qu'est-ce qui serait absolument essentiel…


    thx
    tu parles de la sécurité à quel niveau. suivant l'endroit où sont placés les fichiers il faut surtout voir qui peux les lire. il n'y a pas de problèmes de sécurité particuliers
    GNAP !

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2008
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2008
    Messages : 333
    Points : 586
    Points
    586
    Par défaut
    Citation Envoyé par nosferapti Voir le message
    tu parles de la sécurité à quel niveau. suivant l'endroit où sont placés les fichiers il faut surtout voir qui peux les lire. il n'y a pas de problèmes de sécurité particuliers
    Niveau lecture, chaque fichier est susceptible d'être ouvert lorsque les utilisateurs iront voir les albums photos (et sûrement pour d'autres applications), mais l'utilisateur ne sait pas où sont les fichiers. Quand à l'édition, pour l'instant ça ne se passe que de mon coté, donc bon…

    Bref, plus besoin des fonctions telles qu'utilisées avec MySQL ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/01/2015, 21h47
  2. Lister et utiliser des fichiers XML
    Par TontonSre dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 02/03/2010, 14h53
  3. [SSIS] Utilisation de fichier XML comme source
    Par t-die dans le forum SSIS
    Réponses: 6
    Dernier message: 03/02/2009, 10h38
  4. Utiliser un fichier XML comme table
    Par newbeewan dans le forum Hibernate
    Réponses: 1
    Dernier message: 14/04/2008, 18h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo