Bir disk alt sisteminde SQL Server etkinliğinin benzetimini yapmak için SQLIOSim yardımcı programını kullanın

Özgün ürün sürümü: SQL Server
Özgün KB numarası: 231619

Summary

SQLIOSim aracı, Microsoft SQL Server G/Ç desenlerinin benzetimini yaparak disk alt sistemlerinde güvenilirlik ve bütünlük stres testleri çalıştırır. Bu testler okuma, yazma, denetim noktası, yedekleme, sıralama ve ileri okuma etkinliklerini içerir. yeni donanıma SQL Server dağıtmadan önce G/Ç alt sisteminizi doğrulamak için SQLIOSim kullanın. Araç, SQL Server altyapısından bağımsız olarak çalışır ve SQL Server çalıştırılmasını gerektirmez.

SQLIOSim'e giriş

SQLIOSim, olası G/Ç sorunlarını tanımlamaya yardımcı olmak için bir SQL Server sisteminin okuma ve yazma desenlerinin (sayfa okuma, denetim noktası, yedekleme, sıralama, ileri okuma) benzetimini oluşturur. G/Ç benzetim testlerinin birincil amacı, SQL Server kullanmaya başlamadan önce temel G/Ç alt sisteminin güvenilirliğini doğrulamaktır. SQL Server G/Ç temelleri hakkında daha fazla bilgi için bkz. SQL Server G/Ç temelleri.

SQLIOSim, SQL Server ile etkileşim kurmaz ve SQL Server çalıştırılmasını gerektirmez. Çoğu durumda, iki uygulama arasındaki G/Ç aktarım hızı rekabetini önlemek için SQL Server çalışmadığında SQLIOSim'i çalıştırın.

Uyarı

SQLIOSim testinizde gerçek SQL Server veritabanı dosyalarını işaret etmeyin veya kullanmayın çünkü araç dosyaların üzerine yazmak için rastgele test desenleri kullanır.

SQLIOSim, veri güvenliğini veya bütünlüğünü garanti etmez. Araç, sistem ortamının temel testini sağlar ve olası veri bütünlüğü sorunlarını ortaya çıkarabilir.

Günlük ve veri depolama hakkında daha fazla bilgi için bkz . SQL Server'da veri güvenilirliğini genişleten günlük ve veri depolama algoritmalarının açıklaması.

Performans karşılaştırmalarını çalıştırmanız ve G/Ç aktarım hızı kapasitesini belirlemeniz gerekiyorsa bunun yerine Diskspd aracını kullanın.

Tip

Üretim dağıtımı öncesinde her yeni depolama yapılandırmasında SQLIOSim'i çalıştırın. Bu test, önbellek katmanları olsa bile sistemin yazma sırası ve bellek boşaltma kurallarına uygun çalışmasını sağlar. Bu katmanlar denetleyici önbelleği, üretici yazılımı arabelleği ve SAN iyileştirmelerini içerir.

SQLIOSim konumu

SQLIOSim daha önce ayrı bir indirme paketi olarak kullanılabilirdi. Microsoft SQL Server 2008'den itibaren SQLIOSim, SQL Server ürün yüklemesine dahil edilir. SQL Server yüklediğinizde SQLIOSim aracını SQL Server yüklemenizin Binn klasöründe bulursunuz. Disk alt sistemindeki G/Ç etkinliğinin benzetimini yapmak için aracın bu güncelleştirilmiş sürümünü kullanın.

SQLIOSim paketi üç dosya içerir. Binn klasörü, SQLIOSim.com ve SQLIOSim.exeadlı iki yürütülebilir dosya içerir. Her iki yürütülebilir dosya da aynı G/Ç benzetimi özellikleri sağlar.

  • SQLIOSim.com bir komut satırı aracıdır. Komut satırı parametrelerini, yapılandırma dosyasını veya her iki yöntemin birleşimini kullanarak kullanıcı etkileşimi olmadan çalışacak şekilde yapılandırabilirsiniz.
  • SQLIOSim.exe komut satırı parametresi kabul etmeyen grafik (GUI) bir uygulamadır. Ancak SQLIOSim.exe yapılandırma dosyalarından varsayılan yapılandırma verilerini yükler.
  • SQLIOSim kullanarak G/Ç benzetimini otomatikleştirmeye yardımcı olması için yapılandırma dosyalarını kullanın. Daha fazla bilgi için SQLIOSim yapılandırma dosyası bölümüne bakın.

SQLIOSim'i SQL Server olmayan bir bilgisayarda kullanma

SQL Server yüklemeden önce bilgisayarda genişletilmiş bir test için SQLIOSim'i çalıştırın. Verileri ve günlük dosyalarını yerleştirmeyi planladığınız G/Ç alt sistemini test etmek ve güvenilirliğini doğrulamak için kullanın. Bunu yapmak için, SQLIOSim dosyalarını SQL Server yüklü olduğu bir bilgisayardan kopyalayın ve SQL Server yüklemeden önce testleri çalıştırın. Önceden yapılandırılmış ayarları kullanmayı planlıyorsanız, SQLIOSim.com, SQLIOSim.exe ve isteğe bağlı olarak bir veya daha fazla yapılandırma dosyasını kopyalayın. Ardından bu bilgisayarda test simülasyonunu çalıştırın.

SQLIOSim'i kullanma

SQLIOSim'i çalıştırırken çalıştırmak için SQL Server hizmetine ihtiyacınız yoktur. Aslında, uygulamalar G/Ç kaynakları için rekabete sahip olabileceğinden SQLIOSim çalışırken SQL Server çalıştırmayın.

Uyarı

Gerçek SQL Server verilerinizi kaybetmemek için, test için gerçek SQL Server veritabanı dosyalarını belirtmeyin. SQLIOSim aracı, rastgele test desenlerini kullanarak veri üzerine yazar.

Aşağıdaki örneklerde, GUI ve komut satırını kullanarak SQLIOSim'in nasıl çalıştırılacakları gösterilmektedir.

Örnek 1: GUI kullanma

  1. C:\Program Files\Microsoft SQL Server\MSSQLXX'e gidin.<InstanceName>\MSSQL\Binn.

  2. SQLIOSIM.EXE uygulamasını başlatın.

  3. Yapılandırma gereksinimlerinize uyacak şekilde değiştirebileceğiniz varsayılan ayarlar için Dosyalar ve Yapılandırma penceresine bakın.

    Dosya yapılandırmasını gösteren ekran görüntüsü.

  4. Listedeki ilk mdx dosyasını seçin: C:\temp\sqliosim\sqliosim.mdx. Bu dosya, bir veri dosyasının eşdeğeridir.

  5. Dosya konumu, boyutu, maksimum boyut veya artış gibi dosya ayarlarını değiştirin. Bir veri dosyasının benzetimini yapmak istediğiniz için Günlük Dosyası seçeneğinin temiz olmasını sağlayın. Ardından Uygula'yı seçin.

    Veri dosyası yapılandırmasını gösteren ekran görüntüsü.

    Örnek, dosyanın konumunun D:\temp\sqliosim\sqliosim.mdx olarak değiştirildiğini, boyutunun 2048 MB, maksimum boyutunun 4096 MB ve artım boyutunun 64 MB olarak ayarlandığını gösterir.

  6. ldx soneki olan ikinci dosyayı değiştirin. Bu dosya, işlem günlüğü dosyasının eşdeğerini temsil eder. Günlük Dosyası seçeneğinin seçili kaldığından emin olun. bitirdikten sonra Uygula'yı seçin.

    Günlük dosyası yapılandırmasının ekran görüntüsü.

  7. Sekmeli kılavuzun içindeki ekranın ortasındaki Yeni Dosya seçeneğini belirleyerek listeye daha fazla dosya ekleyin. Dosya konumunu yazın ve kalan seçenekleri ayarlayın. bitirdikten sonra Uygula'yı seçin. İşte bir örnek.

    Yeni bir test dosyası ekleme ekran görüntüsü.

  8. Yapılandırmanızdan memnun olduğunuzda Tamam'ı seçin.

  9. SQL G/Ç benzetimini çalıştırmak için Simülatör>Başlat'ı seçin. Alternatif olarak , F12'yi veya yeşil daire içeren en soldaki düğmeyi seçin.

    Çalışan bir SQLIOSim'i gösteren ekran görüntüsü.

  10. Benzetim işleminin tamamlanmasını bekleyin ve çıkışı inceleyin.

Örnek 2: Komut satırı aracı ve yapılandırma dosyası kullanma

  1. sqliosim.default.cfg.ini dosyasını düzenleyin. File1 ve File2 bölümleri için açıklamaları kaldırın ve FileName değerlerini yeni SQLIOSim dosyalarıyla değiştirin. Örneğin:

    [File1]
    FileName=D:\sqliosim\sqliosim.mdx
    InitialSize=100
    MaxSize=200
    Increment=10
    Shrinkable=TRUE
    LogFile=FALSE
    Sparse=FALSE
    
    [File2]
    FileName=L:\sqliosim\sqliosim.ldx
    InitialSize=50
    MaxSize=50
    Increment=0
    Shrinkable=FALSE
    LogFile=TRUE
    Sparse=FALSE
    
  2. yapılandırma dosyasını kullanarak SQLIOSIM.COM çalıştırın C:\temp\sqliosimconfig\sqliosim.default.cfg.ini:

    SQLIOSIM.COM -cfg C:\temp\sqliosimconfig\sqliosim.default.cfg.ini -log C:\temp\sqliosimconfig\sqliosim.log.xml
    

Örnek 3: Anahtarlarla komut satırı aracı kullanma

Anahtarı kullanarak -dir birden çok disk birimini aynı anda test edebilirsiniz. Aşağıdaki örnek 500 MB dosya oluşturur ve testi 300 saniye (beş dakika) boyunca çalıştırır:

SQLIOSIM.COM -cfg C:\temp\sqliosimconfig\sqliosim.default.cfg.ini -log C:\temp\sqliosim\sqliosim.log.xml -dir "D:\sqliosim" -dir "F:\sqliosim\testfolder" -size 500 -d 300

