Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
Дано:

Репликация транзакций, одна подписка без изменений;
2 севера: 1 - публикация, распространение, 2 – подписка;
75гб памяти;
Выделяет память динамически, страницы не закреплены;

Вовремя создания снапшота, применения снапшота, чтения и применения транзакций сервер выделяет 71гб;
Далее следует спад и остановка транзакционной активности, сервер не освобождает память.

Вопрос: должен ли сервер освободить память при остановке транзакционной активности? Или следует ему выставить ему ограничение max memory?

Спасибо.
22 ноя 12, 20:04    [13515783]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
автор
должен ли сервер освободить память при остановке транзакционной активности?


А она еще кому-то нужна?
22 ноя 12, 20:57    [13515946]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
МуМу
Member

Откуда:
Сообщений: 1134
Меня удивляют подобные вопросы. То есть то что sql отъел память - это тревожит. А вот если он например ее не отъедает - типа все нормально. Нафига тогда памяти столько покупать?
По сабжу ответ - нет он ее освобождать не должен. Да это нормально.
22 ноя 12, 21:50    [13516122]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
МуМу
Меня удивляют подобные вопросы. То есть то что sql отъел память - это тревожит. А вот если он например ее не отъедает - типа все нормально. Нафига тогда памяти столько покупать?
По сабжу ответ - нет он ее освобождать не должен. Да это нормально.


прежде, чем впадать в праведный гнев «профессионализма” еще раз внимательно прочитайте мое сообщение. вы все поняли с точностью до наоборот.
23 ноя 12, 11:01    [13517634]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
pkarklin
автор
должен ли сервер освободить память при остановке транзакционной активности?


А она еще кому-то нужна?


по сути нет (и как я понимаю ос вполне хватает), но проблема в том, что робот отрывает тикеты, когда памяти остается меньше определенного значения.
те все-таки придется использовать max memory?
23 ноя 12, 11:07    [13517680]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
dmitry stakanov,

Лучше сделайте исключения для "робота".
23 ноя 12, 11:09    [13517698]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
pkarklin
dmitry stakanov,

Лучше сделайте исключения для "робота".


практически невозможно. робот в европе + есть глобальная политика компании относительно всех серверов: сколько ресурсов должны оставаться свободными (диски, память , процессоры).
дополнительной памяти у меня к сожалению тоже пока нет.
я понимаю, что лучше не лезть в балансировку памяти руками, но есть ли еще варианты?
23 ноя 12, 11:15    [13517739]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
dmitry stakanov
я понимаю, что лучше не лезть в балансировку памяти руками, но есть ли еще варианты?


Почему ж не лезть, если на робота повлиять нет возможности?! Уменьшайте значение max server memory.
23 ноя 12, 11:16    [13517757]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
pkarklin
dmitry stakanov
я понимаю, что лучше не лезть в балансировку памяти руками, но есть ли еще варианты?


Почему ж не лезть, если на робота повлиять нет возможности?! Уменьшайте значение max server memory.


я пытался выяснить есть ли еще варианты.
спасибо за комментарии!
23 ноя 12, 11:23    [13517813]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
МуМу
Member

Откуда:
Сообщений: 1134
Если посоветовать по существу.ю Я бы начал с другого. Посмотрел настройку репликации.Репликации транзакцией нужна память по минимуму. Какой у вас размер снапшотов средний?(их ведь можно и разбить) Во вторых именно для этой задачи можно смело ограничивать размер максимально допустимой памяти. На скорость обмена это не повлияет.
23 ноя 12, 12:07    [13518151]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
МуМу
Если посоветовать по существу.ю Я бы начал с другого. Посмотрел настройку репликации.Репликации транзакцией нужна память по минимуму. Какой у вас размер снапшотов средний?(их ведь можно и разбить) Во вторых именно для этой задачи можно смело ограничивать размер максимально допустимой памяти. На скорость обмена это не повлияет.


70гб. можно ссылку по вашим комментариям выше?
спасибо!
23 ноя 12, 12:20    [13518259]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
МуМу
Member

Откуда:
Сообщений: 1134
Типовой транзакционной репликацией занимался очень давно хотя и очень плотно. На память не помню где именно, задается частота выгрузки снапшотов и их размер.(помоему у Саши Гладченко статья на этом ресурсе есть) Но сто процентов это делается . И даже помоему в графических настройках можно указать.(в хранимках настройки репликации точно можно). (По сути это агент(джоб) который инициирует работу логреадера на считывание очередной порции изменений и выгрузке в файл.) Это наиболее правильный вариант. Теоретически можно в настройках SQL сервера задать максимальный объем используемой памяти. Это проще но все равно желательно применить и первый пункт. Потому как наличие большого снапшота может привести к тому что места на диске(например на временном хранилище) в какой то момент не хватит.
23 ноя 12, 12:57    [13518682]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
МуМу
Member

Откуда:
Сообщений: 1134
Ну а максимально используюмую память можете в настройках менеджмент студио в графическом интерфейсе задать, либо sp_configure поменять.
23 ноя 12, 13:01    [13518731]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
МуМу
Типовой транзакционной репликацией занимался очень давно хотя и очень плотно. На память не помню где именно, задается частота выгрузки снапшотов и их размер.(помоему у Саши Гладченко статья на этом ресурсе есть) Но сто процентов это делается . И даже помоему в графических настройках можно указать.(в хранимках настройки репликации точно можно). (По сути это агент(джоб) который инициирует работу логреадера на считывание очередной порции изменений и выгрузке в файл.) Это наиболее правильный вариант. Теоретически можно в настройках SQL сервера задать максимальный объем используемой памяти. Это проще но все равно желательно применить и первый пункт. Потому как наличие большого снапшота может привести к тому что места на диске(например на временном хранилище) в какой то момент не хватит.


спасибо.
23 ноя 12, 13:11    [13518824]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
Crimean
Member

Откуда:
Сообщений: 13148
а у вас чего, регулярно переприменяется снапшот? можно полюбопытствовать - зачем?

и вот еще что интересно:

> 2 севера: 1 - публикация, распространение, 2 – подписка;
> 75гб памяти;

2 * 75, на каждом по 75? или оба сервера на 1 физическом компе и на обоих 75?

> Во время создания снапшота, применения снапшота, чтения и применения транзакций сервер выделяет 71гб;

на каком из двух? издатель или подписчик?

> Далее следует спад и остановка транзакционной активности, сервер не освобождает память.

какой из двух?

а то трогательная беседа, а о какой роли в реплике мы говорим - непонятно
для создания снапшота столько памяти не нужно
а вот для загрузки - совершенно не помешает

70 гиг снапшота - насколько я себе представляю за 5 минут не выгрузится и не загрузится и тут возвращаемся к начальному вопросу - у вас постоянно перевыгрузка снапшота и полный реинит подписки? то есть регулярно 70 гиг прокачиваем с базы в базу? а нафига вам тогда репликация, извините? хотя, да, оборудование "при деле", безусловно ;)

и - версии серверов? 5 / 8 / 12?
23 ноя 12, 13:21    [13518917]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
invm
Member

Откуда: Москва
Сообщений: 9406
МуМу
Типовой транзакционной репликацией занимался очень давно хотя и очень плотно. На память не помню где именно, задается частота выгрузки снапшотов и их размер.(помоему у Саши Гладченко статья на этом ресурсе есть) Но сто процентов это делается . И даже помоему в графических настройках можно указать.(в хранимках настройки репликации точно можно). (По сути это агент(джоб) который инициирует работу логреадера на считывание очередной порции изменений и выгрузке в файл.) Это наиболее правильный вариант. Теоретически можно в настройках SQL сервера задать максимальный объем используемой памяти. Это проще но все равно желательно применить и первый пункт. Потому как наличие большого снапшота может привести к тому что места на диске(например на временном хранилище) в какой то момент не хватит.
Фигню вы пишите.
1. Размер снепшота задать нельзя. Его объем зависит только от количества и объема статей, для которых он создается. Так же, при желании, можно настроить сжатие снепшота. Грубо -- снепшот состоит из выгруженных bcp содержимого статей.
2. Логридер ни имеет никакого отношения к снепшотам и ничего в файлы не выгружает.
3. Дистрибьюшн-агент -- с точки зрения сервера обычный клиент, так что ресурсы будут потребляться сообразно получаемым от этого клиента запросам.
23 ноя 12, 13:29    [13518988]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
МуМу
Member

Откуда:
Сообщений: 1134
То invm
А я уверен что фигню вы пишете. Могу поспорить что размером снапшота транзакционной репликации можно управлять. Если разумеется нет огромных,огромных транзакций. Если интересно в понедельник скину ссылку, сейчас уезжаю.
23 ноя 12, 13:40    [13519111]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
invm
Member

Откуда: Москва
Сообщений: 9406
МуМу
То invm
А я уверен что фигню вы пишете. Могу поспорить что размером снапшота транзакционной репликации можно управлять. Если разумеется нет огромных,огромных транзакций. Если интересно в понедельник скину ссылку, сейчас уезжаю.
Ждем понедельника и ссылок на BOL.
23 ноя 12, 13:58    [13519251]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
Crimean
Member

Откуда:
Сообщений: 13148
МуМу
Могу поспорить что размером снапшота транзакционной репликации можно управлять


на что спорим? :) фильтр - да - можно поставить и сделать снапшот не по всем данным. но это весьма частное решение, расчитанное на то, что у подписчика остальные данные уже есть. в общем случае уже все написали за меня
23 ноя 12, 14:49    [13519742]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
invm
Member

Откуда: Москва
Сообщений: 9406
МуМу,

Ну и заодно хотелось бы получить разъяснения: Каким образом "огромность" транзакций влияет на объем снепшота?
23 ноя 12, 15:47    [13520223]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
Crimean
а у вас чего, регулярно переприменяется снапшот? можно полюбопытствовать - зачем?

и вот еще что интересно:

> 2 севера: 1 - публикация, распространение, 2 – подписка;
> 75гб памяти;

2 * 75, на каждом по 75? или оба сервера на 1 физическом компе и на обоих 75?

> Во время создания снапшота, применения снапшота, чтения и применения транзакций сервер выделяет 71гб;

на каком из двух? издатель или подписчик?

> Далее следует спад и остановка транзакционной активности, сервер не освобождает память.

какой из двух?

а то трогательная беседа, а о какой роли в реплике мы говорим - непонятно
для создания снапшота столько памяти не нужно
а вот для загрузки - совершенно не помешает

70 гиг снапшота - насколько я себе представляю за 5 минут не выгрузится и не загрузится и тут возвращаемся к начальному вопросу - у вас постоянно перевыгрузка снапшота и полный реинит подписки? то есть регулярно 70 гиг прокачиваем с базы в базу? а нафига вам тогда репликация, извините? хотя, да, оборудование "при деле", безусловно ;)

и - версии серверов? 5 / 8 / 12?



1 первый физ сервер издатель и распространитель - 75гб памяти;
2 второй физ сервер подписка - 36гб памяти;
3 остановка активности на первом сервере;
4 где вы прочитали, что у меня постоянный реинит подписки?

инициализация по бизнес требованию. например смена версии, архивация.
23 ноя 12, 15:52    [13520256]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
Crimean
Member

Откуда:
Сообщений: 13148
dmitry stakanov,

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

и - версия сиквела - для определенности - какая?

> где вы прочитали, что у меня постоянный реинит подписки

как правило, реинит такого объема - весьма разовая операция. а раз "наболело" до вынесения на публичное обсуждение - значит не так уже и редко

> инициализация по бизнес требованию. например смена версии

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

> архивация.

а чем резервное копирование не угодило? оно, особенно для подписчика, эффективнее заливки снапшота

p.s.

max server memory, как правило, стоит ограничить. достатчно бывает, что сиквел таки отъедает "лишку" ОЗУ и операционке становится "некомфортно" от этого
23 ноя 12, 16:02    [13520337]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
invm
Member

Откуда: Москва
Сообщений: 9406
dmitry stakanov,

Если нет реинитов и новых подписчиков, то автоматическую генерацию снепшотов можно вообще отключить.
23 ноя 12, 16:08    [13520381]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
invm
МуМу
То invm
А я уверен что фигню вы пишете. Могу поспорить что размером снапшота транзакционной репликации можно управлять. Если разумеется нет огромных,огромных транзакций. Если интересно в понедельник скину ссылку, сейчас уезжаю.
Ждем понедельника и ссылок на BOL.


видимо bсpbatchsize имелся в виду.
23 ноя 12, 16:11    [13520408]     Ответить | Цитировать Сообщить модератору
 Re: Репликация транзакций и динамическое выделение памяти  [new]
dmitry stakanov
Member

Откуда:
Сообщений: 241
invm
dmitry stakanov,

Если нет реинитов и новых подписчиков, то автоматическую генерацию снепшотов можно вообще отключить.


она отключена.
23 ноя 12, 16:12    [13520416]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить