Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 трюк для индексации на MS SQL 2008  [new]
udar_molota
Member

Откуда: Тель-Авив
Сообщений: 61
на моём персональном сайте стоит MSSQL 2008 R2 Express. мне нужно провести оптимизацию своей базы. у меня нет особого времени вникать в тонкости и я далека от DBA. я знаю, что в MSSQL 2008 R2 Enterpise есть DTA, который предлагает свои готовые рекомендации по оптимизации запроса, в том числе индексацию. Enterpise стоит у меня дома на личном компьютере. могу ли я, под покровом ночи, сделать бэкап базы на сервере (с версии Express), воссоздать её у себя дома (на Enterpise), опитмизировать и опять вернуть, уже оптимизорованную, на Express версию? может ли в ней быть что-то, что создаст конфликт и не позволит мне осуществить мой план?
18 июн 12, 21:18    [12734618]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Можете попробовать. Однако, DTA не панацея.
18 июн 12, 22:08    [12734805]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Я бы сказал больше - DTA - он такой забавный зверёк! такой - укуреный-укуреный.....
18 июн 12, 22:30    [12734888]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
А я бы сказал, что на восстановленная БД != реальная бд. Там и статистика, и фрагментация и бог знает что еще - другое...Сам сталкивался раньше, проверяешь на тестовой - быстро, переносишь на рабочую - убожество...Не знаю, может DTA и даст правильные рекомендации, которые сработают, но имхо сравнивать их нужно не "тестовая vs реальная", а "реальная до vs реальная после".
18 июн 12, 22:40    [12734941]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
Shakill
Member

Откуда: мск
Сообщений: 1887
udar_molota
могу ли я, под покровом ночи, сделать бэкап базы на сервере (с версии Express), воссоздать её у себя дома (на Enterpise), опитмизировать и опять вернуть, уже оптимизорованную, на Express версию? может ли в ней быть что-то, что создаст конфликт и не позволит мне осуществить мой план?


ну, например, если исходная база меньше 10 Гб, а с индексами окажется больше. или при создании бэкапа с энтепрайза вы включите его сжатие. или же в порыве оптимизации используете какие-либо иные фичи ентерпрайза вроде секционирования, не поддерживаемые экспрессом.
18 июн 12, 22:43    [12734962]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
SomewhereSomehow
А я бы сказал, что на восстановленная БД != реальная бд. Там и статистика, и фрагментация и бог знает что еще - другое...Сам сталкивался раньше, проверяешь на тестовой - быстро, переносишь на рабочую - убожество...Не знаю, может DTA и даст правильные рекомендации, которые сработают, но имхо сравнивать их нужно не "тестовая vs реальная", а "реальная до vs реальная после".


нононо!!!
Это каким таким образов при воссстановление базы из бэкапа у нас чудесным образом меняется карта страниц (фрагментация) или данные (статистика)
18 июн 12, 22:47    [12734985]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
locky,

Пардон, моя ошибка, пропустил слово бэкап в оригинальном сообщении. Я имел ввиду, когда накатываешь скриптом, спасибо, что поправили.
18 июн 12, 23:01    [12735034]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
Ну а вообще, это мой основной мысли не меняет, кэш планов никто не отменял, нужно воссоздавать полую картину, а какая она? А ведь еще, чем дальше время, тем картина менее четкая ибо боевая база живет...
18 июн 12, 23:10    [12735074]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
udar_molota
Member

Откуда: Тель-Авив
Сообщений: 61
Гавриленко Сергей Алексеевич
Можете попробовать. Однако, DTA не панацея.

соглашусь. но, как написала выше, это самый удобный мне вариант.

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

спасибо, учту

SomewhereSomehow
А ведь еще, чем дальше время, тем картина менее четкая ибо боевая база живет...

тут я вас потеряла)
18 июн 12, 23:18    [12735104]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
udar_molota,

Ну, смысл в том, что чем больше времени проходит, тем больше реальная база отличается от тестовой...И то что было актуально для тестовой вчера, уже не актуально для боевой сегодня.
Кто бы что ни говорил, я работаю в режиме "тестовая->реальная" постоянно, и в 90%, производительность тестовой по сравнению с реальной предсказать не возможно, даже если обновлять базу каждый день.
По вашей ситуации - конечно попробуйте, от вас не убудет, но будьте готовы к неожиданностям =)
18 июн 12, 23:34    [12735178]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
udar_molota
Member

Откуда: Тель-Авив
Сообщений: 61
SomewhereSomehow
udar_molota,

Ну, смысл в том, что чем больше времени проходит, тем больше реальная база отличается от тестовой...И то что было актуально для тестовой вчера, уже не актуально для боевой сегодня.
Кто бы что ни говорил, я работаю в режиме "тестовая->реальная" постоянно, и в 90%, производительность тестовой по сравнению с реальной предсказать не возможно, даже если обновлять базу каждый день.
По вашей ситуации - конечно попробуйте, от вас не убудет, но будьте готовы к неожиданностям =)
поняла, спасибо
18 июн 12, 23:38    [12735207]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
locky,