Örnek 4: Birden çok sürücüde komut satırı aracı kullanma

Aşağıdaki örnek 32 GB dosya oluşturur ve sqliosim.hwcache.cfg.ini yapılandırma dosyasını kullanarak testi 600 saniye (10 dakika) boyunca çalıştırır:

SQLIOSIM.COM -cfg "D:\Temp\SQLIOSIM\SQLIOSIM_Configs\sqliosim.hwcache.cfg.ini" -d 600 -dir D:\temp\sqliosim -log D:\temp\sqliosim\simlog.xml -size 32768

SQLIOSim komut satırı parametreleri

SQLIOSIM.COM, temel davranışı denetlemek için sınırlı sayıda komut satırı parametresi kabul eder. SQLIOSim aracının yapılandırma dosyası gelişmiş davranış denetimi sağlar. Komut satırı parametreleri ve yapılandırma dosyası seçenekleri çakışıyorsa, komut satırı parametreleri önceliklidir.

Parametre Açıklama
-cfg dosya Sqliosim.cfg.inivarsayılan yapılandırma dosyasını geçersiz kılın. SQLIOSim aracı, dosyayı bulamazsa bir hata oluşturur.
-save dosya Sonuçta elde edilen yapılandırmayı yapılandırma dosyasına kaydedin. İlk yapılandırma dosyasını oluşturmak için bu seçeneği kullanın.
-log dosya Hata günlüğü dosyası adını ve hata günlüğü dosya yolunu belirtin. Varsayılan dosya adı Sqliosim.log.xml.
-dir Dir Veri (.mdf) dosyasını ve günlük (.ldf) dosyasını oluşturmak için konumu ayarlayın. Bu komutu birden çok kez çalıştırabilirsiniz. Çoğu durumda, bu konum bir sürücü kökü veya birim bağlama noktasıdır. Bu konum uzun bir yol veya UNC yolu olabilir.
-d Saniye Ana çalıştırma süresini ayarlayın. Bu değer, hazırlık aşamasını ve doğrulama aşamasını dışlar.
-size MB Veri dosyasının ilk boyutunu megabayt (MB) olarak ayarlayın. Dosya, başlangıç boyutunun iki katına kadar büyüyebilir. Günlük dosyasının boyutu, veri dosyasının yarısı kadar olarak hesaplanır. Ancak günlük dosyası 50 MB'tan büyük olamaz.

SQLIOSim yapılandırma dosyası

G/Ç benzetiminin tüm ayarlarını önden seçmenize yardımcı olması için SQLIOSim ile birlikte bir yapılandırma dosyası kullanın. Bu yapılandırma dosyası SQLIOSim yürütmelerini otomatikleştirebilirsiniz.

SQL Server destek ekibinin GitHub deposundan çeşitli testler için örnek yapılandırma dosyalarını indirebilirsiniz.

Yapılandırma dosyası kullanmanız gerekmez. Yapılandırma dosyası kullanmıyorsanız, veri dosyası konumu ve günlük dosyası konumu dışındaki tüm parametreler varsayılan değerleri alır. Veri dosyası konumunu ve günlük dosyası konumunu belirtmek için aşağıdaki yöntemlerden birini kullanmanız gerekir:

  • SQLIOSIM.COM dosyasındaki komut satırı parametrelerini kullanın.
  • SQLIOSim.exe dosyasını çalıştırdıktan sonra Dosyalar ve Yapılandırma iletişim kutusunu kullanın.
  • Yapılandırma dosyasının Dosya<N> bölümünü kullanın.

Örnek yapılandırma dosyaları

Otomatik SQLIOSim çalıştırmaları için bu beş örnek yapılandırma dosyasını kullanın.

Örnek dosya Açıklama Varsayılan yapılandırma dosyasından farklı parametreler
sqliosim.default.cfg.ini
sqliosim.hwcache.cfg.ini - Okumaları en aza indirir

- Dosyaları tamamen bellekte tutmak için küçük tutar

- Sıralı verileri okumaz
AuditUser bölümü ve ReadAheadUser bölümü için:

CacheHitRatio=10000
UserCount=0
sqliosim.nothrottle.cfg.ini - G/Ç kısıtlamasını kaldırır

- G/Ç hacmini artırmak için bekleme süresini en aza indirir
TargetIODuration=1000000
AuditDelay=10
RADelay=10
sqliosim.seqwrites.cfg.ini - Okumaları en aza indirir

- Dosyaları tamamen bellekte tutmak için küçük tutar

- Dosyaları küçültülemez hale getirir

- Sıralı okuma işlemi gerçekleştirilmez

- Rastgele erişim yok

- Gecikme olmadan büyük öbeklerde toplu güncelleştirme
Shrinkable=FALSE

AuditUser, ReadAheadUser ve RandomUser bölümleri için:

CacheHitRatio=10000
ForceReadAhead=FALSE
BuffersBUMin=600
BuffersBUMax=1000
BUDelay=1
UserCount=0
sqliosim.sparse.cfg.ini - Yalnızca 32 MB bellek kullanır

- Hedef G/Ç süresini, çok sayıda bekleyen G/Ç isteğini karşılayacak kadar büyük hale getirir.

- Her 8 KB sayfa için ayrı G/Ç istekleri göndermek için dağılım/toplama API'lerini devre dışı bırakır

- 1 GB daraltılamaz bir dosya oluşturur

- Dosyada 1 GB küçültülemez ikincil seyrek veri akışı oluşturur
MaxMemoryMB=32
TestCycles=3
TestCycleDuration=600
TargetIODuration=10000
UseScatterGather=FALSE

[File1]
FileName=sqliosim.mdx
InitialSize=1000 MaxSize=1000
Increment=10
Shrinkable=FALSE
LogFile=FALSE
Sparse=FALSE

[File2]
FileName=sqliosim.ldx
InitialSize=50
MaxSize=50
Increment=0
Shrinkable=FALSE
LogFile=TRUE
Sparse=FALSE

[File3]
FileName=sqliosim.mdx:replica
InitialSize=1000
MaxSize=1000
Increment=10
Shrinkable=FALSE
LogFile=FALSE
Sparse=TRUE

Parametre değerleriyle ilgili uyarılar

  • Parametrenin adı parametrenin bir oran veya yüzde olduğunu gösteriyorsa, parametrenin değeri yüzde veya oranın 0,01'e bölünmesi olarak ifade edilir. Örneğin, parametresinin CacheHitRatio değeri şeklindedir 10 percent. 10, 0,01'e bölündüğünde 1000 eşit olduğundan bu değer 1000 olarak ifade edilir. Yüzde parametresinin en büyük değeri: 10000.
  • Parametre türü sayısalsa ve parametresine sayısal olmayan bir değer atarsanız, SQLIOSim aracı parametresini olarak 0ayarlar.
  • Parametre türü boolean ise, parametreye atayabileceğiniz geçerli değerler true ve false'dir. Ayrıca, değerler büyük/küçük harfe duyarlıdır. SQLIOSim aracı geçersiz değerleri yoksayar.
  • Bir parametre çifti en düşük değeri ve en yüksek değeri gösteriyorsa, en düşük değer maksimum değeri aşmamalıdır. Örneğin, MinIOChainLength parametresinin değeri, MaxIOChainLength parametresinin değerinden büyük olmamalıdır.
  • Parametresi bir dizi sayfayı gösteriyorsa, SQLIOSim aracı parametreye atadığınız değeri SQLIOSim aracının işlediği dosyayla karşılaştırarak denetler. SQLIOSim aracı, sayfa sayısının dosya boyutunu aşmadığından emin olmak için bu denetimi gerçekleştirir.

Yapılandırma dosyası bölümleri

Yapılandırma dosyası birkaç bölüm içerir:

Her yapılandırma bölümü aşağıdaki bölümde açıklanmıştır.

CONFIG bölümü

SQLIOSim aracı, genel test davranışı oluşturmak için SQLIOSim yapılandırma dosyasının CONFIG bölümünde belirttiğiniz değerleri kullanır.

Parametre Varsayılan değer Açıklama Açıklamalar
ErrorFile sqliosim.log.xml XML türü günlük dosyasının adı
CPUCount Bilgisayardaki CPU sayısı Oluşturulacak mantıksal CPU sayısı Maksimum cpu sayısı 64'dür.
Affinity 0 Mantıksal CPU'lara uygulanacak fiziksel CPU benzenşimi maskesi Affinitesi maskesi etkin CPU maskesi içinde olmalıdır. değeri 0 , kullanılabilir tüm CPU'ların kullanıldığı anlamına gelir.
MaxMemoryMB SQLIOSim aracı başlatıldığında kullanılabilir fiziksel bellek Mb cinsinden arabellek havuzunun boyutu Değer, bilgisayardaki toplam fiziksel bellek miktarını aşamaz.
StopOnError true İlk hata oluştuğunda simülasyonu durdurur
TestCycles 1 Gerçekleştirilecek tam test döngülerinin sayısı değeri 0 , sonsuz sayıda test döngüsünü gösterir.
TestCycleDuration 300 Döngünün sonundaki denetim geçişi hariç olmak üzere bir test döngüsünün saniye cinsinden süresi
CacheHitRatio 1000 SQLIOSim aracı diskten okurken önbellek isabet oranının simülasyonunu oluşturma
MaxOutstandingIO 0 Genel işlem kapsamında izin verilen maksimum tamamlanmamış G/Ç operasyonu sayısı Değer 140.000'i aşamaz. değeri 0 , yaklaşık 140.000 G/Ç işlemine izin verildiğini gösterir. ** Bu, aracın kapasitesinin sınırıdır.
TargetIODuration 100 Sınırlama tarafından hedeflenen G/Ç işlemlerinin milisaniye cinsinden süresi Ortalama G/Ç süresi hedef G/Ç süresini aşarsa, SQLIOSim aracı yükü azaltmak ve G/Ç tamamlanma süresini iyileştirmek için bekleyen G/Ç işlemlerinin sayısını kısıtlar.
AllowIOBursts doğru Çok sayıda G/Ç isteği gönderebilmek için sınırlamayı kapatmaya izin ver Girdi/Çıktı patlamaları, ilk güncelleştirme, ilk denetim noktası ve test döngülerinin sonundaki son denetim noktası geçişleri sırasında etkinleştirilir. MaxOutstandingIO parametresi yine de kabul edilir. Uzun G/Ç uyarıları bekleyebilirsiniz.
NoBuffering doğru FILE_FLAG_NO_BUFFERING seçeneğini kullanın SQL Server, FILE_FLAG_NO_BUFFERING == true kullanarak veritabanı dosyalarını açar. Analysis Services gibi bazı yardımcı programlar ve hizmetler kullanır FILE_FLAG_NO_BUFFERING == false. Bir sunucuyu tam olarak test etmek için her ayar için bir test çalıştırın.
WriteThrough true FILE_FLAG_WRITE_THROUGH seçeneğini kullanın SQL Server, FILE_FLAG_WRITE_THROUGH == true kullanarak veritabanı dosyalarını açar. Ancak, bazı araçlar ve hizmetler FILE_FLAG_WRITE_THROUGH == false kullanarak veritabanı dosyalarını açar. Örneğin, SQL Server Analysis Services kullanarak FILE_FLAG_WRITE_THROUGH == falseveritabanı dosyalarını açar. Bir sunucuyu tam olarak test etmek için her ayar için bir test çalıştırın.
ScatterGather doğru ReadScatter veya WriteGather API'leri kullanın Bu parametreyi true olarak ayarlarsanız, NoBuffering parametresi de true olarak ayarlanır.

