|   |   | 
| 
 | Масштабирование сервера для сокращения времени перепроведения доков | ☑ | ||
|---|---|---|---|---|
| 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 Правда, надо будет еще станцию для получения жидкого азота прикупить и процессоров коробку... | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |