web-dev-qa-db-fra.com

Plusieurs groupes de fichiers vs multiples fichiers dans un seul groupe de fichiers

D'après ce que j'ai lu en ligne, il semble que plusieurs groupes de fichiers n'offrent que deux avantages sur plusieurs fichiers dans un seul groupe de fichiers:

  1. La possibilité d'isoler une table spécifique à un lecteur spécifique - le seul moyen d'y accomplir est d'ajouter un nouveau groupe de fichiers avec un fichier sur le lecteur cible, puis déplacez le tableau.

  2. Les restaurations peuvent être accélérées en effectuant une restauration au coup par coup avec un groupe de fichiers en lecture seule.

Y a-t-il d'autres avantages que plusieurs groupes de fichiers auraient sur plusieurs fichiers dans un seul groupe de fichiers? Je suis le plus intéressé par les avantages de la performance, mais la bienvenue des idées.

5
CaptainSlock

Plusieurs fichiers dans un groupe de fichiers et plusieurs groupes de fichiers sont des outils permettant de gérer votre base de données. Le premier vous permet de gérer votre IO et les deux vous permettront de gérer vos sauvegardes.

Il est possible de sauvegarder un seul fichier d'une base de données ainsi qu'un seul groupe de fichiers. Assurez-vous de sauvegarder la queue du journal de transaction lorsque vous le faites si vous envisagez de le restaurer quelque part.

Les fichiers de base de données permettent à votre processeur multicœur d'avoir plusieurs flux de lecture/écriture à la base de données sans heurter des valeurs de mise en file d'attente de disque supérieure.

Cela peut aider à penser au groupe de fichiers en tant que division logique et le fichier en tant que division physique. Si vous avez plusieurs groupes de fichiers, vous aurez automatiquement plusieurs fichiers car un fichier ne peut appartenir qu'à un groupe de fichiers. Il peut également aider (si vous avez suffisamment de nœuds sur votre serveur) pour avoir plusieurs fichiers dans vos groupes de fichiers. Cela peut vous donner le meilleur des deux mondes. Vous attribuez des objets de base de données à un groupe de fichiers et non un fichier. Vous pouvez mettre les fichiers sur différents bancaires de disques physiques. Lorsque j'ai commencé à faire de la base de données, il s'agissait de connaissances courantes que vous mettez vos données et de vous connecter à des disques distincts. Si vous aviez le budget, vous mettriez vos indices non clusters sur un autre disque. Il est difficile d'obtenir cela ces jours-ci avec SAN Technologie partout. Cependant, SAN est un outil de gestion non un outil de performance.

Comme vous l'avez souligné que différents groupes de fichiers vous permettront d'isoler des tables de trafic élevés les unes des autres et des tables de trafic inférieures. Il vous permettra également une protection supplémentaire limitée d'une base de données corrompue éventuellement limitant la corruption des données à une partie inférieure des données.

4
Richard L. Dawson

Avec SQL 2016 Standard, vous pouvez profiter du partitionnement de table et de la commutation de partition qui utilise des groupes de fichiers. La commutation de partition peut rendre la gestion des données plus rapidement en fonction des circonstances et peut éventuellement augmenter les performances d'une requête si elle utilise la clé de partition et est correctement réglée.

... Toute une partition peut être commutée dans la table ou éteinte, permettant une chargement et une suppression extrêmement rapides de grandes quantités de données. Ceci est, à mon avis, le plus grand avantage de la partition.

Quant à la performance sur les partitions:

Les requêtes seront meilleures lorsque vous spécifiez la clé de partitionnement dans les critères (alias "la clause où"). Ainsi, bien que le partitionnement soit "transparent", pour les applications existantes, la mise au point de requêtes sera presque toujours requise.

Kendra sur la performance et la commutation.

Une note de côté est que vous voudriez scripter de vos restaurons. Imaginez essayer de faire une restauration avec 100 groupes de fichiers manuellement. Pas exactement un inconvénient, mais quelque chose que vous devriez être préparé à l'avance.

Brent ozar sur des groupes de fichiers.

1
Shaulinator