Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Исходная версия продукта: SQL Server
Исходный номер базы знаний: 231619
Summary
Средство SQLIOSim выполняет стресс-тесты надежности и целостности на дисковых подсистемах, имитируя шаблоны ввода-вывода Microsoft SQL Server. Эти тесты включают действия чтения, записи, контрольной точки, резервного копирования, сортировки и предварительного чтения. Используйте SQLIOSim для проверки подсистемы ввода-вывода перед развертыванием SQL Server на новом оборудовании. Инструмент работает независимо от движка SQL Server и не требует запуска SQL Server.
Общие сведения о SQLIOSim
SQLIOSim имитирует шаблоны чтения и записи (чтение страниц, контрольная точка, резервное копирование, сортировка, чтение с упреждением) в системе SQL Server, чтобы выявить потенциальные проблемы ввода/вывода. Основной целью тестов моделирования ввода-вывода является проверка надежности базовой подсистемы ввода-вывода перед началом использования SQL Server. Дополнительные сведения о принципах ввода-вывода SQL Server см. в разделе SQL Server основы ввода-вывода.
SQLIOSim не взаимодействует с SQL Server и не требует, чтобы SQL Server был запущен. В большинстве случаев запустите SQLIOSim, если SQL Server не работает, чтобы избежать конкуренции за пропускную способность ввода-вывода между двумя приложениями.
Предупреждение
Не указывайте или не используйте фактические файлы базы данных SQL Server в тесте SQLIOSim, так как средство использует случайные шаблоны тестов для перезаписи файлов.
SQLIOSim не гарантирует безопасность данных или целостность данных. Инструмент обеспечивает базовое тестирование системной среды и может выявить потенциальные проблемы с целостностью данных.
Дополнительные сведения о ведении журнала и хранилище данных см. в описании алгоритмов ведения журнала и хранилища данных, которые расширяют надежность данных в SQL Server.
Если необходимо выполнить тесты производительности и определить пропускную способность ввода-вывода, используйте вместо этого средство Diskspd .
Tip
Запустите SQLIOSim в каждой новой конфигурации хранилища перед развертыванием рабочей среды. Это тестирование помогает убедиться, что система учитывает семантику порядка записи и сброса, даже если присутствуют уровни кэширования. К таким уровням относятся кэш контроллера, буферизация встроенного ПО и оптимизация SAN.
Расположение SQLIOSim
SQLIOSim ранее был доступен в виде отдельного пакета загрузки. Начиная с версии Microsoft SQL Server 2008, SQLIOSim включен в инсталляцию продукта SQL Server. При установке SQL Server вы найдете средство SQLIOSim в папке Binn установки SQL Server. Используйте обновленную версию средства для имитации действий ввода-вывода в подсистеме диска.
Пакет SQLIOSim включает три файла. Папка Binn содержит два исполняемых файла, SQLIOSim.com и SQLIOSim.exe. Оба исполняемых файла предоставляют идентичные возможности моделирования операций ввода-вывода.
- SQLIOSim.com — это средство командной строки. Его можно настроить для запуска без взаимодействия с пользователем с помощью параметров командной строки, файла конфигурации или сочетания обоих методов.
- SQLIOSim.exe — это графическое приложение ,которое не принимает параметры командной строки. Однако SQLIOSim.exe загружает данные конфигурации по умолчанию из файлов конфигурации.
- Используйте файлы конфигурации для автоматизации моделирования ввода-вывода с помощью SQLIOSim. Дополнительные сведения см. в разделе файла конфигурации SQLIOSim.
Использование SQLIOSim на компьютере без SQL Server
Запустите SQLIOSim для расширенного теста на компьютере перед установкой SQL Server. Используйте его для проверки подсистемы ввода-вывода, в которой планируется разместить файлы данных и журналов и проверить ее надежность. Для этого скопируйте файлы SQLIOSim с компьютера, на котором установлен SQL Server, и запустите тесты перед установкой SQL Server. Скопируйте SQLIOSim.com, SQLIOSim.exe и при необходимости один или несколько файлов конфигурации, если планируется использовать предварительно настроенные параметры. Затем запустите тестовое моделирование на этом компьютере.
Руководство по использованию SQLIOSim
При запуске SQLIOSim не требуется служба SQL Server. На самом деле, не запускайте SQL Server во время выполнения SQLIOSim, так как приложения могут конкурировать за ресурсы ввода-вывода.
Предупреждение
Чтобы избежать потери фактических данных SQL Server, не указывайте фактические файлы базы данных SQL Server для тестирования. Средство SQLIOSim перезаписывает данные с помощью шаблонов случайных тестов.
В следующих примерах показано, как запустить SQLIOSim с помощью графического интерфейса и командной строки.
Пример 1. Использование графического интерфейса
Перейдите в раздел C:\Program Files\Microsoft SQL Server\MSSQLXX.<InstanceName>\MSSQL\Binn.
Запустите приложение SQLIOSIM.EXE.
Просмотрите окно "Файлы и конфигурация " для параметров по умолчанию, которые можно изменить в соответствии с потребностями конфигурации.
Выберите первый файл mdx в списке C:\temp\sqliosim\sqliosim.mdx. Этот файл эквивалентен файлу данных.
Измените параметры файла, например расположение файлов, размер, максимальный размер или увеличение. Оставьте флажок "Файл журнала ", так как вы хотите имитировать файл данных. Затем нажмите кнопку "Применить".
В примере показано, что расположение файла изменено на D:\temp\sqliosim\sqliosim.mdx, его размер равен 2048 МБ, его максимальный размер равен 4096 МБ, а его размер добавочного значения равен 64 МБ.
Измените второй файл, тот, который имеет суффикс ldx . Этот файл представляет эквивалент файла журнала транзакций. Убедитесь, что параметр "Файл журнала " остается выбранным. После завершения нажмите кнопку "Применить".
Добавьте дополнительные файлы в список, выбрав параметр "Создать файл " в центре экрана в табличной сетке. Введите расположение файла и задайте остальные параметры. После завершения нажмите кнопку "Применить". Приведем пример.
Когда вы удовлетворены конфигурацией, нажмите кнопку "ОК".
Чтобы запустить имитацию ввода-вывода SQL, выберите "Запуск симулятора>". Кроме того, нажмите клавишу F12 или левую кнопку, содержащую зеленый круг.
Дождитесь завершения моделирования, а затем изучите выходные данные.
Пример 2. Использование средства командной строки и файла конфигурации
Измените файлsqliosim.default.cfg.ini . Удалите комментарии для разделов
File1иFile2, а значенияFileNameизмените на новые файлы SQLIOSim. Например:[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Запустите SQLIOSIM.COM с помощью файла конфигурации C:\temp\sqliosimconfig\sqliosim.default.cfg.ini:
SQLIOSIM.COM -cfg C:\temp\sqliosimconfig\sqliosim.default.cfg.ini -log C:\temp\sqliosimconfig\sqliosim.log.xml
Пример 3. Использование средства командной строки с коммутаторами
Одновременно можно протестировать несколько томов дисков с помощью коммутатора -dir . В следующем примере создается 500 МБ-файлов и выполняется тест в течение 300 секунд (пять минут):
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
Пример 4. Использование средства командной строки для нескольких дисков
В следующем примере создается 32 ГБ-файлы и выполняется тест в течение 600 секунд (10 минут) с помощью файла конфигурации sqliosim.hwcache.cfg.ini :
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.com
SQLIOSIM.COM принимает ограниченное количество параметров командной строки для управления базовым поведением. Файл конфигурации для средства SQLIOSim предоставляет расширенный элемент управления поведением. Если параметры командной строки и параметры файла конфигурации перекрываются, параметры командной строки имеют приоритет.
| Параметр | Описание |
|---|---|
-cfg
файл |
Переопределите файл конфигурации по умолчанию Sqliosim.cfg.ini. Средство SQLIOSim создает ошибку, если не удается найти файл. |
-save
файл |
Сохраните полученную конфигурацию в файле конфигурации. Используйте этот параметр, чтобы создать исходный файл конфигурации. |
-log
файл |
Укажите имя файла журнала ошибок и путь к файлу журнала ошибок. Имя файла по умолчанию — Sqliosim.log.xml. |
-dir
Dir |
Задайте расположение для создания файла данных (.mdf) и файла журнала (LDF). Эту команду можно выполнять несколько раз. В большинстве случаев это место является корнем диска или точкой монтирования тома. Это расположение может представлять собой длинный путь или UNC-путь. |
-d
секунд |
Задайте длительность основного запуска. Это значение исключает этап подготовки и этап проверки. |
-size
МБ |
Задайте начальный размер файла данных в мегабайтах (МБ). Файл может увеличиться до двух раз, чем начальный размер. Размер файла журнала вычисляется как половина размера файла данных. Однако размер файла журнала не может превышать 50 МБ. |
Файл конфигурации SQLIOSim
Используйте файл конфигурации вместе с SQLIOSim, чтобы выбрать все параметры для имитации ввода-вывода заранее. Этот файл конфигурации позволяет автоматизировать выполнение SQLIOSim.
Вы можете скачать примеры файлов конфигурации для различных тестов из SQL Server службы поддержки GitHub репозитория.
Вам не нужно использовать файл конфигурации. Если вы не используете файл конфигурации, все параметры принимают значения по умолчанию, кроме расположения файла данных и расположения файла журнала. Чтобы указать расположение файла данных и расположение файла журнала, необходимо использовать один из следующих методов:
- Используйте параметры командной строки в файле SQLIOSIM.COM .
- Используйте диалоговое окно "Файлы и конфигурация" после запуска файла SQLIOSim.exe .
- Используйте раздел "Файл<N>" файла конфигурации.
Примеры файлов конфигурации
Используйте эти пять примеров файлов конфигурации для автоматических запусков SQLIOSim.
| Образец файла | Описание | Параметры, отличающиеся от файла конфигурации по умолчанию |
|---|---|---|
| sqliosim.default.cfg.ini | ||
| sqliosim.hwcache.cfg.ini | минимизация операций чтения — сохраняет файлы небольшими, чтобы сохранить их полностью в памяти - Нет последовательных операций чтения |
Для раздела AuditUser и раздела ReadAheadUser:CacheHitRatio=10000UserCount=0 |
| sqliosim.nothrottle.cfg.ini | — удаляет регулирование ввода-вывода — свести к минимуму время ожидания увеличения объема ввода-вывода |
TargetIODuration=1000000AuditDelay=10RADelay=10 |
| sqliosim.seqwrites.cfg.ini | — минимизация операций чтения — сохраняет файлы небольшими, чтобы сохранить их полностью в памяти — делает файлы не сжимаемыми - Нет последовательных операций чтения - Нет случайного доступа — массовое обновление в больших блоках без задержек |
Shrinkable=FALSEДля разделов AuditUser, ReadAheadUser и RandomUser: CacheHitRatio=10000ForceReadAhead=FALSEBuffersBUMin=600BuffersBUMax=1000BUDelay=1UserCount=0 |
| sqliosim.sparse.cfg.ini | — использует только 32 МБ памяти — делает целевую длительность операций ввода-вывода достаточно большой, чтобы обработать множество ожидающих запросов ввода-вывода — отключает интерфейсы API scatter/gather для выдачи отдельных запросов ввода-вывода для каждой 8-килобайтовой страницы. — создает не сжимаемый файл размером 1 ГБ. — создает второй разреженный поток в файле размера 1 ГБ, который невозможно уменьшить. |
MaxMemoryMB=32TestCycles=3TestCycleDuration=600TargetIODuration=10000UseScatterGather=FALSE[File1]FileName=sqliosim.mdxInitialSize=1000 MaxSize=1000Increment=10Shrinkable=FALSELogFile=FALSESparse=FALSE[File2]FileName=sqliosim.ldxInitialSize=50MaxSize=50Increment=0Shrinkable=FALSELogFile=TRUESparse=FALSE[File3]FileName=sqliosim.mdx:replicaInitialSize=1000MaxSize=1000Increment=10Shrinkable=FALSELogFile=FALSESparse=TRUE |
Предостережения по значениям параметров
- Если имя параметра указывает, что параметр является соотношением или процентом, значение параметра выражается как процент или соотношение, разделенное на 0,01. Например, значение
CacheHitRatioпараметра равно10 percent. Это значение выражается как1000, потому что 10 разделенное на 0,01 равно1000. Максимальное значение процентного параметра равно10000. - Если тип параметра является числовым, и вы назначаете нечисленное значение параметру, средство SQLIOSim задает для параметра значение
0. - Если тип параметра является логическим, допустимые значения, которые можно назначить параметру:
trueиfalse. Кроме того, значения чувствительны к регистру. Средство SQLIOSim игнорирует недопустимые значения. - Если пара параметров указывает минимальное и максимальное значение, минимальное значение не должно превышать максимальное значение. Например, значение
MinIOChainLengthпараметра не должно быть больше значенияMaxIOChainLengthпараметра. - Если параметр указывает несколько страниц, средство SQLIOSim проверяет значение, которое назначается параметру в файле, который обрабатывает средство SQLIOSim. Средство SQLIOSim выполняет эту проверку, чтобы убедиться, что количество страниц не превышает размер файла.
Разделы файла конфигурации
Файл конфигурации содержит несколько разделов:
- [CONFIG]
- [RandomUser]
- [AuditUser]
- [ReadAheadUser]
- [BulkUpdateUser]
- [ShrinkUser]
-
[Файл<N>] (заполнитель
<N>является числом)
Каждый раздел конфигурации описан в следующем разделе.
Раздел CONFIG
Средство SQLIOSim использует значения, указанные в разделе конфигурации CONFIG файла конфигурации SQLIOSim, чтобы установить глобальное поведение тестирования.
| Параметр | Значение по умолчанию | Описание | Комментарии |
|---|---|---|---|
ErrorFile |
sqliosim.log.xml | Имя файла журнала типа XML | |
CPUCount |
Количество ЦП на компьютере | Количество логических ЦП для создания | Максимальное значение — 64 ЦП. |
Affinity |
0 | Маска сходства физических ЦП, применяемая для логических ЦП | Маска привязки должна находиться в активной маске ЦП. Значение 0 означает, что используются все доступные ЦП. |
MaxMemoryMB |
Доступная физическая память при запуске средства SQLIOSim | Размер буферного пула в МБ | Значение не может превышать общий объем физической памяти на компьютере. |
StopOnError |
true | Останавливает имитацию при возникновении первой ошибки | |
TestCycles |
1 | Количество полных циклов тестирования | Значение 0 указывает бесконечное число циклов тестирования. |
TestCycleDuration |
300 | Длительность тестового цикла в секундах, за исключением прохождения аудита в конце цикла | |
CacheHitRatio |
1000 | Смоделированное соотношение попаданий кэша при чтении с диска инструментом SQLIOSim | |
MaxOutstandingIO |
0 | Максимальное число невыполненных операций ввода-вывода, разрешенных для всего процесса | Значение не может превышать 140 000. Значение 0 означает, что допускается около 140 000 операций ввода-вывода. Это ограничение инструмента. |
TargetIODuration |
100 | Длительность операций ввода-вывода в миллисекундах, на которую влияет регулирование. | Если средняя продолжительность ввода-вывода превышает целевую длительность ввода-вывода, средство SQLIOSim регулирует количество невыполненных операций ввода-вывода для уменьшения нагрузки и улучшения времени завершения ввода-вывода. |
AllowIOBursts |
true | Разрешить отключение дросселирования для отправки большого количества запросов ввода-вывода | Во время начального обновления, начальной контрольной точки и конечной контрольной точки в конце циклов тестирования активируются всплески ввода/вывода. Параметр MaxOutstandingIO по-прежнему учитывается. Вы можете ожидать длинные предупреждения ввода-вывода. |
NoBuffering |
true | Использование параметра FILE_FLAG_NO_BUFFERING |
SQL Server открывает файлы базы данных с помощью FILE_FLAG_NO_BUFFERING == true. Некоторые служебные программы и службы, такие как Analysis Services, используют FILE_FLAG_NO_BUFFERING == false. Чтобы полностью протестировать сервер, выполните один тест для каждого параметра. |
WriteThrough |
true | Использование параметра FILE_FLAG_WRITE_THROUGH |
SQL Server открывает файлы базы данных с помощью FILE_FLAG_WRITE_THROUGH == true. Однако некоторые средства и службы открывают файлы базы данных с помощью FILE_FLAG_WRITE_THROUGH == false. Например, службы SQL Server Analysis Services открывают файлы базы данных с помощью FILE_FLAG_WRITE_THROUGH == false. Чтобы полностью протестировать сервер, выполните один тест для каждого параметра. |
ScatterGather |
true | Использование ReadScatter или WriteGather API |
Если параметр true установлен, параметр NoBuffering также устанавливается в true.SQL Server использует операции ввода-вывода типа scatter/gather для большинства запросов ввода-вывода. |
ForceReadAhead |
true | Выполните операцию опережающего чтения, даже если данные уже были прочитаны. | Средство SQLIOSim выдает команду чтения, даже если страница данных уже находится в буферном пуле. Поддержка Microsoft SQL Server успешно использовала настройку true, чтобы выявить проблемы ввода-вывода. |
DeleteFilesAtStartup |
true | Удаление файлов при запуске, если файлы существуют | Файл может содержать несколько потоков данных. В усечении файла участвуют только потоки, указанные в записи File <N> FileName. Если указан поток по умолчанию, все потоки удаляются. |
DeleteFilesAtShutdown |
ложь | Удаление файлов после завершения теста | Файл может содержать несколько потоков данных. В файле усечены только те потоки данных, которые вы указали в разделе File <N> FileName. Если указан поток данных по умолчанию, средство SQLIOSim удаляет все потоки данных. |
StampFiles |
ложь | Разверните файл, заметив нули | Этот процесс может занять много времени, если файл большой. Если этот параметр имеет значение false, средство SQLIOSim расширяет файл, задав допустимый маркер данных. SQL Server 2005 использует функцию инициализации мгновенного файла для файлов данных. Если файл данных является файлом журнала или если мгновенная инициализация файла не включена, SQL Server выполняет обнуление. Версии SQL Server, более ранние, чем SQL Server 2000, всегда выполняли обнуление данных. Необходимо переключить значение параметра StampFiles во время тестирования, чтобы убедиться, что моментальная инициализация файлов и обнуление работают правильно. |
Раздел "Файл<N">
Средство SQLIOSim предназначено для проведения многократных тестов файлов. Раздел File<N> представлен как [File1][File2] для каждого файла в тесте.
| Параметр | Значение по умолчанию | Описание | Комментарии |
|---|---|---|---|
FileName |
Значения по умолчанию нет | Имя файла и путь | Параметр FileName может быть длинным путем или путем UNC. Он также может содержать имя и тип вторичного потока. Например, параметр FileName можно задать как file.mdf:stream2.ПРИМЕЧАНИЕ . В SQL Server 2005 операции DBCC используют потоки. Рекомендуется выполнять потоковые тесты. |
InitialSize |
Значения по умолчанию нет | Начальный размер в МБ | Если существующий файл больше значения, указанного InitialSize для параметра, средство SQLIOSim не сжимает существующий файл. Если существующий файл меньше, средство SQLIOSim расширяет существующий файл. |
MaxSize |
Значения по умолчанию нет | Максимальный размер в МБ | Файл не может увеличиться до значения, указанного MaxSize для параметра. |
Increment |
0 | Размер в МБ, на который файл увеличивается или уменьшается. Дополнительные сведения см. в ShrinkUser разделе этой статьи. |
Средство SQLIOSim настраивает параметр Increment при запуске, чтобы установить необходимую ситуацию: Increment * MaxExtents < MaxMemoryMB / NumberOfDataFiles.Если значение Increment равно 0, средство SQLIOSim задает файл как не сжимаемый. |
Shrinkable |
false | Указывает, может ли файл быть сжат или развернут | Если для параметра задано Increment0значение, то файл будет не сжимаемым. В этом случае необходимо установить значение false для параметра Shrinkable. Если вы установите значение параметра Increment, отличное от 0, вы сделаете файл доступным для сжатия. В этом случае необходимо установить параметр Shrinkable в значение true. |
Sparse |
false | Указывает, следует ли атрибут Sparse установить на файлы. |
Для существующих файлов средство SQLIOSim не очищает атрибут Sparse, если параметр Sparse установлен в значение false.SQL Server 2005 использует разреженные файлы для поддержки баз данных моментальных снимков и вторичных потоков DBCC. Включите поддержку разреженных файлов и потоков, а затем выполните тестовый проход. Примечание. Если для параметров файла задано Sparse = true , не указывайте NoBuffering = false в config разделе. При использовании этих двух конфликтующих сочетаний вы можете получить сообщение об ошибке, подобное следующему из инструмента:Ошибка:-=====Error: 0x80070467 Текст ошибки: при доступе к жесткому диску операция диска завершилась ошибкой даже после повторных попыток. Описание: сбой проверки буфера на странице C:\SQLIOSim.mdx: 28097 |
LogFile |
false | Указывает, содержит ли файл данные пользователя или журнала транзакций. | Определите по крайней мере один файл журнала. |
Раздел RandomUser
Средство SQLIOSim использует значения, указанные в разделе RandomUser, для имитации работника SQL Server, выполняющего случайные операции запроса, такие как шаблоны ввода-вывода для OLTP (онлайн-обработка транзакций).
| Параметр | Значение по умолчанию | Описание | Комментарии |
|---|---|---|---|
UserCount |
-1 | Число потоков случайного доступа, выполняющихся одновременно | Значение не может превышать значение: CPUCount*1023-100Общее число всех пользователей также не может превышать это значение. Значение нуля (0) означает, что нельзя создавать пользователей случайного доступа. Значение -1 означает, что необходимо использовать автоматическую конфигурацию значения: min(CPUCount*2, 8)NOTE система SQL Server может иметь тысячи сеансов. Большинство сеансов не имеют активных запросов. Используйте функцию count(*) в запросах к динамическому sys.dm_exec_requests представлению управления (DMV) в качестве базового плана для установления этого значения параметра теста.CPUCount здесь ссылается на значение CPUCount параметра в CONFIG разделе.Это min(CPUCount*2, 8) значение приводит к уменьшению значений между CPUCount*2 и 8. |
JumpToNewRegionPercentage |
500 | Вероятность перехода к новому региону файла | Начало региона выбирается случайным образом. Размер региона — это случайное значение между значением MinIOChainLength параметра и значением MaxIOChainLength параметра. |
MinIOChainLength |
1 | Минимальный размер региона на страницах | |
MaxIOChainLength |
100 | Максимальный размер региона на страницах | SQL Server 2005 выпуск Enterprise и SQL Server 2000 выпуск Enterprise могут считывать до 1024 страниц. Минимальное значение — 0. Максимальное значение ограничено системной памятью.Как правило, случайное действие пользователя приводит к возникновению небольших операций сканирования. Используйте значения, указанные в ReadAheadUser разделе, для имитации больших операций сканирования. |
RandomUserReadWriteRatio |
9000 | Процент обновляемых страниц | Цепочка случайной длины выбирается в регионе и может быть прочитана. Этот параметр определяет процент обновляемых и записываемых страниц на диск. |
MinLogPerBuffer |
64 | Минимальный размер записи журнала в байтах | Значение должно быть либо кратным размером сектора на диске, либо размером, который равномерно соответствует размеру сектора на диске. |
MaxLogPerBuffer |
8192 | Максимальный размер записи журнала в байтах | Это значение не может превышать 64 000. Значение должно быть кратно размеру сектора на диске. |
RollbackChance |
100 | Вероятность того, что произойдёт операция в памяти, которая вызовет откат. | При выполнении этой операции отката SQL Server не производит запись в журнал. |
SleepAfter |
5 | Время сна после каждого цикла в миллисекундах |
Раздел AuditUser
Средство SQLIOSim принимает значения, указанные в AuditUser разделе, чтобы имитировать действие DBCC для чтения и аудита сведений о странице. Проверка проводится, даже если значение параметра UserCount задано 0.
| Параметр | Значение по умолчанию | Описание | Комментарии |
|---|---|---|---|
UserCount |
2 | Количество потоков аудита | Значение не может превышать следующее значение: CPUCount*1023-100Общее число всех пользователей также не может превышать это значение. Значение 0 означает, что нельзя создавать пользователей случайного доступа. Значение -1 означает, что необходимо использовать автоматическую конфигурацию значения: min(CPUCount*2, 8)NOTE Система SQL Server может иметь тысячи сеансов. Большинство сеансов не имеют активных запросов. Используйте функцию count(*) в запросах к динамическому управляемому представлению sys.dm_exec_requests в качестве основы для установления этого значения параметра теста.CPUCount здесь ссылается на значение CPUCount параметра в CONFIG разделе.Значение min(CPUCount*2, 8) принимает меньшее из значений между CPUCount*2 и 8. |
BuffersValidated |
64 | ||
DelayAfterCycles |
2 | Применение параметра AuditDelay после завершения числа циклов BuffersValidated | |
AuditDelay |
200 | Количество миллисекунд для ожидания после каждой операции DelayAfterCycles. |
Раздел ReadAheadUser
Средство SQLIOSim принимает значения, указанные в разделе ReadAheadUser, чтобы имитировать предварительное чтение в SQL Server. SQL Server использует возможности предварительного чтения, чтобы максимально увеличить возможности асинхронного ввода-вывода и ограничить задержки запросов.
| Параметр | Значение по умолчанию | Описание | Комментарии |
|---|---|---|---|
UserCount |
2 | Количество потоков предварительного чтения | Значение не может превышать следующее значение: CPUCount*1023-100Общее число всех пользователей также не может превышать это значение. Значение 0 означает, что нельзя создавать пользователей случайного доступа. Значение -1 означает, что необходимо использовать автоматическую конфигурацию следующего значения: min(CPUCount*2, 8)ОБРАТИТЕ ВНИМАНИЕ , что система SQL Server может иметь тысячи сеансов. Большинство сеансов не имеют активных запросов. Используйте функцию count(*) в запросах к sys.dm_exec_requests представлению управления динамическими данными в качестве исходной точки для установления этого значения параметра теста.CPUCount здесь ссылается на значение CPUCount параметра в разделе CONFIG.Это min(CPUCount*2, 8) значение приводит к уменьшению значений между CPUCount*2 и 8. |
BuffersRAMin |
32 | Минимальное количество страниц для чтения на цикл | Минимальное значение — 0. Максимальное значение ограничено системной памятью. |
BuffersRAMax |
64 | Максимальное количество страниц для чтения на цикл | Выпуски SQL Server Enterprise могут считывать до 1024 страниц в одном запросе. Если вы устанавливаете SQL Server на компьютере с большим количеством ресурсов ЦП, памяти и диска, увеличьте размер файла и параметр упреждающего чтения. |
DelayAfterCycles |
2 |
RADelay Примените параметр после завершения указанного числа циклов |
|
RADelay |
200 | Число миллисекунд ожидания после каждой операции DelayAfterCycles |
Раздел BulkUpdateUser
Утилита SQLIOSim принимает значения, указанные в BulkUpdateUser секции, для симуляции массовых операций, таких как SELECT...INTO и BULK INSERT.
| Параметр | Значение по умолчанию | Описание | Комментарии |
|---|---|---|---|
UserCount |
-1 |
BULK UPDATE Количество потоков |
Значение не может превышать следующее значение: CPUCount*1023-100Значение -1 означает, что необходимо использовать автоматическую конфигурацию следующего значения: min(CPUCount*2, 8)ОБРАТИТЕ ВНИМАНИЕ , что система SQL Server может иметь тысячи сеансов. Большинство сеансов не имеют активных запросов. Используйте функцию count(*) в запросах к динамическому системному sys.dm_exec_requests представлению в качестве основы для установления значения этого тестового параметра.CPUCount здесь ссылается на значение CPUCount параметра в CONFIG разделе.Это min(CPUCount*2, 8) значение приводит к уменьшению значений между CPUCount*2 и 8. |
BuffersBUMin |
64 | Минимальное количество страниц для обновления на цикл | |
BuffersBUMax |
128 | Максимальное количество страниц для обновления на цикл | Минимальное значение — 0. Максимальное значение ограничено системной памятью. |
DelayAfterCycles |
2 |
BUDelay Примените параметр после завершения указанного числа циклов |
|
BUDelay |
10 | Количество миллисекунд ожидания после каждой DelayAfterCycles операции |
Раздел ShrinkUser
Средство SQLIOSim принимает значения, указанные в ShrinkUser разделе, чтобы имитировать операции сжатия DBCC. Средство SQLIOSim также может использовать ShrinkUser раздел для увеличения файла.
| Параметр | Значение по умолчанию | Описание |
|---|---|---|
MinShrinkInterval |
120 | Минимальный интервал между операциями сжатия в секундах |
MaxShrinkInterval |
600 | Максимальный интервал между операциями сжатия в секундах |
MinExtends |
1 | Минимальное число добавок, с помощью которого средство SQLIOSim увеличивает или сжимает файл. |
MaxExtends |
20 | Максимальное число добавок, за счет которых средство SQLIOSim увеличивает или сжимает файл. |
Примечания к файлам конфигурации .ini
Символ с запятой (;) в начале строки в файле конфигурации .ini приводит к тому, что строка будет рассматриваться как один комментарий.
Создание файла
Средство SQLIOSim создает отдельные файлы данных и файлы журналов для имитации шаблонов ввода-вывода, которые генерирует SQL Server в своих файлах данных и журналов. Средство SQLIOSim не использует подсистему SQL Server для выполнения стрессовых действий. Поэтому перед установкой SQL Server можно использовать средство SQLIOSim для тестирования компьютера.
При запуске средства SQLIOSim убедитесь, что вы указали то же расположение файла, которое используется для файлов базы данных SQL Server. При этом средство имитирует тот же путь ввода-вывода, который использует база данных SQL Server.
Вы можете включить сжатые или зашифрованные атрибуты для существующих тестовых файлов. Вы также можете включить эти атрибуты для существующего каталога, в котором создаются тестовые файлы. Соответствующие параметры для включения этих атрибутов находятся в диалоговом окне "Свойства " для файла или каталога.
По умолчанию средство SQLIOSim создает тестовые файлы с расширениями .mdx и .ldx. Поэтому эти файлы не перезаписывают существующие файлы данных и журналов.
Предупреждение
Чтобы избежать потери фактических данных SQL Server, не указывайте фактические файлы базы данных SQL Server для тестирования. Средство SQLIOSim перезаписывает данные с помощью шаблонов случайных тестов.
Журнал ошибок SQLIOSim и обработка ошибок
Средство SQLIOSim создает файл журнала ошибок в одном из следующих расположений:
- Расположение, указанное в параметре запуска журнала
- Расположение, указанное в строке
ErrorFile=в файле Sqliosim.cfg.ini
Журнал ошибок SQLIOSim.log.xml содержит подробности о процессе выполнения. Эти сведения включают сведения об ошибке. Внимательно просмотрите журнал для сведений об ошибках и предупреждениях.
Примечание.
Если в средстве SQLIOSim возникает ошибка, обратитесь к изготовителю оборудования, чтобы определить первопричину проблемы. Проблема также может быть вызвана драйвером устройства, драйвером фильтрации файловой системы (например, антивирусной программой) или ОПЕРАЦИОННОй системой.
Несколько копий
Средство SQLIOSim поддерживает тестирование на уровне нескольких файлов и тестирование на уровне нескольких пользователей. Средство SQLIOSim не требует нескольких вызовов. Можно запустить несколько копий средства SQLIOSim, если выполняются следующие условия:
- Все копии ссылаются на уникальные файлы тестирования для каждого экземпляра средства.
- Параметр
MaxMemoryMBкаждого экземпляра предоставляет не перекрывающийся регион памяти, достаточный для каждого экземпляра.
Сумма параметра для каждого экземпляра MaxMemoryMB должна быть меньше или равна общей физической памяти. Некоторые этапы тестирования, такие как моделирование контрольных точек, могут требовать больших объёмов памяти и создавать условия нехватки памяти при выполнении нескольких копий. Если возникают ошибки вне памяти, уменьшите количество запущенных копий инструментов.