SQL Server çoğu G/Ç isteği için dağılım/toplama G/Ç'leri kullanır.
ForceReadAhead doğru Veriler zaten okunmuş olsa bile önceden okuma işlemi gerçekleştirin. Veri sayfası zaten arabellek havuzunda olsa bile SQLIOSim aracı okuma komutunu gönderir.

Microsoft SQL Server Desteği, G/Ç sorunlarını ortaya çıkarmak için doğru ayarı başarıyla kullandı.
DeleteFilesAtStartup doğru Başlangıçta dosyalar varsa dosyaları sil Bir dosya birden çok veri akışı içerebilir. Yalnızca File <N> FileName girişinde belirtilen akışlar dosyada kısaltılır. Varsayılan akış belirtilirse, tüm akışlar silinir.
DeleteFilesAtShutdown yanlış Test tamamlandıktan sonra dosyaları silme Bir dosya birden çok veri akışı içerebilir. Dosyada yalnızca File <N> FileName girişinde belirttiğiniz veri akışları kesilir. Varsayılan veri akışı belirtilirse, SQLIOSim aracı tüm veri akışlarını siler.
StampFiles yanlış Sıfırları damgalayarak dosyayı genişletme Dosya büyükse bu işlem uzun sürebilir. Bu parametreyi false olarak ayarlarsanız, SQLIOSim aracı geçerli bir veri işaretçisi ayarlayarak dosyayı genişletir.

SQL Server 2005, veri dosyaları için anlık dosya başlatma özelliğini kullanır. Veri dosyası bir günlük dosyasıysa veya anlık dosya başlatma etkinleştirilmediyse, SQL Server sıfır damgalama gerçekleştirir. SQL Server 2000'den önceki SQL Server sürümleri her zaman sıfır damgalama gerçekleştirir.

Hem anlık dosya başlatmanın hem de sıfır damgalamanın StampFiles doğru çalıştığından emin olmak için test sırasında parametresinin değerini değiştirmelisiniz.

Dosya<N> bölümü

SQLIOSim aracı, birden çok dosya testine izin verecek şekilde tasarlanmıştır. File<N> bölümü, testteki her dosya için olarak [File1][File2] temsil edilir.

Parametre Varsayılan değer Açıklama Açıklamalar
FileName Varsayılan değer yok Dosya adı ve yol FileName parametresi uzun bir yol veya UNC yolu olabilir. Ayrıca ikincil bir akış adı ve türü de içerebilir. Örneğin, FileName parametresi olarak file.mdf:stream2ayarlanabilir.

NOT SQL Server 2005'te DBCC işlemleri akışları kullanır. Akış testleri önerilir.
InitialSize Varsayılan değer yok İlk boyut (MB) Mevcut dosya parametresi için InitialSize belirtilen değerden büyükse, SQLIOSim aracı var olan dosyayı küçültmez. Varolan dosya daha küçükse, SQLIOSim aracı var olan dosyayı genişletir.
MaxSize Varsayılan değer yok MB cinsinden en büyük boyut Bir dosya, parametre için MaxSize belirttiğiniz değerden daha büyük olamaz.
Increment 0 Dosyanın büyüme veya küçülme miktarının MB cinsinden boyutu. Daha fazla bilgi için bu makalenin ShrinkUser bölümüne bakın. SQLIOSim aracı başlangıçta parametresini Increment ayarlayarak durumun belirlenmesini sağlar: Increment * MaxExtents < MaxMemoryMB / NumberOfDataFiles.
değeri Increment ise 0, SQLIOSim aracı dosyayı daraltılamaz olarak ayarlar.
Shrinkable yanlış Dosyanın küçültülebilir mi yoksa genişletilebilir mi olduğunu gösterir parametresini Increment0olarak ayarlarsanız, dosyayı daraltılamaz olarak ayarlarsınız. Bu durumda parametresini Shrinkable olarak falseayarlamanız gerekir. parametresini Increment dışında 0bir değere ayarlarsanız, dosyayı küçültülebilir olarak ayarlarsınız. Bu durumda parametresini Shrinkable olarak trueayarlamanız gerekir.
Sparse yanlış Özniteliğin Sparse dosyalarda ayarlanıp ayarlanmayacağını gösterir Mevcut dosyalar için, Sparse özniteliği SQLIOSim aracı parametreyi Sparse false olarak ayarladığınızda temizlemez.

SQL Server 2005, anlık görüntü veritabanlarını ve ikincil DBCC akışlarını desteklemek için seyrek dosyalar kullanır.

Hem seyrek dosyayı hem de akışları etkinleştirin ve ardından bir test geçişi gerçekleştirin.

NOT: Dosya ayarları için Sparse = true ayarlarsanız, config bölümünde NoBuffering = false belirtmeyin. Bu iki çakışan bileşimi kullanırsanız, araçtan aşağıdakine benzer bir hata iletisi alabilirsiniz:

Hata:-=====Hata: 0x80070467
Hata Metni: Sabit diske erişilirken, yeniden deneme sonrasında bile bir disk işlemi başarısız oldu.
Açıklama: C:\SQLIOSim.mdx Sayfasında arabellek doğrulaması başarısız oldu: 28097
LogFile yanlış Dosyanın kullanıcı veya işlem günlüğü verileri içerip içermediğini gösterir En az bir günlük dosyası tanımlayın.

RandomUser bölümü

SQLIOSim aracı, Çevrimiçi İşlem İşleme (OLTP) G/Ç desenleri gibi rastgele sorgu işlemleri gerçekleştiren bir SQL Server çalışanının benzetimini yapmak için RandomUser bölümünde belirttiğiniz değerleri kullanır.

Parametre Varsayılan değer Açıklama Açıklamalar
UserCount -1 Aynı anda yürütülen rastgele erişim iş parçacıklarının sayısı Değer şu değeri aşamaz: CPUCount*1023-100.
Tüm kullanıcıların toplam sayısı da bu değeri aşamaz. Sıfır (0) değeri, rastgele erişim kullanıcıları oluşturamamanızı sağlar. -1 değeri, değerin otomatik yapılandırmasını kullanmanız gerektiği anlamına gelir: min(CPUCount*2, 8).
NOTE SQL Server sisteminde binlerce oturum olabilir. Oturumların çoğunda etkin istekler yoktur. count(*) işlevini bu test parametresi değerini belirlemek için bir temel olarak sys.dm_exec_requests dinamik yönetim görünümüne (DMV) karşı yapılan sorgularda kullanın.

CPUCount burada, CONFIG bölümündeki CPUCount parametresinin değerine atıfta bulunur.

min(CPUCount*2, 8) değeri, CPUCount*2 ve 8 değerleri arasında küçük olan sonucu verir.
JumpToNewRegionPercentage 500 Dosyanın yeni bir bölgesine atlama şansı Bölgenin başlangıcı rastgele seçilir. Bölgenin boyutu, MinIOChainLength parametresinin değeri ile MaxIOChainLength parametresinin değeri arasında rastgele bir değerdir.
MinIOChainLength 1 Sayfalarda en küçük bölge boyutu
MaxIOChainLength 100 Sayfalardaki en büyük bölge boyutu SQL Server 2005 Enterprise Sürümü ve SQL Server 2000 Enterprise Sürümü 1.024 sayfaya kadar okuyabilir.

En düşük değer şeklindedir 0. En yüksek değer sistem belleğiyle sınırlıdır.

Genellikle rastgele kullanıcı etkinliği küçük tarama işlemlerinin gerçekleşmesine neden olur. Daha büyük tarama işlemlerinin benzetimini ReadAheadUser yapmak için bölümünde belirtilen değerleri kullanın.
RandomUserReadWriteRatio 9000 Güncelleştirilecek sayfaların yüzdesi Bölgede rastgele uzunluklu bir zincir seçilir ve okunabilir. Bu parametre, güncelleştirilecek ve diske yazılacak sayfaların yüzdesini tanımlar.
MinLogPerBuffer 64 Asgari günlük kayıt boyutu bayt cinsinden Değer, disk üzerindeki sektör boyutunun katı olmalı veya disk üzerindeki sektör boyutuna eşit şekilde uyan bir boyut olmalıdır.
MaxLogPerBuffer 8192 Bayt cinsinden en fazla günlük kayıt boyutu Bu değer 64.000'i aşamaz. Değer, disk üzerindeki kesim boyutunun katı olmalıdır.
RollbackChance 100 Geri alma işleminin gerçekleşmesine neden olan bellek içi bir işlemin oluşma olasılığı. Bu geri alma işlemi gerçekleştiğinde, SQL Server günlük dosyasına yazmaz.
SleepAfter 5 Her döngüden sonra milisaniye cinsinden uyku süresi

