Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 LOG-транзакций на SSD  [new]
LOG-транзакций на SSD
Guest
Думаю разместить LOG-транзакций на SSD. Сервер 2 x CPU, 64 GB RAM, RAID10 6 дисков.
Есть PCI-E Flash SLC SSD 32 GB. Мало так потому что SLC. Recovery model: simple
Бывают очень сильные короткие всплески активности записи, которые надо выдержать за счет SSD.
Как задать максимальный размер LOG-транзакций чтобы не попасть в ситуацию переполнения SSD?

Нужно что бы при достижения предела журнала пусть сервер чуть замедлялся, ждал чуть дольше перекочевки данных в БД на диски, но не вылетал с ошибкой нехватки места под LOG-транзакций.
Т.е. чтобы даже теоретической возможности такой не было.

Серверный Flash SSD PCE Express со скоростью до 600 MBs. Даже чтобы добить до линейной записи надо будет 8 HDD в RAID0.
Бывают кратковременные всплески на 30-50 секунд когда требуется около 600-800 MBs на запись. И желательно чтобы система в эти моменты быстро реагировала.
Идеальным решением было бы что бы до 20 ГБ журнал писался быстро со скоростью PCIE SSD, а свыше писался обычно со скоростью RAID HDD, ожидая перекачки данных в БД.
25 июл 11, 19:01    [11024987]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Ммм, один драйв, из которого даже зеркало не сделать, что ли? Я бы не связывался вообще, тогда.
25 июл 11, 19:05    [11025014]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
LOG-транзакций на SSD
Нужно что бы при достижения предела журнала пусть сервер чуть замедлялся, ждал чуть дольше перекочевки данных в БД на диски, но не вылетал с ошибкой нехватки места под LOG-транзакций.
Т.е. чтобы даже теоретической возможности такой не было.
Делаете второй файл журнала на любом другом массиве с необходимым количеством места. Правда, придется припрыгивать и следить, чтобы сервер туда не лез.

Это первое. Второе. Раземер базы какой? Если больше 40 Гб, то, имхо, я бы не стал связываться.
25 июл 11, 19:09    [11025034]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
LOG-транзакций на SSD
Guest
Гавриленко Сергей Алексеевич
Ммм, один драйв, из которого даже зеркало не сделать, что ли? Я бы не связывался вообще, тогда.

Поставить 2 в зеркале в принципе не проблема. Это решаемо. А вот как задать максимальный размер LOGa транзакций чтобы при его достижении не вываливалось с ошибкой. Это вопрос...
25 июл 11, 19:09    [11025038]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
LOG-транзакций на SSD
Серверный Flash SSD PCE Express со скоростью до 600 MBs.
Что-то не верится. Вы потестируйте, реальное положение дел может сильно отличаться от заявляемого.
25 июл 11, 19:10    [11025040]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
LOG-транзакций на SSD
Гавриленко Сергей Алексеевич
Ммм, один драйв, из которого даже зеркало не сделать, что ли? Я бы не связывался вообще, тогда.

Поставить 2 в зеркале в принципе не проблема. Это решаемо. А вот как задать максимальный размер LOGa транзакций чтобы при его достижении не вываливалось с ошибкой. Это вопрос...
Первый файл лога без autogrowth на SSD, второй, пятый и десятый - с autogrowth где угодно.
25 июл 11, 19:11    [11025047]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
LOG-транзакций на SSD
Guest
Гавриленко Сергей Алексеевич
LOG-транзакций на SSD
Нужно что бы при достижения предела журнала пусть сервер чуть замедлялся, ждал чуть дольше перекочевки данных в БД на диски, но не вылетал с ошибкой нехватки места под LOG-транзакций.
Т.е. чтобы даже теоретической возможности такой не было.
Делаете второй файл журнала на любом другом массиве с необходимым количеством места. Правда, придется припрыгивать и следить, чтобы сервер туда не лез.

Это первое. Второе. Раземер базы какой? Если больше 40 Гб, то, имхо, я бы не стал связываться.

А что значит "придется припрыгивать и следить, чтобы сервер туда не лез."?
База конечно больше 40 ГБ, но это как влияет?
25 июл 11, 19:11    [11025048]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
LOG-транзакций на SSD
Гавриленко Сергей Алексеевич
пропущено...
Делаете второй файл журнала на любом другом массиве с необходимым количеством места. Правда, придется припрыгивать и следить, чтобы сервер туда не лез.

Это первое. Второе. Раземер базы какой? Если больше 40 Гб, то, имхо, я бы не стал связываться.

А что значит "придется припрыгивать и следить, чтобы сервер туда не лез."?
База конечно больше 40 ГБ, но это как влияет?
"Следить" - значит знать, что сейчас активная чать лога пишется не в файл на SDD, а на обычные диски. Чтобы не было вопросов, почему вдруг "все внезапно просело".
25 июл 11, 19:14    [11025059]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
LOG-транзакций на SSD
Guest
Гавриленко Сергей Алексеевич
LOG-транзакций на SSD
пропущено...

