Struktur JET_SPACEHINTS
Berlaku untuk: Windows | Windows Server
Struktur JET_SPACEHINTS
Struktur JET_SPACEHINTS berisi informasi tentang pola alokasi ruang ketika pohon b tumbuh melalui pemisahan tambahan atau titik panas. Menambahkan pemisahan terjadi ketika rekaman ditambahkan ke akhir pemisahan pohon b dan titik panas terjadi ketika beberapa rekaman ditambahkan ke titik penyisipan virtual yang sama (misalnya, menambahkan 'Marie', 'Mark', 'Martin', 'Mary' ke tengah pohon b yang diurutkan menurut abjad).
Windows 7: Struktur JET_SPACEHINTS diperkenalkan di Windows 7.
typedef struct tagJET_SPACEHINTS {
unsigned long cbStruct;
unsigned long ulInitialDensity;
unsigned long cbInitial;
JET_GRBIT grbit;
unsigned long ulMaintDensity;
unsigned long ulGrowth;
unsigned long cbMinExtent;
unsigned long cbMaxExtent;
} JET_SPACEHINTS;
Anggota
cbStruct
Ukuran, dalam byte, dari struktur ini. Atur anggota ini ke sizeof( JET_SPACEHINTS ).
ulInitialDensity
Kepadatan pada tata letak (tambahkan).
cbInitial
Ukuran awal (dalam byte) objek yang sedang dibuat. Ini harus berupa kelipatan ukuran halaman database.
grbit
Sekelompok bit yang berisi opsi yang akan digunakan untuk struktur ini, yang mencakup nol atau lebih dari berikut ini.
Nilai |
Makna |
---|---|
JET_bitSpaceHintsUtilizeParentSpace |
Mengubah kebijakan alokasi internal untuk mendapatkan ruang secara heirarkis dari induk langsung pohon b. |
JET_bitCreateHintAppendSequential |
Memungkinkan penambahan perilaku pemisahan untuk tumbuh sesuai dengan dinamika pertumbuhan tabel (ditetapkan oleh cbMinExtent, ulGrowth, cbMaxExtent). |
JET_bitCreateHintHotpointSequential |
Memungkinkan perilaku pemisahan titik panas tumbuh sesuai dengan dinamika pertumbuhan tabel (diatur oleh cbMinExtent, ulGrowth, cbMaxExtent). |
JET_bitRetrieveHintTableScanForward |
Jika diatur, klien menunjukkan bahwa pemindaian berurutan maju adalah pola penggunaan yang dominan dari tabel ini. |
JET_bitRetrieveHintTableScanBackward |
Jika diatur, klien menunjukkan bahwa pemindaian berurutan mundur adalah pola penggunaan yang dominan dari tabel ini. |
JET_bitDeleteHintTableSequential |
Jika diatur, aplikasi mengharapkan tabel ini dibersihkan secara berurutan, dari kunci terendah hingga kunci tertinggi. |
ulMaintDensity
kepadatan ke mulMaintDensity
Kepadatan untuk dipertahankan. Jika petunjuk spasi menentukan JET_bitRetrieveHintTableScanForward atau JET_bitRetrieveHintTableScanBackward, defragmentasi tabel akan dipicu saat ruang yang digunakan dalam tabel turun di bawah ambang batas ini. Defragmentasi tabel dapat dinonaktifkan dengan mengatur anggota ini ke nol. Mengatur anggota ini ke 100 akan menyebabkan defragmentasi tabel berjalan segera setelah halaman dikosongkan.
ulGrowth
Persentase pertumbuhan dari pertumbuhan terakhir atau ukuran awal, dibulatkan ke ukuran alokasi JET asli terdekat.
cbMinExtent terlalu kecil
Ini mengambil alih ulGrowth jika terlalu kecil.
cbMaxExtent
Nilai maksimum untuk pertumbuhan byte. Ini menutupi ulGrowth.
Ketika pohon b tumbuh melalui penambalan atau titik panas terbagi (dibandingkan dengan penyisipan rekaman acak), jumlah ruang yang akan ditumbuhkan tabel dihitung sebagai berikut:
Saat penciptaan, kami memberikan b-tree cbInitial, selalu.
Selama alokasi pertama area tertentu, kami akan mengalokasikan: cbInitial * ulGrowth / 100 (dibulatkan ke ukuran halaman DB), atau cbMinExtent jika lebih besar.
Selama alokasi berikutnya, cbLastAlloc * ulGrowth / 100 (dibulatkan ke ukuran halaman DB), atau cbMinExtent jika lebih besar.
Pada beberapa alokasi (yang bisa menjadi alokasi pertama), ukuran yang dihitung akan melebihi cbMaxExtent, dan itu akan menjadi ukuran pertumbuhan setelahnya.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien |
Memerlukan Windows Vista, Windows XP, atau Windows 2000 Professional. |
Server |
Memerlukan Windows Server 2008, Windows Server 2003, atau Windows 2000 Server. |
Header |
Dinyatakan dalam Esent.h. |