Посвящается всем у кого большое количество заказов и/или товаров.
Главная причина — не размер и не фрагментация, а отсутствующие индексы:
- DocumentRows.RowID — 326 908 уникальных значений, но индекса нет. Программа обращается к нему отдельно для каждой партии.
- DocumentRows.SeriesID — используется при проведении, но не индексирован.
- DocLinks.RelatID — участвует в тяжёлом соединении заказов.
- Documents.DocDate — постоянно используется в расчётах периода.
На тестовой копии:
- поиск по RowID: 425 → 3,4 мс, примерно в 125 раз быстрее;
- запрос заказов: более 90 → около 3 секунд;
- расчёт за период после индекса даты: 1828 → 14 мс;
- сжатие уменьшило файл лишь на 0,65%, поэтому регулярное «резание» лечит симптом, а не причину.
Как запустить:
1. Распакуйте ZIP на компьютере.
2. Закройте «Предприниматель 4» на всех компьютерах.
3. Перетащите файл .mdb или .xdb мышью на run-optimizer.bat.
4. Рядом с базой появится имя.optimized.mdb.
