Переключение на Главную Страницу Страницы: 1 [2]  ОтправитьПечать
Очень популярная тема (более 25 ответов) переход 1сv77 базы на  ms sql2005  64х (число прочтений - 11553 )
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #15 - 27. Ноября 2012 :: 16:28
Печать  
zar писал(а) 27. Ноября 2012 :: 13:32:
Цитата:
c: обычный диск на ide

вот это очень настораживает. Крах одного винта с системой (а это не такое уж и редкое явление) приведет к остановке системы... уж лучше одиночный диск под tempdb отдать, хотя имхо под tempdb было бы хорошо SSD (но тут уже надо прикидывать на сколько примерно его хватит)...

Я опять отстал от компьютерного прогресса
(я был в полной уверености что диски аналогичные прошлому серверу)
а сейчас все опять поменялось
Корзина на 15 дисков форм фактор дисков и корзины 2''
и все диски с горячей заменой.
Т.е. диск с: тоже raid 1 на sas  винтах ( и всего 10 дисков)
  

_____003.JPG ( 53 KB | Загрузки )
_____003.JPG
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #16 - 27. Ноября 2012 :: 17:44
Печать  
глава 4. дизайн базы

Дизайн базы заключается в размещением файлов базы  (mdf, ldf ) по дискам
и заданию правильных размеров приращений.
Файлы уже размещены по дискам.
Начальные размеры если база влезла то все хорошо если нет то тут же начинают действовать приращения.

Осталось поговорить о приращениях.

Сначала о приращениях mdf
начиная с  ms sql 2005 появилась Быстрая инициализация файлов.

http://msdn.microsoft.com/ru-ru/library/ms175935%28v=sql.105%29.aspx
в ссылке описывается когда так делается и при каких условиях эта возможность отключается.

Т.е. эта возможность при выделении новых блоков и только для данных ( не для журналов транзакции )
позволяет делать мгновенное обнуление.
Поэтому вполне можно ставить приращение на данные побольше ( надо только учитывать
будут ли  или нет на этом диске еще файлы и также учитывать как  большие пустые куски будут влиять на Вашу стратегию резервного копирования).

Также ( ИХМО) никогда не ставьте значения приращений в процентах  потому что
это практически всегда пальцем в небо,
а во вторых серверу надо будет по процентам вычислить реальный размер приращения а это время и время очень
дорогое потому что на время выделения новых блоков файла база блокируется.


приращениях ldf
Совет ( ИХМО) тот же никогда не используйте приращение ldf в процентах.
В отличии от mdf, для ldf файлов  новые блоки всегда обнуляются.

Стратегия приращения зависит от модели восстановления.

1 случай модеь simple
В этой модели log файл закольцован сам на себя и в случае если голова догоняет хвост то выполняется приращение файла
В этом случае надо стремиться чтобы общий размер файла был минимальным
Можно вычислить Ваш размер методом деления пополам.
Берем приращение 100 Мб. смотрим как работает в течении дня т.е.
каким будет журнал транзакций в конце дня.
Обнуляем журнал транзакций и на следущий день все повторяем.
Если файл не изменился к концу дня то сокращаем размер вдвое
т.е. приращение 50 и смотрим как с этим приращением работает база.
Можно пойти и наоборот взять размер приращения 2 Мб и увеличивать его пока
у Вас задень не будет всего 3-4 приращения.
Естественно во время этих эксперементов не должно быть кардинальных событий
типа перестроения таблицы _1sjourn.


2 случай модель full.
В этой модели log  всегда только растет . При достижении конца файла всегда в конец файла добавляются новые блоки
и так  до тех пор пока не будет сделана резервная копия  и именно в этот момент усекается log файл.

Здесь все гораздо сложнее по выбору размера приращений.
С одной стороны надо чтобы число виртуальных журналов(активных ) было не очень большим
потому что при checkpoint надо просматривать все активные вирт журналы, т.е. это условие
требует чтобы приращение было большим а значит и сами вирт журналы большие,
а с другой стороны большое приращение влечет за собой большой размер виртуального журнала(активного )
и получается  обслуживание (checkpoint-а) одного большого вирт журнала обходиться
дороже чем двух в два раза меньше,
потому что когда два маленьких журнала то как только левый закроется ( но не усечеться)
то на обслуживание следующего журнала надо будет потратить меньше времени.
Ну а если самый левый журнал никогда не закроется (незакрыьая транзакция)то это в обоих случаях приведет к переполнению диска.

И Ваша задача найти оптимум между этими противоречивыми условиями.
Какой либо стратегии по поиску оптимального приращения для Вашей бд дать не могу.

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #17 - 27. Ноября 2012 :: 18:30
Печать  
Как устроен журнал транзакций в интернете очень много
информации,но на мой взгляд одна из лучших статей вот эта

8 Steps to better Transaction Log throughput
http://www.sqlskills.com/blogs/kimberly/post/8-Steps-to-better-Transaction-Log-t...
  
Наверх
 
IP записан
 
zar
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 82
Местоположение: Киров
Зарегистрирован: 17. Августа 2009
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #18 - 30. Ноября 2012 :: 14:57
Печать  
к главе 4.
может быть тут для модели full имеет смысл упомянуть про стратегию бэкапов с возможностью восстановления БД на заданное время (постоянное резервное копирование transaction log в течении дня) - в этом случае приращений практически не будет (только в исключительных случаях).
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #19 - 30. Ноября 2012 :: 17:09
Печать  
zar писал(а) 30. Ноября 2012 :: 14:57:
к главе 4.
может быть тут для модели full имеет смысл упомянуть про стратегию бэкапов с возможностью восстановления БД на заданное время (постоянное резервное копирование transaction log в течении дня) - в этом случае приращений практически не будет (только в исключительных случаях).

у меня нет большого опыта работы с full.
Если Вам есть что интересное тут написать - пишите здесь.
« Последняя редакция: 03. Декабря 2012 :: 13:59 - Z1 »  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #20 - 03. Декабря 2012 :: 14:00
Печать  
глава 5    1с77 под ms sql2005


1.Переносим базу. Под sql2000 deattach под sql2005 attach
2.Ставим  для базы Уровень совместимости 80.
3.Настраиваем на новую базу 1с (из конфигуратора  Администрирование --> Параметры Базы 1с)
4. Запускаем 1с в монопольном и не в монопольном режиме.

На этот момент 1с работает ms sql2005.


на своей базе,Не сразу, но обнаружилось ( ограничение на память не было установлено )
следующее : что ms sql2005 брал под себя память. На существующих границах физич. памяти
не останавливался и через некоторое время происходило очень резкое падение производительности.
Так как памяти много это обнаружилось не сразу.
после выставления параметра ограничения памяти  30 Гб всего памяти 32
проблема полностью ушла.Здесь важно что значение надо задавать в мегабайтах.

max server memory (MB)  30720

Нижнюю границу не ограничивал потому что и bool написано что операц. система не обязана
сразу выделять память по нижней границе, и когда проводил эксперементы несмотря на
установленное значение нижней границе память выделялась по мере необходимости.
поэтому оставил ниж значение = 0 .
min server memory (MB)  0

Также был вместе с ограничением по памяти был выставлен приоретет sql (в значение=1 )
над другими задачами.
priority boost 1


Надо или нет ограничивать sql меньшим числом процессоров(ядер) чем есть на самом деле.
Я не ограничивал используются для ms sql все имеющиеся процессоры.
В книжках пишут если Вы хотите от операционной системы лучший отклик
то оставьте один процессор только под операционную систему.


Макс колво процессоров выделяемых под выполнение запроса.
Значение больше 1 означает сколько ms sql может выделить процессоров ( не  обязательно что будет выделять)
для выполнения запроса.
Значение 1 означает что над выполнением запроса
всегда выделяется ровно один процессор(ядро). Для задач OLTP ( в том числе и 1с77 )
надо выставлять 1.
Значение  0 означает что ms sql для каждого запроса сам решает сколько под выполнение
запроса надо выделить процессоров(ядер). Это значение идет по умолчанию.


