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

Administration SQL Server Discussion :

SQL Server et formatage taille de bloc 64Ko [2008R2]


Sujet :

Administration SQL Server

  1. #1
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut SQL Server et formatage taille de bloc 64Ko
    Bonjour,

    J'ai lu d'ici et là, que les partitions systèmes NTFS destinées au stockage des fichiers data et log des base de données SQL Server (.mdf, ndf, ldf , ... ), y compris pour les fichiers des bases de données systèmes SQL Server notamment tempdb, doivent être formatées avec des blocs de 64Ko, et que SQL Server, fonctionnerait mieux avec des blocs de 64K (?).
    En effet, par défaut, et généralement, la taille des blocs des partitions NTFS est de 4Ko.
    Ils disent que cette recommandation (64Ko) s'applique uniquement aux disques contenant les fichiers de données et journaux de transactions, et qu'elle ne s'applique pas à la partition purement système destinée à Windows. Le lecteur C généralement réservé au système doit être séparé avec une taille de bloc de 4Ko.

    Voilà, je voudrais avoir votre avis sur sujet.
    Recommandez-vous, voire même appliquez-vous cette pratique consistant à définir des blocs de 64Ko pour les partitions systèmes destinées uniquement aux stockages des fichiers de données et journaux de transactions ?

    Merci pour vos conseils avisés.

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  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 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    Aujourd'hui cette préconisation de 64 Ko n'est plus très importante.... Pour C, encore moins !

    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
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Bonjour SQLPro et Merci pour ta réponse.
    Ceci dit, je n'ai pas bien compris les raisons exactes, ou plutôt ce que tu sous-entends par "Aujourd'hui"
    Est-ce que cela veut dire que cette préconisation était valable et pertinente à une époque lointaine, et que, aujourd'hui compte tenu de l'évolution de l'architecture interne du noyau SQL Server (?) c'est préco n'est plus d'actualité.
    Pour le disque C, tu as raison, généralement le disque C est réservé uniquement au système et il n'est pas opportun de changer la taille par défaut du bloc lors du formatage.

    Merci.

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  4. #4
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Pour Info.
    Je viens de trouver également cet article dans le présent site DVP
    David Barbarin, (s'il nous écoute ), dans son article, lien ci-dessous, fait aussi allusion à ce sujet et à ce précepte des blocs de 64Ko (?)

    Alignement de partitions pour amélioration des performances de MS-SQL Server
    http://mikedavem.developpez.com/sqls.../architecture/

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    et à l'époque Windows 2008 !

    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/ * * * * *

  6. #6
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    OK.
    Merci SQLPro pour cette réponse.
    Donc, à priori, ce serait une évolution du système Windows, qui rend cette préconisation (bloc 64K) sans intérêt majeur.

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  7. #7
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    Notamment, mais pas que....

    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/ * * * * *

  8. #8
    Membre expérimenté
    Homme Profil pro
    DBA SQL Server
    Inscrit en
    Octobre 2012
    Messages
    862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA SQL Server
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 862
    Points : 1 736
    Points
    1 736
    Par défaut
    Et c'est moins important sur le disque LOG si je ne me trompe pas?

    Je suis étonné car Christophe (Laporte) en a encore parlé à la préconf des SQL Saturday à Toulouse.
    Ce que nous avons fait pour nous-même meurt avec nous, ce que nous avons fait pour les autres et le monde est immortel. Albert Pike

    http://www.datacrossroad.be

  9. #9
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    Oui.

    Il faut de toutes façons une taille de formatage donc 64 privilégie les extents...

    A lire : https://blog.purestorage.com/what-is...io-block-size/

    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/ * * * * *

  10. #10
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Bonjour,

    Merci beaucoup SQLPro pour ces précisions complémentaires très intéressantes :

    Finalement, j'en conclus les points suivants :

    1 - L'impact de cette recommandation n'est pas très important contenu du fonctionnement interne I/O de SQL Server.
    Même en définissant, lors du formatage, une taille de boc à 64Ko, la taille des blocs I/O utilisée par SQL Server diffère, et ne sera pas constamment la même. La taille des blocs I/O utilisée par SQL Server dépend de la nature des opérations effectuées (Transaction log write, Check point/Lazywriter, Read-Ahead Scans , Bulk Loads, Backup / Restore, ColumnsStore Read-Ahead, File Initialization , In-Memory OLTP Chek point etc.. ) , tel que expliqué dans le lien que tu nous as indiqué ci-dessus.

    2 - On peut toutefois recommander cette pratique (64Ko), même si cela ne signifie pas que SQL Server utilisera toujours une taille de bloc I/O de 64Ko et qu'il choisira d'autres tailles de blocs (plus petites que 64KO voire plus grandes que 64Ko), et ce, en fonction de la nature des opérations à effectuer, comme cela a été brièvement expliqué au point 1 ci-dessus.
    64K permet néanmoins de privilégier les I/O sur les "Extents" (soit 8 pages contiguës), ce qui n'est pas complètement dénoué d'intérêt.

    Donc, sauf indication contraire, personnellement j'opterais et j'appliquerais désormais cette recommandation de formatage taille des blocs à 64Ko pour les partitions réservées aux fichiers de données ou journaux de transactions SQL Server.

    Merci,

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  11. #11
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    À une toute petite correction près, je suis entièrement d'accord...
    "...ce qui n'est pas complètement dénoué d'intérêt. "
    Enlève le haut !!!!

    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/ * * * * *

  12. #12
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Non ! Je n’enlèverais jamais le haut. Mon éducation stricte de Gentleman, respectueuse des autres ne me le permet pas.
    Et si d’aventure, je le ferais, nombre de femmes du présent forum seraient ébranlées, voire même excitées, et cela foutrait le bordel !

    Ma langue, enfin je voulais dire mon clavier, a fourché, et au lieu d’écrire « … dénuée d’intérêt » j’ai, par erreur, écrit « … dénouée d’intérêt ». Certains esprits mal placés ont peut-être entendu « … dénudée d’intérêt ».

    La prochaine fois, j’utiliserais le terme dépourvue et je dirais « … dépourvue d’intérêt ». Je prendrais ainsi beaucoup moins de risques.

    Enfin, nous pouvons dire que nous avons fini par dénouer cette affaire, en affirmant que cette recommandation (64Ko) n’est pas complètement dénuée d’intérêt.

    Merci SQLPro pour ton aide,

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  13. #13
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Citation Envoyé par hmira Voir le message
    Pour Info.
    Je viens de trouver également cet article dans le présent site DVP
    David Barbarin, (s'il nous écoute ), dans son article, lien ci-dessous, fait aussi allusion à ce sujet et à ce précepte des blocs de 64Ko (?)
    J'écoute

    La recommandation Microsoft est toujours d'actualité pour les dernières version de Windows (2008, 2012 et 2016) si l'on continue à utiliser NTFS.
    Depuis Windows 2012, il existe aussi un autre système de fichiers qui est ReFS avec visiblement une base NTFS et beaucoup d'améliorations. Néanmois je l'exclue de cette discussion car pas assez familier avec pour le moment. J'ajouterai juste mes commentaires aux points suivants (bien que la discussion soit clôturée):

    Citation Envoyé par hmira Voir le message
    1 - L'impact de cette recommandation n'est pas très important contenu du fonctionnement interne I/O de SQL Server.
    Même en définissant, lors du formatage, une taille de boc à 64Ko, la taille des blocs I/O utilisée par SQL Server diffère, et ne sera pas constamment la même.
    La taille de cluster (ou ALLOCATION_UNIT_SIZE) n'a pas de rapport direct avec les I/O effectués par une application (comme SQL Server= lorsqu'il s'agit de performance. La taille de cluster affecte uniquement la taille de la MFT qui permet de connaitre où blocs de fichiers se trouvent sur disque ainsi que la taille du bitmap qui surveille l'espace libre.

    Cependant on commence à voir la différence dans des situations où le FS est vraiment fragmenté ou lorsque l'applicatif procède à de nombreuses opérations d'ajout suppression d'espace (ce qui peut être le cas de SQL Server). Dans le 2ème cas, il faut mettre à jour les métadonnées dans la MFT et la taille de cluster peut faire la différence (Grosse taille de cluster = moins d'I/O pour la mise à jour).

    Je pense que la bonne pratique des 64KB vient de là. SQL Server travaille avec des extensions (64K) et aligner la taille de cluster peut avoir du sens ici. Mais cela n'empêchera pas SQL Server de faire des I/O variant de 8K à plus en fonction des opérations à effectuer . Les 2 ne sont pas directement corrélés.

    Pour finir en aparté, on voit que sur Linux il n'y a pas une telle recommandation car les FS fonctionnement différement (EXTx, XFS ...). D'ailleurs et sauf erreur de m part, seul XFS permet d'allouer une taille d'extension à 64K mais la gestion des pages au niveau Kernel est limité à 4KB pour le moment.

    Un exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    mkfs.xfs -f -b size=65536 /dev/sda1
    mkfs.xfs -f -b size=8192 /dev/sda1
    mount: mount /dev/sda1 on /u100 failed: Function not implemented
    ++

  14. #14
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Merci beaucoup David Barbarin (mikedavem) pour ces précisions complémentaires très détaillées et très intéressantes.
    Cela nous aide à mieux comprendre les mécanismes internes et les raisons exactes d'une telle recommandation.

    Encore une fois Merci,

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/07/2007, 11h59
  2. [SQL SERVER][ACCESS]Taille de la base de données.
    Par aityahia dans le forum Bases de données
    Réponses: 1
    Dernier message: 07/05/2007, 19h36
  3. [SQL SERVER 2000]taille et type des champs
    Par Franck2mars dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 09/05/2006, 11h59
  4. probleme de taille avec sql server 2000
    Par sergio122 dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 13/02/2006, 09h57
  5. [Sql server]Taille d'une requete
    Par kashue dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/04/2005, 16h05

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