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

Откуда: урал
Сообщений: 2850
Существует-ли возможность улучшить производительность одного запроса (который скажем выполнается 5 секунд) путем горизонтального маштабирования (что-бы время его выполнения стала скажем 1 секунда). Т.е. улучшить время выполнения не за счет апгрейда сервера, а за счет подсоединения еще одного сервера? Или подобного рода маштабирование только предназначено для разгрузки сервера от множества запросов?
21 июн 11, 11:29    [10845350]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Ога.
Только всё равно проапгрейдится придется до Microsoft SQL Server 2008 R2 Parallel Data Warehouse
21 июн 11, 11:36    [10845403]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
Crimean
Member

Откуда:
Сообщений: 13147
однозначного ответа нет. но частные решения возможны
из-за того, что для такого масштабирования мы очень сильно упираемся в сетку решить абстрактно - никак
но если чуть знать прикладуху - есть варианты
вплоть до условной реплики данных на второй сервер, на котором данные индексированы по-другому а то и организованы
21 июн 11, 20:42    [10850307]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
uaggster
Member

Откуда:
Сообщений: 1064
Да, можно.
См. горизонтальное секционирование.
21 июн 11, 22:12    [10850603]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
stenford
Member

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

вот какие примерно архитектурные меры могут приняты в такой ситуации: база данных разбита на 2 логических куска (скажем 15 таблиц в одной и 15 в другой), в основом запросы между ними не пересекаются.
Апдейтов мало, есть инсерты новых данных, и при каждой вставке новой строки необходимо просмотреть все имеющиеся записи на наличие определенный совпадений, причем в обоих логических частях базы. Именно это и занимает много времени. Хранилище данных не построить, т.к. никаких вычислительных запросов нет, в основном запросы типа найти запись среди всех остальных записей, у которой совпадают определенные поля, определенные поля имеют бОльшее или меньшее значение и т.д.

Я пока вижу только единственную возможность - разнести логические части базы на разные диски. Горизонтальное маштабирование которое есть в sql server'e не подходит - проблема не в количестве запросов (их сравнительно мало), а в том, что они сравнительно тяжелые
22 июн 11, 03:39    [10851228]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
Crimean
Member

Откуда:
Сообщений: 13147
что значит "тяжелые"? и индексами это не решается?? примеры!
22 июн 11, 11:01    [10852250]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
stenford
Member

Откуда: урал
Сообщений: 2850
Crimean
что значит "тяжелые"? и индексами это не решается?? примеры!

"тяжелые" значит что там есть и полнотекстовый поиск, и запросы типа "like '%bla-bla-bla%'", и даже кастомная реализация fuzzy match'a, реализованная на C# и вызываемая для каждой строки.
Вот и интересуют способы архитектурного воздействия на базу :)
23 июн 11, 03:04    [10858760]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
Crimean
Member

Откуда:
Сообщений: 13147
а при чем тут база? если вы свои тормоза сами себе и написали
23 июн 11, 10:49    [10859641]     Ответить | Цитировать Сообщить модератору
 Re: Существуют-ли способы маштабирования для одного запроса  [new]
ViPRos
Member

Откуда:
Сообщений: 9945
stenford
[Вот и интересуют способы архитектурного воздействия на базу :)


все тяжелое программно в памяти
23 июн 11, 13:35    [10861301]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить