|
Масштабирование сервера для сокращения времени перепроведения доков | ☑ | ||
---|---|---|---|---|
0
SmartUseless
14.05.13
✎
13:47
|
Постановка задачи следующая: Некая обработка по перепроведению документов обрабатывает N документов за 6 часов, 4*N документов перепроводятся за 14 часов. Вопрос состоит в том как за счет масшатиборования аппаратных средств сервера приложений и сервера баз данных сократить сроки перепровдения с 14 часов до 7 часов, т.е. в 2 раза..
|
|||
1
Fragster
гуру
14.05.13
✎
13:49
|
проводить документы параллельно
|
|||
2
Fragster
гуру
14.05.13
✎
13:49
|
для идеального случая прирост можно посмотреть с помощью v8: Многопоточный тест производительности 1с
|
|||
3
Fragster
гуру
14.05.13
✎
13:50
|
опять же, при организации доступа - могу помочь не за просто так
|
|||
4
Волшебник
14.05.13
✎
13:51
|
(0) Перестаньте перепроведить документы
|
|||
5
Галахад
гуру
14.05.13
✎
13:51
|
(0) И чего? Не получается?
|
|||
6
SmartUseless
14.05.13
✎
13:56
|
(4) Конечно, необходимость перепроведения документов, это один из минусов партионного учета, в идеале, при переходе на РАУЗ необходимость в перепроведении отпала бы, но пока данный сценарий не рассматривается..
|
|||
7
ОчкарикСлава
14.05.13
✎
13:56
|
(0) а точно все движения по регистрам надо переписать?
|
|||
8
Волшебник
14.05.13
✎
13:56
|
(6) Сами себе злобные буратино
|
|||
9
SmartUseless
14.05.13
✎
13:58
|
(1) т.е. вы предлагаете переписывать программный код?
|
|||
10
ОчкарикСлава
14.05.13
✎
13:58
|
(6) а проведение по партиям не?
|
|||
11
Fragster
гуру
14.05.13
✎
14:00
|
(9) написать обработку, которая проалализирует документы, которые можно провести параллельно и таки проведет их параллельно в нескольких сеансах
|
|||
12
ansh15
14.05.13
✎
14:00
|
(0) Конфигурацию железа озвучьте, хотя бы. Может проще будет купить что-то новое. В смысле, сервер.
|
|||
13
Fragster
гуру
14.05.13
✎
14:02
|
(12) ага. и бюджет.
|
|||
14
SmartUseless
14.05.13
✎
14:03
|
(12) ну так в этом и вопрос, что из железа надо нарастить и насколько, чтобы уменьшить время выполнения задачи в 2 раза..
|
|||
15
ОчкарикСлава
14.05.13
✎
14:04
|
(14) без исходных данных текущего железа что ответить...
а вообще путь тупиковый... |
|||
16
Fragster
гуру
14.05.13
✎
14:05
|
(14) все в 2 раза
|
|||
17
SmartUseless
14.05.13
✎
14:09
|
В настоящий момент сервер приложений имеет следующую конфигурацию -Intel® Xeon® Processor X5650 2,67 GHz, RAM 4 GB..
|
|||
18
SmartUseless
14.05.13
✎
14:11
|
(15) Хорошо, откроем дискурс, в чем вы видите путь без тупиков, в оптимизации кода и профилирования SQL-запросов?
|
|||
19
РазДва
14.05.13
✎
14:12
|
(16) Не поможет наращивание железа в два раза, скорее всего даже сейчас эта некая обработка не даёт приличной нагрузки на сервер. А вот параллельным "проведением" можно и нагрузить, только может у них в каждом документе одни и те же валенки продаются.
|
|||
20
ОчкарикСлава
14.05.13
✎
14:16
|
(18) откроем.
Вопрос №1. Зачем перепроводить документы для приведения в порядок партионного учета ? |
|||
21
Maxus43
14.05.13
✎
14:17
|
на время перепроведения можно и итоги отключить например, или перепроводить пачками доки в транзакции штук по 1000...)
|
|||
22
ОчкарикСлава
14.05.13
✎
14:17
|
(17)
2. Какая конфигурация? 3. SQL или файловая? |
|||
23
Fragster
гуру
14.05.13
✎
14:18
|
(21) 99% того, что ни один документ не проведется с отключенными итогами
|
|||
24
SmartUseless
14.05.13
✎
14:19
|
(16) Ознакомился с Вашими концепцией вкратце, уважаемый Fragster, к сожалению, насколько я понимаю, параллельное перепроведение возможно в документах, если у них нету зависимости по данными и не совсем понятно как вы гарантируете проведение документов в хронологической последовательности при параллельном перепроведении?
|
|||
25
ОчкарикСлава
14.05.13
✎
14:19
|
(17) купите 4-х гигагерцовый настольный комп, разгоните чуть чуть,
ускорится раза в полтора. А дальше всё. тышь 40 вас спасёт. |
|||
26
РазДва
14.05.13
✎
14:21
|
(24) А зачем гарантировать хронологический порядок для непересекающихся данных?
|
|||
27
SmartUseless
14.05.13
✎
14:24
|
(20) В общем случае имелось ввиду, что документе перепроводятся для восстановления хронологической последовательности и в общем случае это никак не связано с партионным учетом..
|
|||
28
РазДва
14.05.13
✎
14:27
|
(27) в общем случае хронологическая последовательность перебрасывается вперед несколькими строчками кода, а вот перепроведение преследует более конкретные цели
|
|||
29
ОчкарикСлава
14.05.13
✎
14:29
|
(27) я из (6) понял про партионный учёт...
вы документы переставляете по времени тип сначала приход потом расход? и т.д. типа того, да? |
|||
30
Gorgol
14.05.13
✎
14:30
|
(25) Не все так плохо. Возможно, что новый сервер с базой на ssd справится шустрее, чем в два раза. http://www.cpubenchmark.net/cpu_lookup.php?cpu=Intel+Xeon+X5650+%40+2.67GHz
|
|||
31
SmartUseless
14.05.13
✎
14:31
|
Господа очень Вам признателен за Ваши рекомендации,к сожалению нет времени, принятно волевое решение на Intel® Xeon® Processor E5-2687W (20M Cache, 3.10 GHz, 8.00 GT/s Intel® QPI).
|
|||
32
Галахад
гуру
14.05.13
✎
14:37
|
Гм. Качественный начальник.
Пока тут болтали принял решение. |
|||
33
ОчкарикСлава
14.05.13
✎
14:38
|
(30) мэй би.
в моём случае, при проведении по партиям, основной ресурс - процессорное время. Остальное так себе... заменив квад 2,6гиг на и7 4 гиг, (+ диск SSD кстати..), раза в полтора ускорилось... примерно так... |
|||
34
BigShmax
14.05.13
✎
15:12
|
(20) а поподробнее. как без перепроведения ? штатно именно восстановлением последовательности
|
|||
35
МуМу
14.05.13
✎
17:20
|
Только программно, только параллельные вычисления. Помню на мисте на эту тему провакационную ветку поднимал. Ссылка на статью
http://softpoint.ru/article_id375.htm |
|||
36
МуМу
14.05.13
✎
17:22
|
В зависимости от информационных потоков может быть естественное ограничение. Например в единицу времени может параллельно в среднем проводиться (а не висеть на блокировках) не более 5-и документов. Соответсвенно в данном случае ускорение будет максимум в пять раз. Под этот параметр нужно уже смотреть оборудование.
|
|||
37
МуМу
14.05.13
✎
17:24
|
Хотя существует фантастический вариант - найдите сервер с частотой процессора(диски, шина) в N раз быстрее текущего. Найдете - задача решена.
|
|||
38
МуМу
14.05.13
✎
17:25
|
Тьфу, не прочитал (31). Ну , тогда как говориться удачи:)
|
|||
39
s_ustinov
14.05.13
✎
17:26
|
(31) я в таких случаях советую потестить.
на том же амазоне арендуете сервер (серверы) нужной мощности и проверяете - в чем затык стоить это будет максимум 100уе |
|||
40
МуМу
14.05.13
✎
17:35
|
+(36) Раз уж завели эту тему, скажу последнее - существует вариант ускорения даже при естественном пареллеизме с уровнем, предположим, 5 - ускориться раз в 50-т. Но эту провакационную тему думаю опубликую через месяцок, как время появится.
|
|||
41
Lexusss
14.05.13
✎
17:51
|
Делаем ставки. Сокращение времени проведения, думаю, процентов на 15.
Я бы делал отдельный сеанс для распараллеливания проведения и 6 сеансов непосредственно параллельного проведения. При наличии блокировок, возможно придется срезать до 4х сеансов. Речь, конечно, про MS SQL Server 2008 с большой кучей ОЗУ и автоматическими блокировками. |
|||
42
Fragster
гуру
14.05.13
✎
20:32
|
(36) теоретическое ускорение больше, судя по (2). есть результаты с 10 и более разами
|
|||
43
МуМу
14.05.13
✎
23:05
|
(42) Есть и в 20-ть раз.(были реальные случаи из жизни на очень мощном оборудовании) Только если более чем на 5-ть потоков смысла делить нет(есть такой термин естественный параллелизм) то ускорение как не крути больше чем в 5-ть раз не будет. Но конкретно эту задачу можно ускорить больше чем в 50-т раз, правда в этом случае подходы к параллельным вычислениям другие. Впрочем судя по всему автор уже нашел решение.
|
|||
44
Nexux
14.05.13
✎
23:12
|
в рам диск еще базу можно положить
|
|||
45
ОчкарикСлава
15.05.13
✎
09:26
|
Хм,...
Было: 2,67 GHz, Стало: 3.10 GHz, имхо - деньги на ветер... Если не меняя программы, то только скорость проца важна, остальное - так себе (ну если диск нормальный - в раиде или SSD).. (37)+1 |
|||
46
ansh15
16.05.13
✎
11:29
|
(45) Ну, как бы не совсем на ветер, все-таки до 3.8 ГГц в турботежиме разгоняется, правда, на одном-двух ядрах, если все ядра задействуются, то частота ниже. И кэша побольше на процессоре будет. Побыстрее будет какое-то время.
(37) А что, разгоняют: http://www.ixbt.com/news/hard/index.shtml?16/23/14 Правда, надо будет еще станцию для получения жидкого азота прикупить и процессоров коробку... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |