Тормоза 1С в SQL #202812


#0 by Rizvan
Использую 1С:Торговлю и склад 9,2; 25 релиз, в базе достаточно много расходных накладных с табличной частью 1800 строк на проведение каждой из в базе SQL них тратится порядка 6 минут, в DBF 30 секунд. Такое различие в производительности вызвано кривой настройкой SQL, либо эта разница вполне закономерна?
#1 by Rizvan
Сервер двух процесорный Xeon 2х 3200, 4gb оперативка, 5 рейд, база в SQL 500 мб.
#2 by AlekseyPopov
Рассказываю.1.Методы, использованные в модуле проведения документа работают с разной скоростью на дбф и sql режимах. Тебе надо оптимизировать модуль проведения накладной на работу в режиме sql. И уже оптимизированный модуль возможно даст другое соотношение скоростей при проведение (а может и другой знак соотношения скоростей).2.SQL режим хорош при одновременной работе пользователей. Если для проведения ты заодишь в монопольном режиме, то SQL всегда проиграет (даже после оптимизации)3.Массовое перепроведение документов в SQL режиме работает медленно из-за глюка SQL сервера. Это связано с наполнением временных данных во время сессии пользователя.Есть какие-то лекарства - поищи4(Самый важный пункт).1с позваляет писать прямые запросы к SQL, не используя функционал 1с. Можно переписать модуль проведения с использованием 1с++, ToySQL или Rainbow. Тогда скорость проведения возрастет в десятки раз (и обгонит дбф режим). Необходимо принять решение о необходимости такой переработки.Успехов.
#3 by 2Green
я что-то не совсем понимаю, при чём тут прямые запросы и проведение? и о каких способах оптимизации речь? может туплю... если можно, поконкретней, пожалуйста.
#4 by AlekseyPopov
про прямые запросы:При проведении накладной происходит анализ наличия товара на складе. На языке программиста -запрос к базе данных. Вот эта часть как правило самое тягомотное событие. Убираем запрос 1с, ставим запрос ToySQL или 1с++.Про методы оптимизации:В первую очередь это ориентация на запросы к базе данных. Надо убрать все выборки и стократное обращение к БД.
#5 by smaharbA
А запросы быстрее выборки ? Всегда ?
#6 by AlekseyPopov
в SQL режиме при большом объёме данных (а у нас их много) значительно быстрее
#7 by nicxxx
расчет остатков - не самое тормозное мероприятие в ТиС, а вот расчет партий - вот это да, его стоит переписать на прямые запросы
#8 by AlekseyPopov
да, про партии я забыл...
#9 by 2Green
ааааа.... а я на процессе "проведения" зациклился - какие думаю там запросы?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С