max degree of parallelism 1


« Последняя редакция: 04. Декабря 2012 :: 06:48 - Z1 »  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #21 - 04. Декабря 2012 :: 06:16
Печать  
Z1 писал(а) 03. Декабря 2012 :: 14:00:
Макс колво процессоров выделяемых под построение плана запроса.
Значение больше 1 означает сколько ms sql может выделить процессоров ( не  обязательно что будет выделять)
для построения запроса.
Значение 1 означает что над построением плана запроса
всегда выделяется ровно один процессор(ядро). Для задач OLTP ( в том числе и 1с77 )
надо выставлять 1.
Значение  0 означает что ms sql для каждого запроса сам решает сколько под составление
плана запроса надо выделить процессоров(ядер). Это значение идет по умолчанию.


max degree of parallelism 1

этот параметр влияет на количество процессоров выделямых для выполнение самого запроса, а не на построение плана
  

1&&2&&3
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #22 - 04. Декабря 2012 :: 06:44
Печать  
trad писал(а) 04. Декабря 2012 :: 06:16:
Z1 писал(а) 03. Декабря 2012 :: 14:00:
Макс колво процессоров выделяемых под построение плана запроса.
Значение больше 1 означает сколько ms sql может выделить процессоров ( не  обязательно что будет выделять)
для построения запроса.
Значение 1 означает что над построением плана запроса
всегда выделяется ровно один процессор(ядро). Для задач OLTP ( в том числе и 1с77 )
надо выставлять 1.
Значение  0 означает что ms sql для каждого запроса сам решает сколько под составление
плана запроса надо выделить процессоров(ядер). Это значение идет по умолчанию.


max degree of parallelism 1

этот параметр влияет на количество процессоров выделямых для выполнение самого запроса, а не на построение плана

да точно, для выполнения запроса.

  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #23 - 06. Декабря 2012 :: 06:30
Печать  
Глава 6   Устанавливаем Уровень совместимости базы в 90.

1.Ставим Секретный релиз ( с инфостарта )
2.Выгоняем всех из базы ( например остановив запустив сервер sql
3.Выставляем для нашей базы уровень совместимости 90
т.е  Compatiblity level = 90

PS уровень совместимости надо выставлять родной для ms sql сервера
т.е. если у Вас
ms sql 2005 то уровень совместимости = 90
ms sql 2008 то уровень совместимости = 100
ms sql 2012 то уровень совместимости = 110
« Последняя редакция: 06. Декабря 2012 :: 15:39 - Z1 »  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #24 - 06. Декабря 2012 :: 11:04
Печать  
А зачем уровень совместимости понижать?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #25 - 06. Декабря 2012 :: 11:15
Печать  
Eprst писал(а) 06. Декабря 2012 :: 11:04:
А зачем уровень совместимости понижать?

как это понижать.
наоборот повышаем
был 80 устанавливаем 90.

80 соответствует ms sql 2000
90 соответствует ms sql 2005

После этого база 1с работает в родном для ms sql2005 режиме
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #26 - 06. Декабря 2012 :: 14:02
Печать  
Всмысле ?
По -умолчанию,уровень совместимости 100.
откуда он меньше взялся ?

И зачем его делать 90 ?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: переход 1сv77 базы на  ms sql2005  64х
Ответ #27 - 06. Декабря 2012 :: 15:04
Печать  
Eprst писал(а) 06. Декабря 2012 :: 14:02:
Всмысле ?
По -умолчанию,уровень совместимости 100.
откуда он меньше взялся ?

И зачем его делать 90 ?

это для 2008 уровень совместимости 100.
Как бы в теме предполагается переход под ms sql 2005( что отображено в subj).

Естественно если у Вас сервер = ms sql 2008 то
после установки секретного релиза надо ставить уровень совместимости 100,
а если у Вас сервер = ms sql 2012 то
после установки секретного релиза надо ставить уровень совместимости 110
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 
ОтправитьПечать