|
Использование зеркалирования SQL2012 в режиме always on для 1С 8.2 | ☑ | ||
---|---|---|---|---|
0
МуМу
14.11.12
✎
10:40
|
Не раз спрашивали не используем ли мы зеркалирование SQL2012 в режиме always on для 1С 8.2.? Основной интерес к этому решению в том что впервые появилась возможность реализации синхронного кластера (зеркала) и при этом база данных на зеркале находится в режиме read only. То есть ее можно реально использовать для отчетов при этом не только аналитических(в синхронном режиме). Недавно реализовали прототип , который активно тетсируем.Написал статью о этом решении, рассмотрел другие средства кластеризации СУБД MSSQL с целью повышения масштабируемости ИТ систем.Ниже ссылка.
http://www.softpoint.ru/article_id4221.htm#zerk_v_reg_always_on |
|||
1
ДенисЧ
14.11.12
✎
10:41
|
А как 1с (программа, не фирма) относится к базе в ридонли? Она туда ничего не пытается писать?
|
|||
2
МихаилМ
14.11.12
✎
10:42
|
(0)
настройки отчетов - легко |
|||
3
МуМу
14.11.12
✎
10:50
|
(1)Там больше проблем с временными таблицами. Они создаются в рамках сесси, а также в рамках сервера. Впрочем про это в статье написано.
|
|||
4
rs_trade
14.11.12
✎
10:59
|
и каковы накладные расходы в синхронном зеркале, да плюс балансировщик?
|
|||
5
Sammo
14.11.12
✎
11:02
|
(1) Зависит от конфигурации.
|
|||
6
Serginio1
14.11.12
✎
11:12
|
(1) Ну тут можно обойтись и прямыми запросами.
|
|||
7
МуМу
14.11.12
✎
11:12
|
Линейная скорость при минимальной нагрузке конечно же немного падает. Зависит от количества транзакций через СУБД. Но масштабируемость можно серьезно увеличить(до 4-х зеркал можно поставить). А вообще нагрузочные тесты как раз проводим. Разумеется это решение не из дешевых, его имеет смысл использовать компаниям у которых например включен полный пакет майкрософт. Ну либо ситуация безвыходная и действительно других вариантов для масштабирования нет.
|
|||
8
rs_trade
14.11.12
✎
11:31
|
нагрузка на изменение данных и на чтение отличается в 10-ки раз минимум а как правило соотношение 1 к 99-и
мне почему то всегда казалось что наоборот. ибо запись и обновление это транзакции и блокировки. селекты своим количеством что ли берут? |
|||
9
МуМу
14.11.12
✎
11:44
|
(8) Это распостраненное заблуждение. Это несложно проверить. У нас например есть прогламмулина которая по трассам MSSQL может четко посчитать сколько на чтение и сколько на изменение в конкретной БД.
|
|||
10
ptiz
14.11.12
✎
11:56
|
(0) Хорошо расписано. Разжевано для "тупых 1Сников" :)
|
|||
11
Sammo
14.11.12
✎
16:31
|
Есть сомнения в "Основная проблема, это то что в момент восстановления очередной порции из журнала транзакций никто не может работать с базой. " Наши админы как-то решили данную проблему
На мой взгляд есть другая проблема - если большой объем изменений, то лог может быть приличный. Поэтому приходится очень внимательно подходить к массовым обработкам данных. |
|||
12
Никола_
Питерский 14.11.12
✎
16:41
|
Я так понимаю что это типа аналога Oracle RAC ? от MS ?
|
|||
13
МуМу
14.11.12
✎
18:15
|
(11) Это утверждение написано в контексте логшиппинга. Этот процесс означает по сути востановление бэкапа из журнала транзакций. Вы утверждаете что ваши админы каким то чудесным образом сделали во время этого процесса базы в readonly? Готов забиться на ящик пива что это не так.
|
|||
14
МуМу
14.11.12
✎
18:19
|
(10) Тем на самом деле для продвинутых одинэсников. На sql.ru к примеру уверен скажут что наоборот много воды, типа зачем итак понятные вещи расписывать.
|
|||
15
Живой Ископаемый
14.11.12
✎
18:20
|
2(1) я делал лог шиппинг, и шипованная база находится в режиме рид-онли. Программа заходит. Возможны какие-то фигни только при накатывании шипованного лога, но это происходит не всякую секунду, а с какой-то периодичностью
|
|||
16
МуМу
14.11.12
✎
18:21
|
12. Не уверен. Насчет Оракла у нас на ближайшее время эксперименты запланированы. А рекламным проспектам я больше не верю, только эксперимент показывает. Про SQL 2005 зекралировании до сих пор в сети столько баек расписанных ходит. А в реальности мощный функционал по масштабирванию появился только сейчас.
|
|||
17
МуМу
14.11.12
✎
18:22
|
(15) Читаем вниммательно статью, там насчет этого расписано, разжевано.
|
|||
18
МихаилМ
14.11.12
✎
18:24
|
(15)
а реструктуризацию как переносит такой межанизм ? |
|||
19
МуМу
14.11.12
✎
18:25
|
(18) Да, вполне. В этом то его плюсы.
|
|||
20
МуМу
14.11.12
✎
18:26
|
То есть по сравнению с репликацией над этим моентом не нужно особо париться.
|
|||
21
Живой Ископаемый
14.11.12
✎
18:26
|
2(18) м... сегодня посмотрю. Но вроде все применяется. Потому что мы каждый день конфу в боевой меняем. И вроде я недавно в шипованную заходил, там были изменения
|
|||
22
Живой Ископаемый
14.11.12
✎
18:29
|
2(17) ну, это разжевано и в How to became a Rock-Star DBA
|
|||
23
МуМу
14.11.12
✎
18:35
|
(21) Лучше проверить.
|
|||
24
МуМу
14.11.12
✎
23:57
|
(21) В том то логические нестыковки.Например, "И вроде я недавно в шипованную заходил, там были изменения ".
Это утверждение совершенно не доказывает то что - вы могли в ЛЮБОЕ ВРЕМЯ(хотя бы после транзакции) зайти в базу и увидеть изменения. (22) Сколько я разных проспектов рекламных не читал , где только чего не пишут... А вообще вы видимо не поняли до конца суть проблемы. Проблема например в том что если у вас запрос выпролняется 30 минут - есть два варианта. Вариант один - выкинуть запрос.Вариант два- отложить на 30 минут обновление БД. |
|||
25
lepesha
15.11.12
✎
01:04
|
(0) Data Cluster - очень громкое название, стоит поберечь для чего-нибудь более крутого, а этот продукт назвать SQL Mirror Router :)
|
|||
26
МуМу
15.11.12
✎
01:15
|
(25) У нас два продукта. Один действительно скорее примочка(адаптация) для always on и 1С 8.2 - его действительно можно назвать SQL Mirror Router(прокси) :) Второй продукт полностью самобытный - его разрабатываем не для 1С вовсе. Да и не только для MSSQL, в частности например для Mysql. Патент в стадии оформления.(с технологией уже все понятно, а вот бренды все в США заняты)
|
|||
27
МуМу
15.11.12
✎
01:18
|
(26) Хотя опять, все вырвано из контекста, описываемые технологии внедряли уже очень давно. Например на базе транзакционной репликации. Балансировщик нагрузки в том числе с учетом планируемой нагрузки применяли тоже давно.
|
|||
28
Живой Ископаемый
15.11.12
✎
09:46
|
2(24) у меня просто нет этой проблемы, поэтому я даже не понял зачем мне ее понимать.
|
|||
29
Живой Ископаемый
15.11.12
✎
12:22
|
Специально сейчас проверил. Внес изменение в конфигурацию Primary базы,
на сервере Праймери базы выполнил джоб в котором вызов "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\sqllogship.exe" -Backup 5BA0EBC7-53BC-4512-84F3-B4196DA85FA3 -server <ИмяПраймериСервера> На сервере Секондари базы выполнил доставку и накатку забэкапленного с праймери сервера лог-шиппинга. "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\sqllogship.exe" -Copy F43BDF9A-DC9C-4276-A835-30A2D6D147E8 -server <ИмяПраймериСервера> "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\sqllogship.exe" -Restore F43BDF9A-DC9C-4276-A835-30A2D6D147E8 -server <ИмяСекондариСервера> http://screencast.com/t/249ndHvE После этого зашел конфигуратором в эту базу и увидел все изменения принятые в рабочей (добавлены реквизиты в регистры, пару предопределенных элементов в справочник) Все на месте. |
|||
30
МуМу
15.11.12
✎
13:18
|
(29)Абсолютно правильные утверждения. Где я утверждал обратное?
А вот что я утвержал - Внесите изменения в базу, зайдите в базу зеркала и держите сессию, а лучше запустите запрос. В этот момент попытайтесь накатить бэкап очередного транзакшион лога не получится. То есть пока кто нибудь работает с базой зеркалом накатить изменения не получится. То есть рассинхронизация БД будет равна максимальному выполняемому запросу , к тому же в момент блокировки никто работать с ней не сможет. По другому говоря - если хотя бы один пользователь активный есть с БД зеркала - обновиться нельзя.Странно, я думал что понятно в статье все объяснил. |
|||
31
МуМу
15.11.12
✎
13:22
|
(30) Если вы соглачны с этим утверждением то я могу дальше обосновать что практического применения для масштабирования при таком условии нет. (для подавляющего большинства систем)
|
|||
32
Sammo
15.11.12
✎
13:24
|
(13) Был не прав. Дейтсвительно данная проблема не решена. Но в рамках наших процессов не критична, т.к. основной поток данных (а значит и изменения логово) происходят в одно время, а формирование отчетности в дргуое. Поэтому никаких нет проблем, что на время формирования отчетности база для формирования отчетности не обновляется.
|
|||
33
МуМу
15.11.12
✎
13:36
|
(32) В принципе с помощью этой технологии можно абсолютно все запросы кроме тех которые в транзакции перенаправлять на зеркало. С помощью этого например можно гарантировать стабильное время проведения оперативных документов. Но разумеется это не панацея. Многие компании делают ночной бэкап, востанавливают на отдельном серваке и большинство отчетов строят на копии. Актуальна эта тема наверное только для каждого 20-го одиэсника.
|
|||
34
Sammo
15.11.12
✎
14:01
|
(33) Я бы делил технологии скорее не на лог-шиппинг и зеркалирование, а для начала на синхронное и асинхронное.
Причина - разные требования по прохождению транзакции. + я бы добавил в статью политику лицензирования. Емнип (по 2008 скулю) асинхронное зеркалирование на скуле стандарт не доступно, только на ентерпрайз. А это уже другая цена вопроса. |
|||
35
Живой Ископаемый
15.11.12
✎
15:04
|
2(30) м... мне мое дежавю подсказывает, что в одном из окон мастера настройки лог.шиппинга я видел галку "отключить активных пользователей".
Но да, если задача стоит чтобы можно было в любой произвольный момент времени на рид-онли копии иметь практически актуальные данные - то лог-шиппинг не очень для этих целей. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |