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

MS SQL Server Discussion :

Stockage fichiers dans une base de données [2008]


Sujet :

MS SQL Server

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2012
    Messages : 90
    Points : 60
    Points
    60
    Par défaut Stockage fichiers dans une base de données
    Bonjour,

    Je dois étudier si il est préférable de stocker des fichiers directement dans une base de donnée ou bien si il vaut mieux les stocker sur le disque en référençant en base uniquement le chemin vers le fichier.

    J'ai déjà rechercher plusieurs informations sur le sujet, notamment sur ce site, et je me tourne vers vous pour confirmer ce que j'ai pu trouver ou m'aiguiller vers de nouveau axe de reflexion.

    Il semblerait que le stockage de fichier en base via des données BLOB soit sujet à polémique car couteux en volume et performance.

    Le principal inconvénient concernant le fait de garder en base uniquement le chemin vers le fichier serait un problème d'intégrité des données.

    Au final, la solution convenant le mieux serait le lien vers le fichier tout en s'assurant que le SGBDR gère exlusiement le file system.

    SQL Server 2008 combine les deux techniques via Les FILESTREAM (données en dehors de la base, mais gérées par la base) est-ce là la meilleure solution a adopté?

    Auriez-vous des précisions? d'autres pistes? des critiques?

    J'aimerais être sur de ne pas m'emmeler les pinceaux!

    Merci d'avance,
    Cordialement,
    Christophe.

  2. #2
    Membre chevronné

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Points : 1 758
    Points
    1 758
    Par défaut
    Ca va dépendre de ce que tu souhaites realiser.
    Tu trouveras des informations utiles sur le site de Microsoft, à savoir qu'à partir de SQL Server 2012, tu peux également t'orienter vers les filetable.

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 888
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 888
    Points : 53 122
    Points
    53 122
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par lavoyech Voir le message
    SQL Server 2008 combine les deux techniques via Les FILESTREAM (données en dehors de la base, mais gérées par la base) est-ce là la meilleure solution a adopté?
    De très loin OUI !
    Cela combien en effet l'intérêt, des deux mondes :
    1) les flux de fichiers sont transactionnés et restent donc parfaitement synchrones par rapport aux données relationnelles.
    2) comme vous devez dédier un espace de stockage particulier pour le filestream, vous pouvez le placer ou vous voulez (par exemple sur un SAN moins performant que les données relationnelles ou le journal des transactions)
    3) c'est assez normatif (la norme SQL a prévu la chose sous le nom de DATALINK, mais comme MS à fait quelques différences, ils n'ont pas voulu lui donner le même nom.
    4) c'est très performant si :
    • pour des fichiers de moins de 1 Mo vous le passez dans le DATASET (requête SELECT)
    • pour des fichiers de plus de 1 Mo, vous le passez par le file système (routines spécifiques en .net)

    5) les sauvegardes sont totalement synchrones... pas de perte de fichiers si besoin de restauration !

    Auriez-vous des précisions? d'autres pistes? des critiques?
    Cela surcharge un peu plus le serveur SQL. Aussi faut-il bien le dimensionner.

    A +

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Avril 2012
    Messages : 90
    Points : 60
    Points
    60
    Par défaut
    Merci pour vos réponses!

    Cordialement,
    Christophe

  5. #5
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Vous pouvez voir l'article de David Barbarin sur le sujet

    @++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. stocker des fichiers dans une base de donnée MYSQL
    Par Invité(e) dans le forum MySQL
    Réponses: 5
    Dernier message: 03/12/2009, 13h10
  2. Upload de fichier dans une base de données MySQL
    Par miko2009 dans le forum W4 Express
    Réponses: 1
    Dernier message: 07/01/2009, 19h16
  3. [PostgreSQL] [PostGreSQL] Upload de fichier dans une base de données
    Par ZIED dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 18/01/2008, 15h01
  4. [Conception] inertion d'un fichier dans une base de donne
    Par laminebarasow dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 19/07/2006, 23h13
  5. Interet de mettre des fichiers dans une base de donnée
    Par Oberown dans le forum Décisions SGBD
    Réponses: 7
    Dernier message: 04/07/2005, 11h35

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