А что значит "придется припрыгивать и следить, чтобы сервер туда не лез."?
База конечно больше 40 ГБ, но это как влияет?
"Следить" - значит знать, что сейчас активная чать лога пишется не в файл на SDD, а на обычные диски. Чтобы не было вопросов, почему вдруг "все внезапно просело".

А если я увижу что сейчас активная чать лога пишется не в файл на SDD, а на обычные диски, то что надо делать?
Как снова заставить его писаться на SSD, ведь если я этого не смогу, то нет особого смысла знать в какой из файлов лога сейчас идет запись.
25 июл 11, 19:29    [11025113]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Crimean
Member

Откуда:
Сообщений: 13147
LOG-транзакций на SSD
Recovery model: simple

...

А если я увижу что сейчас активная чать лога пишется не в файл на SDD, а на обычные диски, то что надо делать?
Как снова заставить его писаться на SSD, ведь если я этого не смогу, то нет особого смысла знать в какой из файлов лога сейчас идет запись.


найти длинную открытую транзакцию (dbcc opentran / sysprocesses / ...). "решить" с ней по месту. как только "решите" - так сразу же на ближайшем же checkpoint все автоматически (ц БОЛ) вернется на SSD
25 июл 11, 19:59    [11025211]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
LOG-транзакций на SSD
Guest
Crimean
LOG-транзакций на SSD
Recovery model: simple

...

А если я увижу что сейчас активная чать лога пишется не в файл на SDD, а на обычные диски, то что надо делать?
Как снова заставить его писаться на SSD, ведь если я этого не смогу, то нет особого смысла знать в какой из файлов лога сейчас идет запись.


найти длинную открытую транзакцию (dbcc opentran / sysprocesses / ...). "решить" с ней по месту. как только "решите" - так сразу же на ближайшем же checkpoint все автоматически (ц БОЛ) вернется на SSD

Понятно. А файлы лога транзакций используются по порядку их создания, по скорости доступа к ним или приоритетным будет с отключенным авторасширением?

Потому что допустим файлы темпдб используются все одновременно и если сделать 2 файла под темпдб, один положить на SSD с отключенным авторасширением, а другой на HDD с включенным авторасширением, то все упрется в HDD и будет работать лишь в 2 раза быстрее чем 1 файл на HDD. Т.е. для заметного усорения надо класть порядка 10 файлов темпдб на SSD и 1 файл на HDD.
25 июл 11, 20:19    [11025246]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Crimean
Member

Откуда:
Сообщений: 13147
в БОЛ все написано. а у вас каша пока :)
25 июл 11, 20:26    [11025261]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31983
LOG-транзакций на SSD
А файлы лога транзакций используются по порядку их создания, по скорости доступа к ним или приоритетным будет с отключенным авторасширением?
Приоритетным (по моему) будет файл, на котором есть место.

Поэтому если создать файл на SSD с достаточным пространством, запись пойдёт туда.
25 июл 11, 20:28    [11025266]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
LOG-транзакций на SSD
Guest
Crimean, там я тоже до конца не понял :)
Ну и практически опыт с tempdb вносит некоторые сомнения.

alexeyvg
LOG-транзакций на SSD
А файлы лога транзакций используются по порядку их создания, по скорости доступа к ним или приоритетным будет с отключенным авторасширением?
Приоритетным (по моему) будет файл, на котором есть место.

Поэтому если создать файл на SSD с достаточным пространством, запись пойдёт туда.

Т.е. мне надо создать на SSD 1 файл log с максимальным начальным размером и без авторасширения, и 1 файл log на HDD с 0 начальным размером и включенным авторасширением?

Но получается последовательность такая: после того как SSD наполниться, log-файл на HDD расшириться, затем оба файла после чекпоинта освободяться, но т.к. в обоих файлах теперь есть место то запись будет идти параллельно в оба файла?
Или так же отслеживая через (dbcc opentran / sysprocesses / ...) долгую транзакцию, закрывая её и делая чекпоинт, надо будет шринковать до нулевого размера log-файл на HDD?
25 июл 11, 20:56    [11025299]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
Ray D
Member

Откуда: from the middle of nowhere
Сообщений: 3598
Блог
Запись в файлы логов выполняется последовательно, не будет ничего параллельно писаться. См. БОЛ и, например, https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=849329&msg=10646532
25 июл 11, 22:43    [11025503]     Ответить | Цитировать Сообщить модератору
 Re: LOG-транзакций на SSD  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31983
LOG-транзакций на SSD
Или так же отслеживая через (dbcc opentran / sysprocesses / ...) долгую транзакцию, закрывая её и делая чекпоинт, надо будет шринковать до нулевого размера log-файл на HDD?
У вас же запись в лог на HDD - это нештатная ситуация?

Так можно настроить письмо админу на увеличение размера, он будет шринковать файл. Или как то настроить автоматический шринк HDD-файла.
25 июл 11, 23:08    [11025583]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить