Wie kann ein Füllfaktor von 0 oder 100 gleich sein?

8

Nach meinem Verständnis bedeutet der Füllfaktor 80, dass 20 Prozent jeder Seite auf Blattebene leer sind, um zukünftiges Wachstum zu ermöglichen. Ich kann nicht korrelieren, wie der Füllfaktor von 0 und 100 gleich sein kann! Vermisse ich etwas

Subha
quelle

Antworten:

15

Es ist ein Legacy von SQL Server 2000

0 und 100 waren damals unterschiedlich

  • 100 bedeutete "alle Seiten einschließlich aller B-Tree-Indexstufen füllen"
  • 0 bedeutet "Lassen Sie etwas Platz auf höheren Ebenen im B-Tree-Index"

Seit SQL Server 2005 bedeuten beide "alle Seiten einschließlich aller B-Tree-Indexstufen füllen"

Zitate von BOL (Mein Fettdruck)

SQL Server 2000 :

Ein Füllfaktor von 0 bedeutet nicht, dass die Seiten zu 0 Prozent gefüllt sind. Es wird ähnlich wie ein Füllfaktorwert von 100 behandelt, indem SQL Server Clustered-Indizes mit vollständigen Datenseiten und nicht gruppierte Indizes mit vollständigen Blattseiten erstellt. Es unterscheidet sich von 100 darin, dass SQL Server etwas Platz in der oberen Ebene des Indexbaums lässt.

SQL Server 2005

Ein Füllfaktor von 0 oder 100 erstellt gruppierte Indizes mit vollständigen Datenseiten und nicht gruppierte Indizes mit vollständigen Blattseiten, lässt jedoch etwas Platz in der oberen Ebene des Indexbaums. Die Füllfaktorwerte 0 und 100 sind in jeder Hinsicht identisch .

Was ich nicht finden kann, ist etwas, das dies explizit in "Verhaltensänderungen" zeigt.

gbn
quelle
Meine letzte Suche ergab, dass es sich um einen "MYTHOS-Füllfaktor von 0 und 100 handelt, der niemals gleich ist" ...
Subha
@Subha kannst du einen Link teilen?
Aaron Bertrand
@ Subha: Meinst du das? sqlskills.com/blogs/paul/…
gbn
@ AaronBertrand: sqlskills.com/blogs/paul/…
Subha
@gbn: yup es ist ...
Subha