AuditUser bölümü

SQLIOSim aracı, sayfa hakkındaki bilgileri okumak ve denetlemek amacıyla DBCC etkinliğini simüle etmek için AuditUser bölümünde belirttiğiniz değerleri kullanır. Parametre değeri `UserCount0` olarak ayarlansa bile doğrulama gerçekleşir.

Parametre Varsayılan değer Açıklama Açıklamalar
UserCount 2 Denetim işlemlerinin sayısı Değer şu değeri aşamaz: CPUCount*1023-100.
Tüm kullanıcıların toplam sayısı da bu değeri aşamaz. değeri 0 , rastgele erişim kullanıcıları oluşturamamanızı sağlar. -1 değeri, değerin otomatik yapılandırmasını kullanmanız gerektiği anlamına gelir: min(CPUCount*2, 8).
NOTE Bir SQL Server sistemi binlerce oturum olabileceği anlamına gelir. Oturumların çoğunda etkin istekler yoktur. DMV ile sorgularda bu test parametre değerini oluşturmak için count(*) işlevini temel olarak kullanın.

CPUCount burada, CONFIG bölümündeki CPUCount parametresinin değerine atıfta bulunur.

değeri min(CPUCount*2, 8) ile CPUCount*2arasındaki 8 değerlerin küçük bir kısmını üretir.
BuffersValidated 64
DelayAfterCycles 2 "AuditDelay parametresini, BuffersValidated döngülerinin sayısı tamamlandıktan sonra uygulayın"
AuditDelay 200 Her DelayAfterCycles işlemden sonra beklenen milisaniye sayısı

ReadAheadUser Kullanıcı Bölümü

SQLIOSim aracı, ReadAheadUser bölümünde belirtilen değerleri alarak SQL Server ileri okuma etkinliğinin simülasyonunu oluşturur. SQL Server, zaman uyumsuz G/Ç özelliklerini en üst düzeye çıkarmak ve sorgu gecikmelerini sınırlamak için önceden okuma etkinliğinden yararlanır.

Parametre Varsayılan değer Açıklama Açıklamalar
UserCount 2 Önceden okunan iş parçacıklarının sayısı Değer şu değeri aşamaz: CPUCount*1023-100.
Tüm kullanıcıların toplam sayısı da bu değeri aşamaz. değeri 0 , rastgele erişim kullanıcıları oluşturamamanızı sağlar. -1 değeri, aşağıdaki değerin otomatik yapılandırmasını kullanmanız gerektiği anlamına gelir: min(CPUCount*2, 8).
NOT Bir SQL Server sisteminde binlerce oturum olabilir. Oturumların çoğunda etkin istekler yoktur. count(*) işlevini DMV'ye karşı sorgularda bir temel olarak kullanarak bu test parametre değeri oluşturun.

CPUCount burada, CONFIG bölümündeki CPUCount parametresinin değerine atıfta bulunur.

min(CPUCount*2, 8) değeri, CPUCount*2 ve 8 değerleri arasında küçük olan sonucu verir.
BuffersRAMin 32 Döngü başına okunacak en az sayfa sayısı En düşük değer şeklindedir 0. En yüksek değer sistem belleğiyle sınırlıdır.
BuffersRAMax 64 Döngü başına okunacak sayfa sayısı üst sınırı SQL Server Enterprise sürümleri tek bir istekte en fazla 1.024 sayfa okuyabilir. çok fazla CPU, bellek ve disk kaynağı olan bir bilgisayara SQL Server yüklerseniz, dosya boyutunu ve okuma boyutunu artırın.
DelayAfterCycles 2 RADelay Belirtilen döngü sayısı tamamlandıktan sonra parametresini uygulayın
RADelay 200 Her DelayAfterCycles işlemden sonra beklenen milisaniye sayısı

BulkUpdateUser bölümü

SQLIOSim aracı, BulkUpdateUser ve SELECT...INTO işlemleri gibi toplu işlemlerin benzetimini yapmak için BULK INSERT bölümünde belirttiğiniz değerleri alır.

Parametre Varsayılan değer Açıklama Açıklamalar
UserCount -1 İş parçacığı sayısı BULK UPDATE Değer aşağıdaki değeri aşamaz: CPUCount*1023-100
Bir -1 değeri, aşağıdaki değerin otomatik yapılandırmasını kullanmanız gerektiği anlamına gelir: min(CPUCount*2, 8).
NOT Bir SQL Server sisteminde binlerce oturum olabilir. Oturumların çoğunda etkin istekler yoktur. count(*) işlevini, bu test parametresi değerini oluşturmak için bir temel olarak DMV'ye karşı sys.dm_exec_requests sorgularında kullanın.

CPUCount burada, CONFIG bölümündeki CPUCount parametresinin değerine atıfta bulunur.

min(CPUCount*2, 8) değeri, CPUCount*2 ve 8 arasındaki değerlerin en küçüğüdür.
BuffersBUMin 64 Döngü başına güncelleştirilecek en az sayfa sayısı
BuffersBUMax 128 Döngü başına güncelleştirilecek en fazla sayfa sayısı En düşük değer şeklindedir 0. En yüksek değer sistem belleğiyle sınırlıdır.
DelayAfterCycles 2 BUDelay Belirtilen döngü sayısı tamamlandıktan sonra parametresini uygulayın
BUDelay 10 Her DelayAfterCycles işlemden sonra beklenen milisaniye sayısı

ShrinkUser bölümü

SQLIOSim aracı, DBCC küçültme işlemlerini simüle etmek için bölümünde belirttiğiniz ShrinkUser değerleri alır. SQLIOSim aracı ShrinkUser bölümünü dosyayı büyütmek için de kullanabilir.

Parametre Varsayılan değer Açıklama
MinShrinkInterval 120 Saniye cinsinden küçültme işlemleri arasındaki en düşük aralık
MaxShrinkInterval 600 Saniye cinsinden küçültme işlemleri arasındaki maksimum aralık
MinExtends 1 SQLIOSim aracının dosyayı büyütmesi veya küçültmesi için en az artış sayısı
MaxExtends 20 SQLIOSim aracının dosyayı büyüttüğü veya küçülttüğü maksimum artış sayısı

Yapılandırma .ini dosya açıklamaları

Yapılandırma .ini dosyasındaki bir satırın başındaki noktalı virgül karakteri (;) , satırın tek bir açıklama olarak ele alınmasına neden olur.

Dosya oluşturma

SQLIOSim aracı, SQL Server'ın veri ve günlük dosyalarında oluşturduğu G/Ç desenlerini simüle etmek için ayrı veri ve günlük dosyaları oluşturur. SQLIOSim aracı stres etkinliği gerçekleştirmek için SQL Server altyapısını kullanmaz. Bu nedenle, SQL Server yüklemeden önce bir bilgisayarı test etmek için SQLIOSim aracını kullanabilirsiniz.

SQLIOSim aracını çalıştırdığınızda, SQL Server veritabanı dosyalarınız için kullandığınız dosya konumunu belirttiğinizden emin olun. Bunu yaptığınızda, araç SQL Server veritabanınızın kullandığı G/Ç yolunun benzetimini yapar.

Mevcut test dosyaları için sıkıştırma veya şifreleme özniteliklerini etkinleştirebilirsiniz. Bu öznitelikleri, test dosyalarının oluşturulduğu mevcut dizin için de etkinleştirebilirsiniz. Bu öznitelikleri etkinleştirmek için ilgili seçenekler, bir dosyanın veya dizinin Özellikler iletişim kutusunda bulunur.

Varsayılan olarak, SQLIOSim aracı .mdx ve .ldx dosya adı uzantılarına sahip test dosyaları oluşturur. Bu nedenle, bu dosyalar mevcut verilerin ve günlük dosyalarının üzerine yazmaz.

Uyarı

Gerçek SQL Server verilerinizi kaybetmemek için, test için gerçek SQL Server veritabanı dosyalarını belirtmeyin. SQLIOSim aracı, rastgele test desenlerini kullanarak veri üzerine yazar.

SQLIOSim hata günlüğü ve işleme

SQLIOSim aracı aşağıdaki konumlardan birinde hata günlüğü dosyasını oluşturur:

  • Günlük başlatma parametresinde belirttiğiniz konum
  • Belirttiğiniz konum, ErrorFile= satırında, Sqliosim.cfg.ini dosyasında yer almaktadır.

SQLIOSim.log.xml hata günlüğü yürütmeyle ilgili ayrıntıları içerir. Bu ayrıntılar hata bilgilerini içerir. Hata bilgileri ve uyarı bilgileri için günlüğü dikkatle gözden geçirin.

Not

SQLIOSim aracında bir hatayla karşılaşırsanız, donanım üreticinizden sorunun kök nedenini belirlemeye yardımcı olmasını isteyin. Sorunun nedeni cihaz sürücüsü, dosya sistemi filtre sürücüsü (örneğin, virüsten koruma yazılımı) veya işletim sistemi olabilir.

Birden çok kopya

SQLIOSim aracı, birden çok dosya düzeyinde testi ve birden çok kullanıcı düzeyinde testi destekler. SQLIOSim aracı birden çok çağrı gerektirmez. Aşağıdaki koşullar doğruysa SQLIOSim aracının birden çok kopyasını çalıştırabilirsiniz:

  • Tüm kopyalar, aracın her örneği için benzersiz test dosyalarına başvurur.
  • MaxMemoryMB Her örneğin parametresi, her örnek için yeterli olan çakışmayan bir bellek bölgesi sağlar.

Her örnek için parametrenin MaxMemoryMB toplamı, toplam fiziksel belleğe eşit veya daha küçük olmalıdır. Denetim noktası benzetimi gibi bazı test aşamaları bellek yoğunluklu olabilir ve birden çok kopya çalıştırdığınızda yetersiz bellek koşulları oluşturabilir. Bellek yetersizliği hatalarıyla karşılaşırsanız, çalışmakta olan araç kopyalarının sayısını azaltın.