Хранилище данных — это отдельная база, в которую по расписанию складывают копии данных из 1С, CRM и таблиц, и в которой ничего никогда не переписывается задним числом. Витрина — плоская таблица внутри этого хранилища, посчитанная заранее под один конкретный отчёт. Всё остальное, что говорят про хранилища, — детали реализации.
Вопрос, который владелец задаёт первым, звучит справедливо: зачем платить за ещё одну базу, если все данные уже есть в 1С. Ответ короткий: 1С отвечает на вопрос «как дела сейчас», а управленческая отчётность спрашивает «как было тогда». Это разные вопросы, и учётная система на второй отвечать не обязана — она и не отвечает.
Ниже — разбор на одной модельной компании: оптовик, 40 человек, 1С:УТ 11 как основная учётная система, amoCRM в продажах, телефония Mango Office и две живые таблицы отделов. За последние 12 месяцев в 1С проведено около 84 000 документов, справочник контрагентов — 12 000 карточек, номенклатуры — 8 400 позиций. Все числа дальше привязаны к этим вводным.
Три слова, которые надо развести
Половина недопонимания в разговоре с подрядчиком снимается тремя определениями. Их стоит прочитать один раз и потом требовать, чтобы в коммерческом предложении слова употреблялись именно так.
Отдельная база, куда по расписанию копируются данные из учётных систем. Главное её свойство — не скорость и не объём, а то, что загруженное не правится никогда. Записи только добавляются, поэтому по хранилищу всегда можно восстановить, что показывала система на любую прошедшую дату.
Готовая плоская таблица под один вопрос: продажи по менеджерам и месяцам, дебиторка по срокам, остатки по складам. В витрине уже нет соединений и вычислений на лету — поэтому дашборд открывается за секунду, а все отчёты берут одну и ту же цифру из одного места.
Регламентная процедура «забрать — привести к общему виду — положить». Она запускается по расписанию, ведёт журнал попыток и умеет сообщать о сбое. Технические способы забрать данные из 1С и их цена разобраны отдельно — четыре способа и что они стоят.
Внутри хранилища данные лежат тремя уровнями: сырой слой, очищенный и витрины. Устройство этих слоёв — тема соседнего материала, здесь важно только одно: сырой слой хранит выгрузку в том виде, в каком её отдала система, и именно он делает возможным всё остальное.
Путь одной строки: продажа за вторник
Проще всего понять устройство на судьбе одной строки. Первого сентября менеджер провёл в 1С:УТ 11 документ «Реализация № РН-4417»: 40 упаковок по 3 250 ₽, склад «Основной», клиент — ООО «Ромашка». Сумма строки — 130 000 ₽.
| Где лежит строка | В каком виде | Что с ней может произойти |
|---|---|---|
| Документ в 1С:УТ 11 | Строка табличной части: номенклатура, 40 шт., 3 250 ₽, склад «Основной» | Документ можно перепровести, исправить, отменить — след останется только в журнале регистрации |
| Файл ночной выгрузки, 02:00 | Та же строка плюс отметка времени и признак источника | Ничего: файл забирается один раз и складывается в архив выгрузок |
| Сырой слой хранилища, 03:20 | Копия строки с меткой «загружено 02.09.2026 03:20» | Не правится никогда. Именно сюда возвращаются, когда цифру оспорили |
| Очищенный слой | Контрагент склеен с компанией из amoCRM, единица измерения приведена к общему справочнику | Может быть помечена как отменённая, но не исчезает |
| Витрина «Продажи по менеджерам и месяцам» | Одна ячейка: сентябрь, менеджер Петров — 130 000 ₽ | Пересчитывается по регламенту после каждой загрузки |
| Плитка на дашборде | 130 000 ₽ и подпись «данные на 02.09.2026, 04:10» | Обновляется вместе с витриной |
Пятого сентября выясняется, что упаковок было 38, а не 40. Менеджер правит документ, сумма становится 123 500 ₽. Шестого сентября витрина пересчитана, на дашборде — 123 500 ₽. И вот здесь начинается то, ради чего хранилище вообще существует: в сыром слое лежат обе версии, и на вопрос «почему на планёрке 2 сентября говорили про 130 000 ₽» есть документальный ответ, а не спор по памяти.
Горизонтальная лента времени с шестью отметками. «01.09 — документ РН-4417 проведён в 1С:УТ 11, 40 шт. × 3 250 ₽ = 130 000 ₽». «02.09, 02:00 — ночная выгрузка». «02.09, 03:20 — строка в сыром слое, версия 1». «02.09, 04:10 — витрина и дашборд показывают 130 000 ₽». «05.09 — документ исправлен: 38 шт. = 123 500 ₽». «06.09, 04:10 — витрина показывает 123 500 ₽, в сыром слое версия 2». Под лентой две параллельные полосы: верхняя «1С:УТ 11 — всегда только последняя версия», нижняя «Хранилище — обе версии с датами». Чертёжный стиль, все подписи по-русски.
Три задачи, которые копией базы не решаются
Ради удобства чтения отчётов хранилище не строят — для этого достаточно выгрузки в таблицу. Его строят ради трёх вещей, и каждая из них рано или поздно всплывает в разговоре про премии или закрытие месяца.
- 1История справочников: кем клиент был тогда, а не сейчас
1С хранит текущее состояние карточки. Если 12 марта у контрагента сменился ответственный менеджер, то февральский отчёт, построенный сегодня, отдаст февральские продажи новому менеджеру — молча и без предупреждения. Хранилище фиксирует, каким справочник был на дату операции. Пока справочники не приведены в порядок, эта история будет фиксировать беспорядок — с чего начинать, разобрано в материале про то, что дашборд начинается со справочников.
- 2Склейка источников: где живёт таблица соответствий
Контрагент из 1С и компания из amoCRM — одна организация, но два разных идентификатора. Соответствие между ними надо где-то хранить, вести и версионировать. В боевой 1С этой таблице не место: её туда никто не пустит, а если пустит — она переживёт максимум одно обновление конфигурации.
- 3Неизменность закрытых периодов
Возврат, проведённый 3 сентября задним числом 29 августа, меняет августовский отчёт бесшумно. В хранилище остаётся версия августа на дату закрытия и отдельно — пересчитанная версия, с отметкой, когда и почему пересчитали. Именно эту разницу разбирает материал о том, почему одна цифра в трёх системах разная.
В модельной компании за 12 месяцев задним числом исправлено или перепроведено 1 340 документов из 84 000 — это 1,6 % потока. Звучит безобидно ровно до момента, когда кто-то печатает отчёт за прошлый квартал повторно.
Отчёт по выручке за март, снятый 3 апреля, показывал 17,6 млн ₽. Тот же отчёт, построенный из той же 1С 20 сентября, показывает 17,38 млн ₽. Разница 220 000 ₽ спрятана в семи документах, исправленных задним числом. Премии по итогам марта считали по первой цифре, а годовой отчёт соберётся по второй — и обосновать расхождение будет нечем.
Чем хранилище отличается от копии базы 1С
«Сделайте копию базы и стройте отчёты по ней» — самое частое возражение, и в одном пункте оно верное: копия действительно снимает нагрузку с боевой базы. На остальных трёх задачах она не помогает вообще, потому что копия — это та же структура на тот же момент времени.
| Задача | Копия боевой базы 1С | Хранилище |
|---|---|---|
| Не мешать работе пользователей | Да, ради этого её и делают | Да |
| Хранить состояние справочников на прошлые даты | Нет: справочники в копии такие же, как сегодня | Да, срез на каждую дату загрузки |
| Соединить данные 1С, CRM и таблиц отделов | Нет: в копии только то, что было в 1С | Да, ради этого нужен очищенный слой |
| Показать, что отчёт менялся, и когда именно | Нет: перезаписывается целиком при каждом обновлении | Да, версии лежат рядом |
| Пережить обновление конфигурации 1С | Структура меняется вместе с боевой базой, отчёты ломаются | Ломается только слой загрузки, витрины и дашборды живут |
| Цена вопроса | Практически бесплатно, если резервная копия и так снимается | Инфраструктура от 12 000 ₽/мес плюс сопровождение |
Отсюда практический вывод. Если у вас один источник, отчётность нужна за текущий период и никто не задаёт вопрос «а как было в марте», копии базы честно достаточно, и платить за хранилище не надо. Как только источников становится два и появляется управленческая отчётность с историей — копия перестаёт закрывать задачу, и её приходится достраивать до хранилища, обычно уже в спешке.
Две колонки-карточки: слева «Копия боевой базы 1С», справа «Хранилище данных». Пять одинаковых строк-задач между ними: «Не мешать пользователям», «История справочников на прошлые даты», «Склейка 1С, CRM и таблиц», «Видно, что отчёт менялся», «Переживает обновление конфигурации». Напротив каждой — отметка «да» или «нет» в соответствующей колонке: у левой колонки одна отметка «да» и четыре «нет», у правой пять «да». Внизу строка цены: слева «почти бесплатно», справа «от 12 000 ₽/мес инфраструктура». Чертёжный стиль, подписи по-русски.
Сколько данных у вас на самом деле
Здесь стоит развеять главный миф. Хранилище нужно не потому, что данных много: у компании на 40 человек их мало. Считаем по модельным вводным — 610 000 строк табличных частей документов в год, ежедневный срез остатков по 8 400 позициям на трёх складах, движения регистров, сделки и события amoCRM, журнал звонков. Всё вместе даёт около 2,4 ГБ в год чистых данных, с индексами и служебными таблицами — порядка 5 ГБ в год.
| Размер компании | Что копится за год | Объём через 3 года | Чего достаточно |
|---|---|---|---|
| 40 человек, одно юрлицо, 1С:УТ и CRM | ≈ 5 ГБ | ≈ 15 ГБ | PostgreSQL, 4 vCPU / 16 ГБ, диск 200 ГБ |
| 80–120 человек, 3 юрлица, склад с партиями | 20–25 ГБ | 60–75 ГБ | 8 vCPU / 32 ГБ, диск 500 ГБ |
| 200 человек, розница с чеками или маркетплейсы | 80–100 ГБ | 250–300 ГБ | 16 vCPU / 64 ГБ, диск 1 ТБ, отдельный сервер |
Обычная PostgreSQL на четырёх ядрах спокойно держит сотни гигабайт витрин и десятки одновременных запросов дашборда. Если в коммерческом предложении на компанию до 200 человек появились слова про кластер, распределённую обработку или отдельный сервер под каждый слой — попросите показать расчёт объёма в гигабайтах и число одновременных пользователей. Обычно после этого вопроса конфигурация уменьшается.
Облако или свой сервер: три года владения
Выбор между управляемой базой в российском облаке и своим сервером решается не идеологией, а тем, есть ли у вас человек, который будет обновлять СУБД и проверять резервные копии. Считаем на модельной компании и горизонте 36 месяцев, ставка инженера — 3 500 ₽/час.
Оговорка, которая переворачивает результат. Если сервер уже стоит и системный администратор уже в штате, а его три часа в месяц никто отдельно не тарифицирует, из правой колонки уходят 378 000 ₽ — и свой сервер обходится в 320 400 ₽, то есть на 144 000 ₽ дешевле облака. Ровно поэтому вопрос «облако или своё» бессмысленно решать в отрыве от вопроса «кто это будет администрировать». Та же логика подробно разобрана в материале про стоимость владения автоматизацией.
Отдельно про размещение. Если в хранилище попадают имена, телефоны и адреса клиентов — а они попадают почти всегда, потому что без контрагента отчёт не собрать, — база обязана быть на территории России, и облачный провайдер должен быть российским. Как мы оформляем доступы, поручение обработки и разграничение прав, описано на странице про безопасность и работу с данными.
Три составных столбца, ось в рублях. Столбец «Облако — 464 400 ₽» из сегментов: управляемая PostgreSQL 432 000, объектное хранилище 32 400. Столбец «Свой сервер — 698 400 ₽» из сегментов: сервер 288 000, администрирование 378 000, резервные копии 32 400. Столбец «Свой сервер, если админ уже в штате — 320 400 ₽» из сегментов: сервер 288 000, резервные копии 32 400. Между первым и вторым столбцом выносная подпись «разница 234 000 ₽», между первым и третьим — «третий вариант дешевле облака на 144 000 ₽». Все суммы подписаны, единицы — рубли.
Кто обслуживает хранилище после запуска
Хранилище — это не коробка, которую поставили и забыли, а регламентная процедура, которая исполняется каждую ночь. У неё должно быть расписание, журнал и человек, который получает уведомление о сбое. Типовой суточный контур выглядит так.
- 102:00 — старт загрузки в согласованное окно регламентных работ, когда в 1С никто не работает.
- 203:20 — выгрузки лежат в сыром слое, записан объём и число строк по каждому объекту.
- 304:10 — пересчитаны витрины, обновлены дашборды.
- 404:30 — автоматическая проверка: число документов и суммы контрольных итогов сходятся с источником.
- 504:35 — уведомление ответственному: «загрузка прошла» или «сбой на объекте „реализации“, попытка 2 из 2».
- 607:00 — крайний срок. Если к этому времени загрузка не прошла, дашборд показывает не вчерашние цифры, а плашку с датой последних достоверных данных.
Последний пункт самый важный и его чаще всего вырезают из сметы как необязательный. Вырезают зря: молча показанные вчерашние цифры хуже, чем честно пустая плитка. Коммерческий директор в 10 утра видит на дашборде провал продаж, собирает совещание — и через три часа выясняется, что провалилась не выручка, а ночная выгрузка. Такой разбор стоит 3–4 часа работы инженера, то есть 10 500–14 000 ₽, и это меньшая часть ущерба.
Вертикальная схема ночного цикла. Сверху вниз блоки с временем слева: «02:00 старт загрузки», «03:20 сырой слой заполнен», «04:10 витрины пересчитаны», «04:30 сверка контрольных итогов с источником». От блока сверки две ветки. Левая «Сходится» ведёт к блоку «04:35 уведомление: загрузка прошла» и дальше к «Дашборд: данные на сегодня». Правая «Не сходится» ведёт к блоку «Повторный запуск, до 2 попыток», от него — к «Уведомление ответственному» и к «07:00 крайний срок: дашборд показывает дату последних достоверных данных». Внизу подпись: «Плашка с датой честнее, чем вчерашние цифры без предупреждения». Чертёжный стиль, подписи по-русски.
Стоимость сопровождения суточного контура — около 20 000 ₽ в месяц: разбор сбоев загрузки, правка витрин при появлении новых складов и статей затрат, добавление метрик по запросу. Со стороны заказчика нужен один назначенный человек, который получает уведомления и знает, кому звонить, — обычно это финансовый директор или руководитель ИТ. Что ещё входит в контур наблюдения за автоматизацией, разобрано в материале про мониторинг автоматизации.
Когда хранилище не нужно
Отдельная база под аналитику — не обязательный этап взросления компании. Есть четыре ситуации, в которых её строить рано, и в каждой деньги правильнее потратить на другое.
- Один источник и один отчёт. Вся отчётность собирается из 1С, вопрос «как было в марте» никто не задаёт. Достаточно копии базы и выгрузки в таблицу — разница в цене за три года составляет сотни тысяч рублей, и они ничем не оправданы.
- Справочники не в порядке. Пока один клиент существует в трёх написаниях, хранилище честно сохранит историю этого беспорядка. Сначала — порядок в справочниках и семь проверок качества данных, потом инфраструктура.
- Нет человека, который отвечает за цифру. Хранилище не назначает владельца показателя и не пишет за вас определение выручки. Без этого оно даст ещё одну версию цифры вместо трёх существующих.
- Отчёт нужен раз в месяц и на одну страницу. Ночная загрузка, витрины и мониторинг — это ответ на ежедневную потребность. Для ежемесячного свода дешевле два часа работы аналитика.
И обратный признак, по которому видно, что тянуть уже не стоит: если хотя бы раз возник спор «в апреле в отчёте была другая цифра» и его нечем закрыть, вы уже платите за отсутствие хранилища — временем руководителей на планёрках и решениями, принятыми по данным, которых больше нет.
Учётная система обязана быть правой сегодня. Хранилище обязано помнить, кто был прав в марте.