Кстати, файловую фрагментацию никто не отменял...
18 июн 12, 23:41    [12735232]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
SomewhereSomehow
locky,

Кстати, файловую фрагментацию никто не отменял...

ну это да
До 10-20 раз может влиять
18 июн 12, 23:55    [12735314]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
locky,

А еще может влиять где размещают тестовые сервера DBA. Я сам не дба, но наш дба выделил отдельный тестовый сервер (и прально сделал), но там живут овер 100500 баз, ну и железо соответственное...все это надо учесть, когда сравниваешь с реальной....а уж если это домашний комп...
19 июн 12, 00:23    [12735391]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
SomewhereSomehow
locky,

А еще может влиять где размещают тестовые сервера DBA. Я сам не дба, но наш дба выделил отдельный тестовый сервер (и прально сделал), но там живут овер 100500 баз, ну и железо соответственное...все это надо учесть, когда сравниваешь с реальной....а уж если это домашний комп...


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

А вот взят базу, и на конкретном домашнем железе соптимизировать - то будет нормально.
19 июн 12, 00:26    [12735395]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
locky,
=))

Ну, то что вы сочтете оптимизированным на тестовом железе, вообще не факт, что будет так же работать на боевом. И я тут не теоретизирую, уж е-мае, поверьте мне так бывает, и очень часто!
19 июн 12, 00:29    [12735401]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
SomewhereSomehow
locky,
=))

Ну, то что вы сочтете оптимизированным на тестовом железе, вообще не факт, что будет так же работать на боевом. И я тут не теоретизирую, уж е-мае, поверьте мне так бывает, и очень часто!


Вы знаете, для случая с экспрессом - такое маловероятно.
19 июн 12, 00:30    [12735402]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Хотят тут как раз наоборот - тюнить собираются на ЕЕ.
Да, забавно может получится.
19 июн 12, 00:31    [12735404]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
locky
SomewhereSomehow
locky,

А еще может влиять где размещают тестовые сервера DBA. Я сам не дба, но наш дба выделил отдельный тестовый сервер (и прально сделал), но там живут овер 100500 баз, ну и железо соответственное...все это надо учесть, когда сравниваешь с реальной....а уж если это домашний комп...


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

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

А, видимо, вы имели ввиду оптимизацию в вакууме (ну не в вакууме, ан основе мета данных и статистических данных), т.е. когда DTA явно посоветует создать такой-то индекс, и сякой-то индекс и т.д. Который явно выгоден, просто с точки зрения математики запроса. Тогда да.
Ну а реальную эффективность, всерно лучше оценивать на боевой бд =)
И благо если объем и сценарий использования данных таков, что создание/удаление - проходит незаметно =)
19 июн 12, 00:36    [12735413]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
udar_molota
Member

Откуда: Тель-Авив
Сообщений: 61
SomewhereSomehow
когда DTA явно посоветует создать такой-то индекс, и сякой-то индекс и т.д. Который явно выгоден, просто с точки зрения математики запроса.
да-да, именно.
19 июн 12, 00:50    [12735428]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
udar_molota
SomewhereSomehow
когда DTA явно посоветует создать такой-то индекс, и сякой-то индекс и т.д. Который явно выгоден, просто с точки зрения математики запроса.
да-да, именно.
Тогда уж проще на боевом сервере посмотреть missing indexes. а DTA в топку.

А трейс то кстати есть? Или что вы собрались скармливать DTA? :)
19 июн 12, 01:59    [12735502]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
Idol_111
Member

Откуда:
Сообщений: 633
Mind
Тогда уж проще на боевом сервере посмотреть missing indexes. а DTA в топку.

Полностью согласен. Подозреваю, как раз в Вашем случае, проще и достаточно будет глянуть в missing indexes. В 80% случаев DTA не сможем Вам предложить что-то еще, что существенно повысит производительность.

И если инфа из missing indexes Вам не поможет, то скорее всего Вам надо искать профессионала и копать гораздо глубже, чем DTA может предложить.
19 июн 12, 04:24    [12735579]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
udar_molota
Member

Откуда: Тель-Авив
Сообщений: 61
Mind
udar_molota
пропущено...
да-да, именно.
Тогда уж проще на боевом сервере посмотреть missing indexes. а DTA в топку.

А трейс то кстати есть? Или что вы собрались скармливать DTA? :)
в DTA я обычно хожу с простым запросом, он сам всё предлагает.

а где смотрят missing indexes?
19 июн 12, 09:34    [12735913]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
Andrew Nagorny
Member

Откуда: СПб
Сообщений: 116
см. сюда

http://msmvps.com/blogs/gladchenko/archive/2007/11/13/1311293.aspx
19 июн 12, 10:13    [12736140]     Ответить | Цитировать Сообщить модератору
 Re: трюк для индексации на MS SQL 2008  [new]
udar_molota
Member

Откуда: Тель-Авив
Сообщений: 61
Andrew Nagorny
см. сюда

http://msmvps.com/blogs/gladchenko/archive/2007/11/13/1311293.aspx
огромное спасибо!
19 июн 12, 23:29    [12742041]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить