← Все новости
Левиафан закрытия месяца, или Три охотника за временем

Левиафан закрытия месяца, или Три охотника за временем

Меня зовут Стелла. Несколько лет назад — неважно, сколько именно — я работала главным бухгалтером розничной сети, и почти каждый конец месяца я отправлялась на охоту. Не за китом, нет. За временем, которое у меня крали.Каждый первый рабочий день нового месяца я приходила в офис затемно, наливала кофе и запускала помощник закрытия. Потом садилась и ждала. Три часа и шесть минут — таков был обычный срок. За это время сервер, стоявший в прохладной комнате этажом ниже, перебирал сорок тысяч документов, как старый библиотекарь, который перечитывает каждую карточку каталога, хотя половину мог бы пропустить. Я не знала этого тогда. Я просто ждала и смотрела, как ползёт прогресс‑бар, медленнее, чем тень от облачного столба пересекает залив в штиль.База наша была тяжела — семьдесят гигабайт, одна организация, но поток поступлений по эквайрингу шёл, как Гольфстрим: неутомимо, непрерывно, ежедневно. PostgreSQL под Linux, платформа 8.3.27, оценка МПЗ по ФИФО. Сервер 1С имел четырнадцать ядер, но во время перепроведения работал, по сути, одним. Как галера с сотней гребцов, где весло держит только один, а остальные смотрят на волны.Я не раз говорила нашим технарям: три часа — это невыносимо. Закрытие месяца должно быть рутиной, а не одиссеей. Мне отвечали: «База большая, документов много, так работает 1С». Мне хотелось спросить: а почему тогда остальные документы проводятся за доли секунды, а банковские выписки тянутся, как смола в декабре? Но я не умела читать технологические журналы и не знала слов «pg_stat_statements» или «auto_explain». Я просто знала, что где‑то в недрах базы прячется зверь, пожирающий моё время. Читать далее