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

Откуда:
Сообщений: 4
Доброго времени суток. Я новичок в администрировании БД, потребовалось изучение SQL
Прошу помощи, проходил некий тест и всплыл вот такой вот вопрос с несколькими вариантами ответов.
Перечитал тонну литературы, перелопатил весь интернет.
Ответ явно лежит на поверхности, но суть в том что я вопроса то не могу толком понять если честно.

Вопрос.
автор
Вы входите в роль db_owner базы данных userdb. Размер базы составляет 10 Гб, около 85% информации базы состоит из таблиц, содержащих статичную справочную информацию.
Какая последовательность действий позволит повысить производительность запросов и оптимизировать процесс резервного копирования базы данных MS SQL Server 2000?

1. Создать новую базу данных, воспользоваться утилитами DTS для перемещения в эту базу данных справочных таблиц

2. Воспользоваться мастером Database Maintenance Planner для определения интервалов резервного копирования, дефрагментации индексов, проверки целостности данных

3. Создать индексированные представления на основе изменяемых таблиц

4. Создать 2 файловых группы, в одну файловую группу поместить таблицы со справочными данными, в другую - изменяемые таблицы

5. Создать индексированные представления на основе справочных таблиц


На мой взгляд вопрос из области индексирования, однако в данном разделе не смог найти ответа на данный вопрос.
6 окт 17, 02:09    [20846937]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Relic Hunter
Member

Откуда: AB
Сообщений: 6212
Profit7,

Каким образом индексирование повлияет процесс резервного копирования?
Думай Profit7, думай.
6 окт 17, 02:23    [20846943]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
aleks222
Guest
Ответ очевиден:
1. Установить MS SQL 2017 и дофига гигабайт ОЗУ.
2. Все сунуть в инмемори.
6 окт 17, 05:39    [20846959]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Massa52
Member

Откуда:
Сообщений: 206
Profit7,

2,3,5 - можно сразу откинуть.
Выбор между 1 и 4 - отделить статику и динамику, и раздельно их беккапить. Одну реже, другую чаще.
6 окт 17, 06:03    [20846963]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
aleks222
Guest
Massa52
Profit7,

2,3,5 - можно сразу откинуть.
Выбор между 1 и 4 - отделить статику и динамику, и раздельно их беккапить. Одну реже, другую чаще.

Садись, неуд.

>> позволит повысить производительность запросов и оптимизировать процесс резервного копирования
6 окт 17, 06:22    [20846967]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Massa52
Member

Откуда:
Сообщений: 206
aleks222,
Вроде же речь идет о SQL 2000 - разве там были индексированные представления?
6 окт 17, 07:20    [20846993]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
aleks222
Guest
Massa52
aleks222,
Вроде же речь идет о SQL 2000 - разве там были индексированные представления?

Именно там они появились.

PS. 2000-й был большим прорывом.
6 окт 17, 08:25    [20847051]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 3595
p-сервер
Требую задачку по SQL Server 4.2

что движет этими людьми, в соседней теме не может определить сколько памяти скл занимает, а уже что-то требует
6 окт 17, 10:45    [20847371]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Profit7
Member

Откуда:
Сообщений: 4
Нет никаких соображений насколько я понимаю. Третья бессонная ночка ожидает меня. :(
Relic Hunter
Каким образом индексирование повлияет процесс резервного копирования?
Думай Profit7, думай.

Не подскажешь что и где можно почитать на данную тематику?
aleks222
Ответ очевиден:
1. Установить MS SQL 2017 и дофига гигабайт ОЗУ.
2. Все сунуть в инмемори.

Согласен, можно пойти по наименьшему пути сопротивления, однако к сожалению это не решение поставленной задачи в данном конкретном случае.
6 окт 17, 20:17    [20849517]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 4625
Profit7,

если тест для DBA, то ответ, как бы, очевиден.
так же если это тест от MS, то стоит учитывать "логику MS" :)
6 окт 17, 20:48    [20849555]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Eleanor
Member

Откуда:
Сообщений: 1021
aleks222
Massa52
Выбор между 1 и 4 - отделить статику и динамику

Садись, неуд.
>> позволит повысить производительность запросов и оптимизировать процесс резервного копирования

Так Massa52 ту часть, где будут справочники, сделает read-only.
Тогда запросы не будут создавать блокировки в неизменяемых данных => повышение производительности.
6 окт 17, 22:06    [20849737]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 1895
Eleanor
aleks222
пропущено...

Садись, неуд.
>> позволит повысить производительность запросов и оптимизировать процесс резервного копирования

Так Massa52 ту часть, где будут справочники, сделает read-only.
Тогда запросы не будут создавать блокировки в неизменяемых данных => повышение производительности.
Может расскажете нам какие блокировки будут создавать читатели другим читателям?
6 окт 17, 23:38    [20849981]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
stenford
Member

Откуда: урал
Сообщений: 2176
Mind
Может расскажете нам какие блокировки будут создавать читатели другим читателям?

shared блокировки. В read-only режиме они вообще не накладываются и сервер не занимается их отслеживанием, что повышает производительность
7 окт 17, 00:11    [20850043]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 4625
stenford
shared блокировки
IS и S взаимосовместимы ежели чего...
stenford
read-only режиме они вообще не накладываются и сервер не занимается их отслеживанием, что повышает производительность
и сколько наносекунд можно выиграть?
7 окт 17, 00:25    [20850087]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Eleanor
Member

Откуда:
Сообщений: 1021
Дедушка
и сколько наносекунд можно выиграть?

Еще и память освободится, которую занимали блокировки.
Можно будет потратить её на что-нибудь более полезное.
Интересно, какие были характеристики у серверов в 2000 году. 10 ГБ базы тогда наверное были не маленькие, и сервера были им под стать.
7 окт 17, 00:54    [20850168]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 34970
Eleanor
Дедушка
и сколько наносекунд можно выиграть?

Еще и память освободится, которую занимали блокировки.
Можно будет потратить её на что-нибудь более полезное.
Интересно, какие были характеристики у серверов в 2000 году. 10 ГБ базы тогда наверное были не маленькие, и сервера были им под стать.
В текущих условиях у нас ~3% памяти на все блокировки. Сколько их них в пике занимают shared, знает один леший. (В целом, выгоднее rcsi замутить, чем какие-то данные в r/o кидать). И даже условиях отсутствия rcsi борьба за 3% памяти выглядит сомнительной.
7 окт 17, 01:04    [20850189]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 34970
А, да, тесты по продукту, который уже лет 10 не поддерживается, выглядят почти так же, как и опросник по windows 95.
7 окт 17, 01:12    [20850202]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
stenford
Member

Откуда: урал
Сообщений: 2176
Дедушка
и сколько наносекунд можно выиграть?


Сколько-то выиграется, были где-то тесты насколько read-only повышает производительность, результаты были ненулевые. Помимо этого можно настроить индексов сколько захочется т.к. никаких инсертов нет. Нет обновления статистики итп. В общем если данные статичные - то майкрософт и рекомендует переводить базу в read-only
7 окт 17, 01:21    [20850212]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Eleanor
Member

Откуда:
Сообщений: 1021
Гавриленко Сергей Алексеевич
В текущих условиях у нас ~3% памяти на все блокировки. Сколько их них в пике занимают shared, знает один леший.

У меня в основном так же, хотя есть сервера с 7-9-11%. Смешно сказать, даже 43% есть на сервере с одной базой дистрибьютора.
Естественно, понимаю, что Read only ничего особенного не даст, но это же тестовые вопросы, а не реальная работа.
7 окт 17, 01:55    [20850228]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Profit7
Member

Откуда:
Сообщений: 4
Eleanor
aleks222
пропущено...

Садись, неуд.
>> позволит повысить производительность запросов и оптимизировать процесс резервного копирования

Так Massa52 ту часть, где будут справочники, сделает read-only.
Тогда запросы не будут создавать блокировки в неизменяемых данных => повышение производительности.

Насколько я понимаю таблицы статистики созданные вручную можно перевести в режим read-only. Но статистика по другим запросам постоянно обновляются сикулем, те что сикуль делает сам автоматически в зависимости от повторяющихся запросов. Тогда полностью заблокировать создание статистики что в свою очередь повредит производительности запросов.

Я склонюсь к ответу №3
автор
Создать индексированные представления на основе изменяемых таблиц

А почему не могу объяснить ввиду отсутствия опыта и низкого знания мат части.
7 окт 17, 02:44    [20850236]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
TaPaK
Member

Откуда: Kiev
Сообщений: 3595
автор
на основе изменяемых таблиц

мда

автор
Но статистика по другим запросам постоянно обновляются сикулем, те что сикуль делает сам автоматически в зависимости от повторяющихся запросов. Тогда полностью заблокировать создание статистики что в свою очередь повредит производительности запросов.

статистика это такое мифическое создание и про неё только легенды ходят, вот новая \
7 окт 17, 07:52    [20850309]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Profit7
Member

Откуда:
Сообщений: 4
[/quot]статистика это такое мифическое создание и про неё только легенды ходят, вот новая \[/quot]

Почему мифическое? Вполне себе такое явное.
Картинка с другого сайта.
7 окт 17, 22:36    [20851461]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Eleanor
Member

Откуда:
Сообщений: 1021
Profit7
Насколько я понимаю таблицы статистики

Насколько понимаю, это неправильный перевод table statistics, статистика таблиц?
Не читайте плохо переведенную документацию, пользуйтесь оригиналом на английском.
7 окт 17, 22:44    [20851466]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 5120
Создать 2 файловых группы, в одну файловую группу поместить таблицы со справочными данными, в другую - изменяемые таблицы
9 окт 17, 13:53    [20854476]     Ответить | Цитировать Сообщить модератору
 Re: Оптимизация производительности запросов SQL Server 2000  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 5120
PS db_owner не сможет выполнить п.1 по безопасности.
9 окт 17, 13:54    [20854481]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить