Апдейтер поддерживает инкрементальное обновление справочника компаний (suggestions_party
и cdi_egrnorm
). Инкременты — это ежесуточные обновления, которые содержат только то, что поменялось за прошедшие сутки. Благодаря этому они, как правило, небольшие, и загружаются в течение нескольких минут. В редких случаях, если налоговая внесла много изменений за сутки, инкремент может быть сопоставим по размеру и времени загрузки с полным справочником.
Справочники с инкрементом называются suggestions_partyinc
и cdi_egrnorminc
. Скачиваются и загружаются аналогично полному справочнику:
./updater download suggestions_partyinc ./updater update suggestions_partyinc ./updater download cdi_egrnorminc ./updater update cdi_egrnorminc
В журнале «Подсказок» suggestions.log
загрузка инкремента выглядит так:
10.04.2021/06:12:19 127.0.0.1#anonymous - - (ResourceManagementMediator-159) [INFO] (IndexManager) Process egr from '/opt/suggestions/dictionaries/party/egr-sgt-20210410-bson-inc.dic' (10.04.2021 00:00:00) 10.04.2021/06:12:27 127.0.0.1#anonymous - - (ResourceManagementMediator-159) [INFO] (AsyncIndexModifier) -- Index egr entities in 2 threads 10.04.2021/06:12:38 127.0.0.1#anonymous - - (ResourceManagementMediator-159) [INFO] (AsyncIndexModifier) -- Indexing egr entities took: 11.73 s, modified: 78908, removed: 373. Average speed: 7207.364 records/sec 10.04.2021/06:12:39 127.0.0.1#anonymous - - (ResourceManagementMediator-159) [INFO] (IndexManager) Processing egr completed at 20.10 s
Инкременты поддерживаются только для компаний. Для адресов и прочих справочников инкрементов нет.
Как загружаются инкременты
Задача download
всегда скачивает самый свежий инкремент. Поэтому, чтобы не ничего пропустить, запускайте ее каждый день.
Задача update
пытается загрузить все инкременты, которые скачаны на данный момент. Например, в такой ситуации:
ls -1 /opt/suggestions/dictionaries/party/ egr-sgt-20210404-bson-inc.dic egr-sgt-20210405-bson-inc.dic egr-sgt-20210406-bson-inc.dic egr-sgt-20210407-bson-inc.dic egr-sgt-20210408-bson-inc.dic
update
последовательно загрузит инкременты за 4–8 апреля. Если какие-то из них уже были загружены, update их проигнорирует.
Если какого-то инкремента не хватает, более новые инкременты не смогут загрузиться. Например, в такой ситуации:
ls -1 /opt/suggestions/dictionaries/party/ egr-sgt-20210404-bson-inc.dic egr-sgt-20210405-bson-inc.dic # пропущен инкремент за 06.04 egr-sgt-20210407-bson-inc.dic egr-sgt-20210408-bson-inc.dic
update
загрузит только инкременты за 4–5 апреля, после чего остановится. В журнале suggestions.log
при этом будут записи вида:
09.04.2021/06:12:19 127.0.0.1#anonymous - - (ResourceManagementMediator-159) [INFO] (IncrementResourceDescriptor) INCREMENT egr '/data/dictionaries/party/egr-sgt-20210407-bson-inc.dic' (07.04.2021 00:00:00) ignored because of invalid export hash: new = 53725f673bf6e23e30e0b3e30d59bf82, current = 4575048c53809f57c6ef39fe7bf664eb 09.04.2021/06:12:19 127.0.0.1#anonymous - - (ResourceManagementMediator-159) [INFO] (IncrementResourceDescriptor) INCREMENT egr '/data/dictionaries/party/egr-sgt-20210408-bson-inc.dic' (08.04.2021 00:00:00) ignored because of invalid export hash: new = ccbc8ad003527ecdb4129516890e381a, current = 4575048c53809f57c6ef39fe7bf664eb
Рекомендации по загрузке инкрементов
- Запускайте
download
инкрементальных справочников каждый день, чтобы не было пропусков. - Запускайте
update
инкрементальных справочников каждый день, чтобы обновлять справочник. - Раз в неделю скачивайте и обновляйте полные справочники (
suggestions_party
иcdi_egrnorm
) вместо инкремента.