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 :

Limites de la taille d'une taille possédant des BLOBs


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 7
    Par défaut Limites de la taille d'une taille possédant des BLOBs
    Bonjour,

    Je réalise actuellement l'intégration d'un progiciel qui stocke tous ses documents dans une seule table dans un champs de type image.
    La base de données est SQL Server 2005 SP2.
    Ma table va contenir d'ici 1 an au moins 2 To de documents et celà va aller en grandissant.
    Existe-t'il des limitations SQL Server pour stocker ce volume ? Quid des performances ?

    Merci

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    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 998
    Billets dans le blog
    6
    Par défaut
    Le mieux est de dédier un espace de stockage spécifique pour cela sur un axe physique particulier. Vous pouvez le faire pour cette table (CREATE TABLE (...) ON fileGroupX) ou bien encore pour les blob (CREATE TABLE (...) ON fileGroupX TEXTIMAGE ON FileGroupBlob)

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 7
    Par défaut
    Merci pour la réponse.

    Ne dois-je pas craindre de gros problèmes de performances si je stocke toutes mes données de type Image sur un axe physique de données ?

    De plus, si je ne me trompe pas, le BLOB est chargé directement dans la mémoire RAM de SQL Server. N'y a-t'il pas là un goulet d'étranglement ?

  4. #4
    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 : 44
    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
    Par défaut
    Bonjour,

    Ne dois-je pas craindre de gros problèmes de performances si je stocke toutes mes données de type Image sur un axe physique de données ?
    Si vous stockez cela sur un disque physique distinct des disques qui hébergent les autres fichiers de base de données, comme vous paralléliserez les lectures et écritures, peut-être pas ...

    De plus, si je ne me trompe pas, le BLOB est chargé directement dans la mémoire RAM de SQL Server. N'y a-t'il pas là un goulet d'étranglement ?
    Exact, tout comme n'importe quelle page que SQL Server doit lire.
    Cela peut conduire à un goulet d'étranglement puisque vous ne permettrez pas au cache de données et de procédures d'être "pérenne", surtout si votre serveur a une faible quantité de mémoire et que vos valeurs BLOB sont volumineuses.
    En effet vous forcerez les données déjà présentes dans le cache à en sortir pour charger votre BLOB depuis le disque, ce qui n'aura pas d'autre effet que de pourrir les performances de votre serveur.

    Une autre solution est de stocker le chemin physique de vos fichier directement dans la table, et de faire lire à votre application le chemin pour accéder au fichier ...

    @++

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juin 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 7
    Par défaut
    Bonjour et merci,

    Malheureusement, je n'ai pas la main sur la manière de stocker car je ne resterais pas standard au produit. Je ne peux donc pas spécifier le chemin et stocker les fichiers en dehors de la base.
    L'alternative possible serait de faire passer mes champs Image en VarBinary(max) : celà ne perturbe pas le progiciel. J'aurais le choix du stockage en BLOB ou en FileStream. J'attends, à ce propos, une validation de l'éditeur.

Discussions similaires

  1. [XL-2002] proteger une feuille possédant des macros
    Par nono2965 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 28/07/2010, 18h25
  2. Réponses: 5
    Dernier message: 16/09/2009, 16h22
  3. Fixer une taille minimale à une JFrame
    Par piotrr dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 02/04/2008, 15h48
  4. Limiter la taille d'une ou plusieurs bases de données
    Par Thierry8 dans le forum Administration
    Réponses: 7
    Dernier message: 12/03/2006, 23h51
  5. d'un tableau d'une taille d'une donnée membre
    Par picsou33 dans le forum C++
    Réponses: 8
    Dernier message: 27/02/2006, 23h18

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