|
Форматирование дисков
|
|||
---|---|---|---|
#18+
MS рекомендует форматировать диски под рабочие базы, лог и темпдб в размер кластера 64к. - А кто нибудь делал это или об этом только говорят? - Как вы обошлись с "bytes per sector", "Bytes per physical sector"? - Форматировали через контроллер или оставили как есть? - Кроме того, форматировать диск лога в в размер кластера 64к это не перебор? ЗЫ: спрашиваю, т.к. сейчас переношу базы на новое железо (с ssd дисками), SQL2008R2 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2019, 16:42 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us, Отформатировал новый сервер в 64к кластеры, настроил зеркалирование со старого, чтобы перенести базу, теперь лезет ошибка (некритично, но неприятная) "9012 Server There have been 25958400 misaligned log IOs which required falling back to synchronous IO. The current IO is on file L:\XXX.ldf." Обяснения, похожий случай и обход тут и тут , но там она возникает из за разных размеров сектора. У меня же сектора на старой и новой машине одинаковы - 512E, только размер кластера разный. Хоть кто то - работает на машите с 64k кластерами? - какой режим сектора вы используете: 512, 512E, "native 4k"? - получал эту ошибку? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2019, 16:37 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Гавриленко Сергей Алексеевич https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008/dd758814(v=sql.100) Спасибо, но я это уже читал. Там речь идет о выравнивании партиций, чтобы не происходило ненужного увеличения числа IO. В windows server 2012 это делается автоматически. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2019, 17:01 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us, 64к работаем. Для копирования баз используем бэкапы. Я подозреваю, что у вас синхронное зеркало и сеть/сервер его не тянет. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.09.2019, 17:56 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Владислав КолосовAlexander Us, 64к работаем. Для копирования баз используем бэкапы. Я подозреваю, что у вас синхронное зеркало и сеть/сервер его не тянет. Владислав, с "тягой" всё ок, но похоже на эту проблему: "FIX: Slow synchronization when disks have different sector sizes for primary and secondary replica log files in SQL Server AG and Logshipping environments" Видимо, на всякий случай, придётся отказаться от 64к кластров. Удивительно, что только Вы используете 64к кластры, хотя это явная рекомендация от MS. Я думал, отзовутся многие. Правда и "4K native" режим для размера секторв вроде тоже рекомендован ,но совершенно не ясно, как его включить (в UI контроллера не нашел, в железе я не спец) ,и надо ли его использовать для SSD ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2019, 12:59 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander UsВидимо, на всякий случай, придётся отказаться от 64к кластров. Удивительно, что только Вы используете 64к кластры, хотя это явная рекомендация от MS. Я думал, отзовутся многие. я бы на вашем месте привел все диски к 64к если "многие" не отзываются, это не значит, что 64к не используется на последних двух работах парки сиквелов (200 & 800 штук) были на дисках с 64к кластером - это было стандартной подготовкой дисков для сиквела ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2019, 13:19 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander UsЯ думал, отзовутся многие.Пропорцию лучше считать не по отношению "кто отозвался/общее количество жителей земли" Иначе цифры получатся недостоверными. Лучше использовать соотношение из данных, предоставленных откликнувшимися. То есть пока что 1 использующий / 1 всего = 1, то есть "все" Alexander UsУдивительно, что только Вы используете 64к кластры, хотя это явная рекомендация от MS.Я думаю, почти все используют либо 64, либо 256, я не встречал в разных компаниях другого подхода, с конца 90-х ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2019, 22:17 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
alexeyvgЯ думаю, почти все используют либо 64, либо 256, я не встречал в разных компаниях другого подхода, с конца 90-х не видел 256к на современных версиях винды для NTFS 64k max ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2019, 23:36 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
komradalexeyvgЯ думаю, почти все используют либо 64, либо 256, я не встречал в разных компаниях другого подхода, с конца 90-х не видел 256к на современных версиях винды для NTFS 64k max Ой, перепутал со страйпом в массиве :-( ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 00:42 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us, А зачем менять дефолты, есть выгода на тестах? NTFS умеет в экстенты, а блоки на SSD вообще 1-2Мб например ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 00:53 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Более того, для SSD NTFS не самая удачная ФС - высокая нагрузка обязательных перезаписей служебных областей, куча индексов и ACL. Но для MSSQL выбора считай, что нет. У меня нет данных по ReFS, да и вообще оптимизаций для SSD не особо заметно пока нигде ( Были бы интересны новости прогресса в этой области. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 01:12 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander UsMS рекомендует форматировать диски под рабочие базы, лог и темпдб в размер кластера 64к. - А кто нибудь делал это или об этом только говорят? - Кроме того, форматировать диск лога в в размер кластера 64к это не перебор? Делал раньше. Диск логов форматировать с размером кластера 64к не стоит, так как там иная структура хранения данных. Не экстенты по 8 8к страниц как у БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 08:56 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us- работает на машите с 64k кластерами? - какой режим сектора вы используете: 512, 512E, "native 4k"? - получал эту ошибку? Ошибку получал при переносе на поданные диски через Storage Spaces. Там они становятся 4к Либо переносить не всех серверах (mirroring, AG) на диски с одинаковыми размерами физического сектора либо запускать на всем нодах с флагом трассировки. Форматировать по 64к кластер ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 09:07 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
KirillichЛибо переносить не всех серверах читать как: Либо переносить НА всех серверах ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 09:08 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
SQL2008 Диск логов форматировать с размером кластера 64к не стоит, так как там иная структура хранения данных. Не экстенты по 8 8к страниц как у БД. у лога важнее скорость записи (I/O pattern), чем эффективности хранения, если это имелось ввиду поэтому "структура хранения" - дело десятое ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 11:39 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
komradу лога важнее скорость записи (I/O pattern), чем эффективности хранения, если это имелось ввиду поэтому "структура хранения" - дело десятое Так при каком размере кластера диска лога можно ожидать наибольшей скорости записи? 4к или 64к ? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 12:17 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Uskomradу лога важнее скорость записи (I/O pattern), чем эффективности хранения, если это имелось ввиду поэтому "структура хранения" - дело десятое Так при каком размере кластера диска лога можно ожидать наибольшей скорости записи? 4к или 64к ? скорее интересней другое - сколько надо записать блоков диску при одной "записи" сиквела если лог пишется сиквелом блоками по 512кб-60к, то в случае 64к - это один блок на диске, а в случае 4к - 16 блоков следственно, операций записи на уровне диска гораздо больше (аппаратное кэширование не берем в расчет) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 12:33 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
komrad блоками по 512кб-60к опечатка, должно быть 512байт-60кб ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 14:02 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
komrad, так раки какие покупать, маленькие по 3 или большие по 5? (диск лога форматировать по 4k или 64k ?) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 14:54 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us(диск лога форматировать по 4k или 64k ?) в общем случае, я бы следовал рекомендации МС и использовал 64к ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 14:58 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us, на производительность журналов больше влияет количество VLF, нежели размер кластера. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 15:19 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Что касается ошибки 9012: "9012 Server There have been 25958400 misaligned log IOs which required falling back to synchronous IO. The current IO is on file L:\XXX.ldf." Оказалось, что в моём случае она возникает при зеркалировании между разными версиями SQL (2008 -> 2008R2) Воспроизведение: 1) Вклчаю зеркалирование базы XXX с сервера S1 (sql2008) на S2 (sql2008 R2) - ошибка появляется в логах S2 2) Переключаю зеркалирование, удаляю зеркалирование 3) Вклчаю зеркалирование этой же базы с сервера S2 (sql2008 R2) на S3 (sql2008 R2) - ошибка уже не появляется ЗЫ: Спасибо всем откликнувшимся. ЗЗЫ: Хоть мой основной вопрос (надеюсь) решен, некоторые другие отвечены, осталась не раскрытой тема низкоуровнего форматирования: режим сектора: 512, 512E или "native 4k" и их применение с SSD. Буду рад, если кто выскажется и по этой теме. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 16:10 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander UsЧто касается ошибки 9012: "9012 Server There have been 25958400 misaligned log IOs which required falling back to synchronous IO. The current IO is on file L:\XXX.ldf." Оказалось, что в моём случае она возникает при зеркалировании между разными версиями SQL (2008 -> 2008R2) Воспроизведение: 1) Вклчаю зеркалирование базы XXX с сервера S1 (sql2008) на S2 (sql2008 R2) - ошибка появляется в логах S2 2) Переключаю зеркалирование, удаляю зеркалирование 3) Вклчаю зеркалирование этой же базы с сервера S2 (sql2008 R2) на S3 (sql2008 R2) - ошибка уже не появляется ЗЫ: Спасибо всем откликнувшимся. ЗЗЫ: Хоть мой основной вопрос (надеюсь) решен, некоторые другие отвечены, осталась не раскрытой тема низкоуровнего форматирования: режим сектора: 512, 512E или "native 4k" и их применение с SSD. Буду рад, если кто выскажется и по этой теме. не правильный вывод сделал. запусти под администратором на всех серверах fsutil fsinfo ntfsinfo %имя_тома% и увидешь в чем разница. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 16:31 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Kirillichзапусти под администратором на всех серверах fsutil fsinfo ntfsinfo %имя_тома% и увидешь в чем разница. Запускал. Прежде чем писать в форум переформатировал диски нового сервера назад, в 4k кластеры, на обоих серверах было: Bytes per Sector : 512 Bytes per Physical Sector : 4096 Bytes per Cluster : 4096 Bytes pet FileRecord Segment : 1024 а ошибка осталась. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 16:54 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us, вообще любопsтный вопрос, ч думал, что вопросы низкоуровнего форматирования ушли вместе с MFM/IDE винтами и MS-DOS. Сейчас ведь винтовые контроллеры не пускают к "блинам" и делают то что им предписывают инженеры производителя. Т.е. они выставляют на интерфейс какую-то абстракцию вместо физический структуры. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 17:28 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Владислав Колосов, к сожалению не разбираюсь в железе. просто полистал эту статейку от 2014 года там пишут о преемуществах "4K native" форматирования так и появились вопросы ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 17:43 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us, что-то такое припоминаю, мелькало в описании SSD накопителей или комбинированных на сайте IBM, кажется. Якобы 4К супер технология бла бла бла. Я думаю, что наилучшим решением на производстве будет использовать настройки по умолчанию, дабы не пришлось зависеть от типов оборудования, создавать регламент форматирования и еще много всякой пляски и заклинаний. Но это мое мнение. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 19:33 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Для дисков SSD это уже не актуально ,это на шпинделе было актуально . ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 21:10 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
shalombДля дисков SSD это уже не актуально ,это на шпинделе было актуально .На соло шпинделе 4к, на рейде 64к. А что с SSD пока темный лес ... |
|||
:
Нравится:
Не нравится:
|
|||
04.09.2019, 23:37 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
[quot Alexander Us]KirillichBytes per Physical Sector : 4096 на всех серверах? уверен что на сервере S1 (sql2008) Bytes per Physical Sector : 512 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 08:05 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Kirillichуверен что на сервере S1 (sql2008) Bytes per Physical Sector : 512 нет нет, именно как я написал. Вот ещё раз, S1 (sql2008), в оригинале: NTFS-Version : 3.1 LFS-Version : 2.0 ...... Bytes pro Sektor : 512 Bytes pro physischem Sektor : 4096 Bytes pro Cluster : 4096 Bytes pro Dateidatensatzsegment : 1024 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 09:31 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
2008 и 2008r2, емнип имеют массу технических отличий. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 11:16 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Вот ещё разъяснения от MS по размеру кластеров: Cluster size recommendations for ReFS and NTFS ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 15:07 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
После изучения "лучших практик" и обсуждения решил попробовать: Создал - базу TEST_DB на диске с 4k кластерами. - две таблицы - "узкую" и "широкую", слелал в них по 4 вставки с последующим CHECKPOINT - сделал в "широкую" таблицу перелив данных тулм на основе SqlBulkCopy наблюдал файловую активность через Process Monitor. Должен сказать, что после этого я совсем не уверен, что - диск лога надо форматировать иначе чем в 4kb - даже для диска данных 64kb выглядят перебопрм 4 вставки в "узкую" таблицу (первые 4 строки лога) с последующим CHECKPOINT (остальные строки) "Time of Day""Process Name""PID""Operation""Path""Result""Detail""09:56:164204300""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.149.632 Length: 4.096 I/O Flags: Non-cached Write Through Priority: Normal""09:56:164233505""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.153.728 Length: 4.096 I/O Flags: Non-cached Write Through Priority: Normal""09:56:173333239""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.157.824 Length: 4.096 I/O Flags: Non-cached Write Through Priority: Normal""09:56:173354556""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.161.920 Length: 4.096 I/O Flags: Non-cached Write Through Priority: Normal""09:56:305772764""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.166.016 Length: 4.096 I/O Flags: Non-cached Write Through Priority: Normal""09:56:305979700""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 901.005.312 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:56:306013292""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 1.064.960 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:56:306013639""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 147.456 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:56:306015230""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 1.966.080 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:56:306027367""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 344.064 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:56:306112802""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.170.112 Length: 4.096 I/O Flags: Non-cached Write Through Priority: Normal""09:56:306114165""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 0 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:56:306114961""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 73.728 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal" 4 вставки в "широкую" таблицу (первые 4 строки лога) с последующим CHECKPOINT (остальные строки) "Time of Day""Process Name""PID""Operation""Path""Result""Detail""09:57:566394558""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.174.208 Length: 16.384 I/O Flags: Non-cached Write Through Priority: Normal""09:57:573256498""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.190.592 Length: 12.288 I/O Flags: Non-cached Write Through Priority: Normal""09:57:581273273""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.202.880 Length: 36.864 I/O Flags: Non-cached Write Through Priority: Normal""09:57:588301600""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.239.744 Length: 20.480 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014219367""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.260.224 Length: 16.384 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014224486""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 122.200.064 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014250310""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 901.054.464 Length: 40.960 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014251757""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 163.684.352 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014253149""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 163.545.088 Length: 32.768 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014254002""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 898.293.760 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014254101""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 159.170.560 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014266909""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 619.528.192 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014268744""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 648.257.536 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014288601""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 147.456 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014288938""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 417.792 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014289676""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 1.064.960 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014290378""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 1.966.080 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014312677""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 738.058.240 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014347180""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 619.634.688 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014356819""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 318.914.560 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014360289""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 722.771.968 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014370406""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 824.696.832 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014397063""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 838.860.800 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014408912""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 331.284.480 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014419269""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 391.954.432 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014428786""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 380.141.568 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014436564""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 853.909.504 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014437327""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 853.884.928 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014440839""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 437.198.848 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014447030""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 824.893.440 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014449634""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 868.696.064 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014451062""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 838.942.720 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014457435""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 389.996.544 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014460617""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 839.180.288 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014468931""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 132.513.792 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014475522""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 854.310.912 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014478781""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 71.262.208 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014480112""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 71.524.352 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014484061""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 854.106.112 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014484744""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 854.384.640 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014485401""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 883.097.600 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014513024""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 861.339.648 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014525960""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 29.892.608 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014529213""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 561.119.232 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014537408""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 561.012.736 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014537722""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 893.337.600 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014539124""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 544.694.272 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014561378""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 122.175.488 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014563347""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 46.276.608 Length: 4.096 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014565092""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB_log.ldf""SUCCESS""Offset: 0 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""09:58:014566410""sqlservr.exe""1772""WriteFile""C:\Data\TEST_DB.mdf""SUCCESS""Offset: 73.728 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal" Вставки в "широкую" таблицу через SqlBulkCopy, gj 1000 строк. Т.к. весь лог длинный, привожу вырезку "Time of Day""Process Name""""PID""""Operation""""Path""""Result""""Detail""""09:59:058461503""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.280.704 Length: 61.440 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058462853""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.120.000 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058497013""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.342.144 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058509510""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.177.344 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058543006""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.399.488 Length: 61.440 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058557545""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.234.688 Length: 65.536 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058623983""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.460.928 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058656067""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.300.224 Length: 32.768 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058657260""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.518.272 Length: 24.576 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058658675""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.332.992 Length: 49.152 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058695157""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.542.848 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058705421""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.382.144 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058706172""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.398.528 Length: 40.960 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058756905""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.600.192 Length: 61.440 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058783460""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.439.488 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058833048""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.661.632 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058839457""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.496.832 Length: 65.536 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:058869309""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.718.976 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:059117317""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.562.368 Length: 40.960 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:059118106""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.776.320 Length: 28.672 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:059119437""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.603.328 Length: 40.960 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:059163018""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.804.992 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:059171890""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.644.288 Length: 8.192 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:059172685""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB.mdf""""SUCCESS""""Offset: 901.660.672 Length: 40.960 I/O Flags: Non-cached Write Through Priority: Normal""""09:59:059215791""sqlservr.exe""""1772""""WriteFile""""C:\Data\TEST_DB_log.ldf""""SUCCESS""""Offset: 46.862.336 Length: 57.344 I/O Flags: Non-cached Write Through Priority: Normal""" ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 11:19 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Дополнение: база TEST_DB в модели "full" вставки SqlBulkInsert шли блоками по 1000 строк ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 11:30 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Выводы из эксперимента (применительно к SSD дискам) Лог: - запись в лог присходит в блоками, кратно 4k - размер блока зависит от количества данных в инсерте - что может сильно изменяться в зависимости от конкретной базы/типа данных - для моих баз, видимо, 4k блоки будут преобладать - поэтому представляется целесообразным форматировать диск лога по 4k Данные: - запись присходит в блоками, кратно 8k - для моих баз, при записи, видимо, 8k блоки будут преобладать - чтение присходит в блоками, кратно 64k (в основном) - форматирование данных по 64k дало бы прирост производительности по чтению но было бы расточительно для записи из за TBW - SSD диски и так быстры, данные кэшируются, так что вряд ли стоит ожидать существенного выигрыша для всего сервера при форматировании в 64k - форматирование по 8k или 32k возможно, было бы золотой серединой но это привнесёт неразбериху, видимо, без существенного выигрыша - поэтому представляется целесообразным форматировать диск данных по 4k PS: - много зависит от конкретной базы/характера данных - форматирование по 4k ограничивает размер тома/файла в 16ТБ Жду ваших мнений, критики ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 13:32 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander UsВыводы из эксперимента (применительно к SSD дискам)Мне кажется, результат замеров "вставки SqlBulkInsert шли блоками по 1000 строк" недостаточно, что бы выбрать размер кластера для данных сиквела, попутно обратившись в Микрософт "эй, вы там чушь понаписали, переделывайте документацию, я тут замерил!" Нужно либо потратить "от" нескольких лет на эксперименты и изучение теории, что бы создать универсальную достоверную методику, либо произвести замеры на своей реальной системе, что бы выбрать оптимальные настройки для неё. А вот так вот, "вставки SqlBulkInsert шли блоками по 1000 строк" - это профанация. Вам рассказали про практику, дали ссылки, вы сами нашли и привели тут волне авторитетную статью, что вам ещё надо? Просто следуйте рекомендациям. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 17:46 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Alexander Us, дык 64к форматируют для оптимизации чтения, если у вас много записи и это вызывает проблемы, о чем и пишут лучшие практики, то размер надо делать меньше. При типовой рабочей нагрузке наилучшим будет 32к, к примеру. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 18:24 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Владислав Колосовдык 64к форматируют для оптимизации чтения, если у вас много записи и это вызывает проблемы, о чем и пишут лучшие практики, то размер надо делать меньше. При типовой рабочей нагрузке наилучшим будет 32к, к примеру.А нет каких то ссылок по этой теме? По моему, размер кластера не связан с размером минимальной единицы записи. Собственно, ошибка в начале обсуждаемой темы, и ссылки вначале показывают, что минимальной единицей является сектор. Ещё, "если у вас много записи", это не означает, что запись будет производиться маленькими блоками. В большинстве реальных систем она будет как раз по 64 кб 8 кб запись будет только если вы обновляете отдельные записи (на разных страницах, причём не соседних) Запись в лог тем более всегда последовательная. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 19:54 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
Приветствую. Так в итоге 64к для "Байт на кластер" даёт какое-то преимущество над 4к? Обычно форматирую новые диски под 64к, по рекомендации. Но какой-то особой разницы не заметил. А тут пытаемся понять почему у сервака очереди по диску с БД стабильно при нагрузке выше 100. Бывает и под 3 тысячи. По системному монитору очереди в основном чтения. Связка ВМ+дисковая полка усложняет реальную картину. Настроено в древности, для диска выставлено вообще 16384 у "Байт на кластер". Базы на диске большие, просто так их перемещать нельзя. Поэтому и вопрос - может ли текущих показатель форматирования диска настолько влиять на очереди к диску? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2020, 11:22 |
|
Форматирование дисков
|
|||
---|---|---|---|
#18+
64к влияет, канешно, на уровне процентов. Т.е. с лупой разглядите. А очередь 100 и больше - это кривой драйвер или помирающий контроллер. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2020, 15:53 |
|
|
start [/forum/topic.php?all=1&fid=46&tid=1685333]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 162ms |
0 / 0 |