Mengapa faktor isi dalam SQL Server default ke 0 (100%)?

9

Saya memahami faktor isi, halaman, dan struktur indeks, dan karenanya saya memahami mengapa faktor pengisian 100% adalah praktik terbaik yang jarang terjadi. Jadi mengapa defaultnya adalah 0 (atau 100%) secara default? Kenapa tidak 90 atau 95?

Apakah ada sesuatu yang saya lewatkan?

NTDLS
sumber

Jawaban:

8

Hanya memberikan beberapa saran di sini tentang mengapa Microsoft melakukan ini:

  1. Mereka telah menetapkan standarnya untuk menjadi kinerja OLAP sebaik mungkin (lebih sedikit halaman dibaca dengan faktor isi 0/100)
  2. Mereka mengasumsikan bahwa INSERTdata ed kemungkinan besar berada di akhir tabel, membuat ruang tambahan per halaman tidak berguna
  3. Mereka mengasumsikan bahwa biasanya UPDATEdata d tidak akan terlalu sering memperpanjang data baris, menyebabkan pemisahan halaman

Ini hanya menebak-nebak di sini. Satu-satunya orang yang benar-benar dapat menjawab pertanyaan itu secara akurat adalah tim SQL Server sendiri.

Thomas Stringer
sumber
5
Benar, ini tampak seperti teori yang masuk akal, dan jauh lebih mungkin cocok untuk pelanggan biasa daripada memilih beberapa faktor pengisian yang sewenang-wenang di mana, dalam banyak kasus, Anda dijamin akan membuang-buang ruang secara permanen pada halaman.
Aaron Bertrand
Saya tidak percaya saya mendapat jawaban yang bisa saya setujui. Saya tidak berharap ada jawaban yang masuk akal tetapi poin # 2 dan # 3 Anda sangat masuk akal. Terima kasih!
NTDLS
@NTDLS tidak masalah, senang membantu.
Thomas Stringer