struktur VDS_HINTS2 (vds.h)
[Dimulai dengan Windows 8 dan Windows Server 2012, antarmuka COM Layanan Disk Virtual digantikan oleh API Manajemen Penyimpanan Windows.]
Berisi petunjuk automagic untuk LUN di kumpulan penyimpanan.
Sintaks
typedef struct _VDS_HINTS2 {
ULONGLONG ullHintMask;
ULONGLONG ullExpectedMaximumSize;
ULONG ulOptimalReadSize;
ULONG ulOptimalReadAlignment;
ULONG ulOptimalWriteSize;
ULONG ulOptimalWriteAlignment;
ULONG ulMaximumDriveCount;
ULONG ulStripeSize;
ULONG ulReserved1;
ULONG ulReserved2;
ULONG ulReserved3;
BOOL bFastCrashRecoveryRequired;
BOOL bMostlyReads;
BOOL bOptimizeForSequentialReads;
BOOL bOptimizeForSequentialWrites;
BOOL bRemapEnabled;
BOOL bReadBackVerifyEnabled;
BOOL bWriteThroughCachingEnabled;
BOOL bHardwareChecksumEnabled;
BOOL bIsYankable;
BOOL bAllocateHotSpare;
BOOL bUseMirroredCache;
BOOL bReadCachingEnabled;
BOOL bWriteCachingEnabled;
BOOL bMediaScanEnabled;
BOOL bConsistencyCheckEnabled;
VDS_STORAGE_BUS_TYPE BusType;
BOOL bReserved1;
BOOL bReserved2;
BOOL bReserved3;
SHORT sRebuildPriority;
} VDS_HINTS2, *PVDS_HINTS2;
Anggota
ullHintMask
Masker petunjuk LUN. Masing-masing anggota BOOL struktur ini memiliki bendera petunjuk yang sesuai yang dapat diatur dalam masker. Jika bendera petunjuk diatur, petunjuk yang sesuai akan dipertimbangkan. Jika bendera petunjuk tidak diatur, petunjuk akan diabaikan. Bendera petunjuk dijelaskan dalam tabel berikut.
Nilai | Makna |
---|---|
|
Penyedia membatasi waktu yang diperlukan untuk pemulihan. Untuk mendukung pemulihan cepat, penyedia menggunakan log perubahan yang memungkinkan penyedia memulihkan LUN tanpa membandingkan seluruh konten LUN. |
|
Penyedia mengoptimalkan LUN untuk pola penggunaan baca-sebagian besar, biasanya dengan menggunakan pencerminan daripada striping paritas. |
|
Penyedia mengoptimalkan LUN untuk pola penggunaan baca berurutan. Jika bendera ini tidak diatur dan VDS_HINT_OPTIMIZEFORSEQUENTIALWRITES juga tidak diatur, LUN dioptimalkan untuk I/O acak. |
|
Penyedia mengoptimalkan LUN untuk pola penggunaan tulis berurutan. Jika bendera ini tidak diatur dan VDS_HINT_OPTIMIZEFORSEQUENTIALREADS juga tidak diatur, LUN dioptimalkan untuk I/O acak. |
|
Penyedia memverifikasi penulisan ke LUN dengan menggunakan readback. |
|
Pemetaan LUN sejauh mana ekstensi drive dibuat dan diperbarui secara otomatis oleh penyedia. Jika bendera ini tidak diatur, pemetaan tetap diperbaiki setelah konfigurasi, kecuali ketika tindakan proaktif diambil untuk menghindari kegagalan drive. |
|
Penyedia mengaktifkan kebijakan penembolokan write-through pada LUN. |
|
Penyedia mengaktifkan checksum perangkat keras pada LUN. |
|
Penyedia mengonfigurasi LUN sehingga drive yang berkontribusi padanya dapat dihapus secara fisik dengan gangguan sistem minimal. Hal ini biasanya dicapai dengan memastikan bahwa LUN menempati drive sesekali. |
|
Penyedia mengalokasikan cadangan panas untuk LUN. Untuk informasi selengkapnya, lihat Hot Sparing, VDS_DRIVE_FLAG, dan VDS_DISK_FLAG. |
|
Penyedia menggunakan jenis bus yang ditentukan pada LUN. Untuk informasi selengkapnya, lihat VDS_STORAGE_BUS_TYPE. |
|
Penyedia menggunakan cache cermin pada LUN. Lihat nilai VDS_SF_SUPPORTS_MIRRORED_CACHE enumerasi VDS_SUB_SYSTEM_FLAG . |
|
Penyedia memungkinkan penembolokan baca pada LUN. Lihat nilai VDS_LF_READ_CACHE_ENABLEDenumerasi VDS_LUN_FLAG dan nilai VDS_SF_READ_CACHING_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG . |
|
Penyedia memungkinkan penembolokan tulis pada LUN. Lihat nilai VDS_LF_WRITE_CACHE_ENABLED enumerasi VDS_LUN_FLAG dan nilai VDS_SF_WRITE_CACHING_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG . |
|
Penyedia memungkinkan pemindaian media pada LUN. Lihat nilai VDS_LF_MEDIA_SCAN_ENABLED enumerasi VDS_LUN_FLAG dan nilai VDS_SF_MEDIA_SCAN_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG . |
|
Penyedia memungkinkan pemeriksaan konsistensi pada LUN. Lihat nilai VDS_LF_CONSISTENCY_CHECK_ENABLED enumerasi VDS_LUN_FLAG dan nilai VDS_SF_CONSISTENCY_CHECK_CAPABLE enumerasi VDS_SUB_SYSTEM_FLAG . |
ullExpectedMaximumSize
Ukuran maksimum di mana LUN diperkirakan akan tumbuh, dalam byte. Nilai dapat sama dengan, lebih besar dari, atau kurang dari nilai yang ditentukan dalam parameter ullSizeInBytes ketika metode IVdsHwProviderStoragePools::CreateLunInStoragePool dipanggil. Beberapa penyedia menggunakan nilai ini untuk mencadangkan ruang untuk LUN. Penyedia yang tidak dapat mencadangkan ruang biasanya mengabaikan parameter ini.
ulOptimalReadSize
Ukuran baca optimal untuk LUN, dalam byte. Nol menunjukkan tidak ada ukuran baca yang optimal.
ulOptimalReadAlignment
Penyelarasan baca optimal sehubungan dengan blok logis pertama LUN. Nol menunjukkan tidak ada perataan baca yang optimal.
ulOptimalWriteSize
Ukuran tulis optimal untuk LUN, dalam byte. Nol menunjukkan tidak ada ukuran tulis yang optimal.
ulOptimalWriteAlignment
Keselarasan tulis optimal sehubungan dengan blok logis pertama LUN. Nol menunjukkan tidak ada perataan tulis yang optimal.
ulMaximumDriveCount
Jumlah maksimum drive untuk berkontribusi pada LUN. Nol menunjukkan tidak ada jumlah drive maksimum. Nilai ini dapat digunakan untuk membatasi jumlah interleave stripe dalam set stripe.
ulStripeSize
Ukuran interleave garis cermin atau paritas, dalam byte. Nol membuat ukuran garis tidak ditentukan.
ulReserved1
Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.
ulReserved2
Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.
ulReserved3
Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.
bFastCrashRecoveryRequired
Jika anggota ini TRUE, waktu pemulihan terbatas. Atur bendera VDS_HINT_FASTCRASHRECOVERYREQUIRED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bMostlyReads
Untuk mengoptimalkan pola penggunaan yang sebagian besar dibaca (misalnya, melalui pencerminan daripada striping paritas), atur anggota ini ke TRUE. Jika tidak, atur ke FALSE. Atur bendera VDS_HINT_MOSTLYREADS di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bOptimizeForSequentialReads
Untuk mengoptimalkan pola penggunaan baca berurutan, atur anggota ini ke TRUE. Jika tidak, atur ke FALSE. Mengatur anggota bOptimizeForSequentialReads dan bOptimizeForSequentialWrites keduanya ke FALSE mengoptimalkan untuk I/O acak. Atur bendera VDS_HINT_OPTIMIZEFORSEQUENTIALREADS di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bOptimizeForSequentialWrites
Untuk mengoptimalkan pola penggunaan tulis berurutan, atur anggota ini ke TRUE. Jika tidak, atur ke FALSE. Mengatur anggota bOptimizeForSequentialReads dan bOptimizeForSequentialWrites keduanya ke FALSE mengoptimalkan untuk I/O acak. Atur bendera VDS_HINT_OPTIMIZEFORSEQUENTIALWRITES di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bRemapEnabled
Jika anggota ini TRUE, penyedia memetakan kembali jangkauan LUN untuk mendorong jangkauan secara otomatis. Jika FALSE, pemetaan LUN sejauh mana ekstensi drive tetap diperbaiki setelah konfigurasi LUN kecuali sejauh mana secara eksplisit dipetakan ulang untuk menghindari blok yang rusak. Atur bendera VDS_HINT_REMAPENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bReadBackVerifyEnabled
Jika anggota ini TRUE, penyedia memverifikasi penulisan ke LUN dengan readback. Jika FALSE, penyedia tidak memverifikasi penulisan. Atur bendera VDS_HINT_READBACKVERIFYENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bWriteThroughCachingEnabled
Jika anggota ini TRUE, penyedia mengaktifkan penembolokan write-through pada LUN; jika FALSE, penyedia tidak mengaktifkan penembolokan write-through. Atur bendera VDS_HINT_WRITETHROUGHCACHINGENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bHardwareChecksumEnabled
Jika anggota ini TRUE, penyedia mengaktifkan checksum pada LUN. Atur bendera VDS_HINT_HARDWARECHECKSUMENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bIsYankable
Jika anggota ini TRUE, drive yang berkontribusi pada LUN dapat dihapus secara fisik tanpa gangguan yang signifikan pada sistem (ini biasanya benar ketika LUN terdiri dari hanya beberapa drive). Jika FALSE, LUN tidak dapat dihapus tanpa gangguan signifikan pada sistem. Atur bendera VDS_HINT_ISYANKABLE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bAllocateHotSpare
TRUE jika klien ingin mengalokasikan hot spare drive untuk LUN ini, atau FALSE sebaliknya. Atur bendera VDS_HINT_ALLOCATEHOTSPARE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bUseMirroredCache
TRUE jika klien ingin LUN ini menggunakan cache cermin, atau FALSE sebaliknya. Atur bendera VDS_HINT_USEMIRROREDCACHE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bReadCachingEnabled
TRUE jika klien ingin LUN menggunakan penembolokan baca, atau FALSE sebaliknya. Atur bendera VDS_HINT_READCACHINGENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bWriteCachingEnabled
TRUE jika klien ingin LUN menggunakan penembolokan tulis, atau FALSE sebaliknya. Atur bendera VDS_HINT_WRITECACHINGENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bMediaScanEnabled
TRUE jika klien ingin mengaktifkan pemindaian media untuk LUN ini, atau FALSE jika tidak. Atur bendera VDS_HINT_MEDIASCANENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bConsistencyCheckEnabled
TRUE jika klien ingin mengaktifkan pemeriksaan konsistensi untuk LUN ini, atau FALSE jika tidak. Atur bendera VDS_HINT_CONSISTENCYCHECKENABLED di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
BusType
Nilai enumerasi VDS_STORAGE_BUS_TYPE yang menentukan jenis bus untuk LUN. Atur bendera VDS_HINT_BUSTYPE di anggota ullHintMask untuk menunjukkan minat pada anggota ini.
bReserved1
Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.
bReserved2
Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.
bReserved3
Anggota ini dicadangkan untuk digunakan di masa mendatang. Jangan gunakan.
sRebuildPriority
Prioritas pembangunan kembali untuk LUN. Nilai dapat berkisar dari 0 (prioritas terendah) hingga 15 (prioritas tertinggi).
Keterangan
Metode IVdsHwProviderStoragePools::CreateLunInStoragePool melewati struktur ini sebagai parameter untuk memberikan petunjuk untuk membuat LUN di kumpulan penyimpanan. Ini diteruskan sebagai parameter dalam metode IVdsLun2::ApplyHints2 untuk menerapkan serangkaian petunjuk baru ke LUN. Selanjutnya, dikembalikan oleh metode IVdsLun2::QueryHints2 untuk melaporkan petunjuk yang saat ini diterapkan ke pleks LUN atau LUN.
Petunjuk bukan arahan untuk pelaksana. Meskipun pelaksana secara umum diharapkan untuk melakukan yang terbaik untuk mempertimbangkan petunjuk, mereka tidak berkewajiban untuk mengikutinya. Pelaksana dapat memilih alternatif ketika tidak dapat mengikuti petunjuk tertentu karena alasan teknis atau ketika mengikutinya dapat mengakibatkan konfigurasi yang buruk.
Persyaratan
Klien minimum yang didukung | Windows 7 [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 R2 [hanya aplikasi desktop] |
Header | vds.h |