|
Все о ToySQL
| Опубликована: 13.04.2005, отредактирована: 13.04.2005 |
Автор:
|
IT-решения для развивающегося бизнеса. "Комплексная конфигурация для SQL"
Выбирая систему учета для бизнеса,
мы все рано или поздно найдем для себя <1С>:
Е.А. Моисеенко
Что выбрать - файловый режим работы системы и бесполезный трафик, или SQL-серверный подход к организации хранения данных и дополнительное снижение производительности? Этот вопрос не раз задавали себе IT-специалисты, пытаясь определить средства оптимизации своей системы на платформе <1С>. Действительно, выбирать из двух бед (несколько часов на восстановление индексов таблиц или снижение производительности) одну - не самый лучший вариант. Кроме того, при увеличении базы данных до нескольких Гигабайт не остается выбора, поскольку файл-серверный вариант платформы 1С:Предприятие 7.7 не в состоянии работать с большими объемами данных. Пользователям и службам поддержки хотелось бы использовать стабильную к внезапной остановке систему, с более высокой производительностью на базе современных СУБД и широким перечнем возможностей для разработки.
На сегодняшний день специалисты <1С> выделяют три наиболее эффективных (не все из них являются целесообразными) варианта ускорения систем на платформе 7.7:
· увеличение мощности вычислительной техники
· использование терминального режима работы с данными
· оптимизация алгоритмов и использование иных средств обработки данных
Первый вариант является наиболее часто применяемым, однако, также наиболее затратным и, в большинстве случаев, не дающим в связке с 1С желаемого результата. Использование терминального режима работы является хорошим вариантом, но так же требует выделения немалых средств на приобретение аппаратного и программного обеспечения. Однако, у данного решения имеется существенный недостаток: в момент обращения пользователя к заблокированным ресурсам система использует цикл ожидания, который загружает процессор терминального сервера на 100%. Как вы уже догадались, такое поведение платформы 1С:Предприятие 7.7 часто приводит к отказу в обслуживании со стороны сервера. Последний же вариант является наиболее оптимальным с экономической и единственным целесообразным решением с технической точки зрения. Попробуем обосновать это.
Сразу после выпуска комплекта доработок <Комплексная конфигурация для SQL> разработчиками были проведены тестовые испытания. В имеющейся на момент тестирования версии (458.1.1) продукта оптимизированы модули проведения самых <тяжелых> документов:
· <Реализация ТМЦ>;
· <Реализация розница>;
· <Перемещение ТМЦ>;
· <Отчет ККМ>;
· <Чек ККМ>.
Одна из задач тестирования состояла в определении времени проведения документов в стандартной и оптимизированной версии. Кроме того, для объективного анализа методик ускорения системы, использовались терминальный и сетевой режим работы.
Параметры объекта тестирования:
· SQL-серверная версия платформы <1С>, релиз 25;
· размер mdf-файла 959 MB;
· единственный пользователь в разделенном режиме (во всей сети организации);
· очищение буферов SQL SERVER'а после проведения каждого замера.
Тестирование проводилось на программно-аппаратном обеспечении следующей конфигурации:
· сервер:
o MB Gigabyte GA-8IG Intel Springdale-G i865G
o 1*INTEL P4E 3000MHz (3.75*800), L2 cache 1024 Kb;
o RAM 2*512 MB PC3200
o LAN 100 Mbps
o ОС Windows 2003 Server SP1
o СУБД SQL Server 2000 SP4
· рабочая станция:
o MB Acorp 6A815EP1 Intel Solano i815EP
o INTEL Celeron 900MHz (9*100)
o RAM 128 MB
o ОС Windows XP SP2
o LAN 100 Mbps
Для проведения тестов была взята база данных компании оптовой торговли, поэтому проводилось тестирование только двух видов документов: <Реализация ТМЦ> и <Перемещение ТМЦ>. Результаты тестирования отражены в таблице № 1.
Таблица 1. <Время проведения документов в разных режимах>.
|
Документ (количество строк табличной части) |
Терминальный режим доступа |
Сетевой режим доступа |
|
Время проведения документа, мс |
|
Типовой |
Оптимизированный |
Типовой |
Оптимизированный |
|
Итоги актуальны*: |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
|
Реализация ТМЦ (98) |
45036 |
47159 |
6378 |
12482 |
66493 |
92907 |
19432 |
19940 |
|
Реализация ТМЦ (1) |
1430 |
7184 |
1303 |
1748 |
2307 |
7678 |
2177 |
2566 |
|
Перемещение ТМЦ (48) |
884 |
7678 |
802 |
939 |
1569 |
9012 |
1249 |
2171 |
|
Перемещение ТМЦ (1) |
981 |
4254 |
775 |
1978 |
1397 |
4344 |
1214 |
2527 |
* - итоги актуальны: 1 - дата и время документа = моменту точки актуальности итогов;
0 - дата и время документа < момента точки актуальности итогов.
Примечание: поскольку статья не затрагивает описания модулей проведения документов, огромная просьба проводить анализ по данным горизонталей таблицы.
Попробуем провести анализ полученных данных. Как показано на графике №1, производительность проведения оптимизированного режима (при терминальном доступе к базе данных) до 20% выше, чем стандартных методов при работе в оперативном режиме (итоги актуальны), а при работе <задним числом> (график № 2), прирост производительности составил от 200 до 800%.
График № 1 <Анализ производительности в актуальном режиме проведения>
В графике № 1 отсутствуют итоги тестирования 98-строчного документа <Реализация ТМЦ>. Данные имеют более высокую размерность, поэтому анализ производительности отражен отдельно, в графике № 3. Здесь мы можем наблюдать уменьшение времени проведения документа в 7 раз. Анализируя прирост производительности при проведении документов, можно с уверенностью сказать, что при увеличении количества строк в документе, относительная разница во времени проведения будет увеличиваться.
График № 2 <Анализ производительности в неактуальном режиме>
График № 3 <Анализ производительности проведения на ТА документа <Реализация ТМЦ>
Следующим шагом оценки полученных в ходе тестирования итогов предлагается проанализировать зависимость использованных режимов работы: терминальный и сетевой.
Примечание: главным отличием между терминальным и сетевым режимом работы является - исключение передачи по сети немалых объемов промежуточных (избыточных) данных, используемых стандартными средствами платформы 1С:Предприятие 7.7, на локальные рабочие станции. При терминальном режиме работы, промежуточные итоги копируются в личную папку пользователя в dbf-файл, затем обрабатываются, что является огромным минусом платформы.
На графике № 4 прослеживается незначительная зависимость режимов работы (ускорение не более чем в 2 раза), при этом прирост сетевого + оптимизированного режима работы выше терминального + стандартного в 2-3,5 раза (график № 5).
График № 4 <Зависимость сетевого и терминального режима работы пользователей <1С>
График № 5 <Отношение неоптимизированного терминального и оптимизированного сетевого режима работы>
Отсюда можно сделать вывод, что дорогостоящее решение организации терминального режима работы пользователей (здесь вас подстерегают огромные затраты на оборудование и серверное программное обеспечение) в несколько раз (точнее в десятки раз) менее выгодней, чем использование режима оптимизированного проведения. Кроме того, как было подмечено в начале статьи, не всегда, вкладывая средства в оборудование, мы получаем линейный прирост производительности в приложении 1С:Предприятие 7.7, точнее никогда не получим.
Следует отметить, что для тестирования выбрана база данных достаточно скромных размеров, и при больших ее размерах, разница во времени проведения будет увеличиваться. Кроме того, в учетной политике компании, которая предоставила свою базу данных для тестирования, выбран метод ведения партионного учета <по средней>, что избавляет систему от подбора партий для списания при проведении документов. Значит, при методе расчета себестоимости FIFO или LIFO относительное время проведения документов будет больше различаться. Также при оснащении организации более производительным сервером обработка запросов будет производиться значительно быстрее (Microsoft позаботился об этом), чего нельзя сказать о стандартных методах обработки данных.
Очевидно, из представленных в статье решений по оптимизации, методика оптимизированного проведения наиболее экономически выгодна и эффективна. Кроме того, в скором времени на рынок будет представлен обширный набор (около 10) оптимизированных модулей проведения документов, а так же внедрена возможность организации параллельного проведения.
продолжение следует:
Статья подготовлена
ООО <ИТ-Решения>, г. Барнаул
при активном участии
Павла Шемякина
наверх
|