Резервное копирование и восстановление хранилищ данных

Этот раздел посвящен резервному копированию и восстановлению хранилищ данных FindFace Security. Система использует следующие хранилища:

  • Биометрическая база данных на основе Tarantool, в которой хранятся биометрические образцы (векторы признаков) и события идентификации лиц.
  • Основная база данных системы на основе PostgreSQL, в которой хранятся внутренние данные системы, досье, учетные записи пользователей и настройки камер.
  • Каталог /var/lib/ffsecurity/uploads, в котором хранятся загруженные в досье фотографии, видеофайлы, а также такие артефакты событий, как полные кадры, миниатюры лиц и нормализованные изображения лиц.
  • Каталог /var/lib/ffupload/, в котором хранятся только такие артефакты событий, как миниатюры лиц.

В этом разделе:

Резервное копирование и восстановление биометрической базы данных

В биометрической базе данных на основе Tarantool есть 3 галереи:

  • ffsec_dossier_face: биометрические образцы, извлеченные из фотографий в досье.
  • ffsec_events: биометрические образцы, извлеченные из лиц, обнаруженных на видео.
  • ffsec_persons: центроиды персон (виртуальные биометрические образцы, усредненные по всем лицам персоны) и метаданные.

Функционал резервного копирования и восстановления базы данных позволяет при необходимости восстанавливать содержимое данных галерей.

Для предотвращения потери данных создание резервной копии биометрической базы данных рекомендуется выполнять по крайней мере 1 раз в неделю.

Резервную копию базы данных также нужно создать перед миграцией системы на другую биометрическую модель.

Утилиты

Для резервного копирования и восстановления биометрической базы данных FindFace Security необходимы следующие утилиты:

  1. резервное копирование: findface-storage-api-dump,
  2. восстановление: findface-storage-api-restore.

Данные утилиты автоматически устанавливаются вместе с компонентом findface-sf-api.

Резервное копирование базы данных

Для резервного копирования биометрической базы данных используйте утилиту findface-storage-api-dump следующим образом:

Важно

Сервисы findface-tarantool-server и findface-sf-api должны быть активны.

Примечание

Резервное копирование можно также применить к распределенной базе данных. В этом случае утилита findface-storage-api-dump создаст резервные копии всех шардов, указанных в /etc/findface-sf-api.ini.

  1. На сервере с установленным findface-sf-api создайте каталог для хранения резервных копий (/etc/findface_dump в примере ниже).

  2. Запустите утилиту findface-storage-api-dump следующей командой:

    sudo findface-storage-api-dump -output-dir=/etc/findface_dump -config /etc/findface-sf-api.ini
    

    Утилита создаст резервные копии всех галерей и запишет их в указанный каталог в виде файлов с соответствующими именами ffsec_dossier_face.json, ffsec_events.json и ffsec_monitoring.json. Эти файлы содержат все данные, необходимые для полного восстановления галерей.

Восстановление базы данных

Для восстановления биометрической базы данных выполните следующие действия:

  1. Используя HTTP API, создайте галереи в базе данных: ffsec_dossier_face, ffsec_events, ffsec_monitoring.

    Совет

    См. HTTP API.

    curl -D - -X POST -s 'http://localhost:8101/v2/galleries/add/ffsec_dossier_face'
    curl -D - -X POST -s 'http://localhost:8101/v2/galleries/add/ffsec_events'
    curl -D - -X POST -s 'http://localhost:8101/v2/galleries/add/ffsec_monitoring'
    
  2. Запустите утилиту findface-storage-api-restore для всех файлов в папке с резервными копиями:

    sudo findface-storage-api-restore -config /etc/findface-sf-api.ini /etc/findface_dump/*.json
    

    Процесс восстановления можно при необходимости прервать с сохранением выполненной работы. Для того чтобы продолжить процесс после прерывания, снова запустите утилиту findface-storage-api-restore.

Резервное копирование и восстановление основной базы данных

Для резервного копирования базы данных PostgreSQL выполните команду:

sudo -u postgres pg_dump ffsecurity > ffsecurity_postgres_backup.sql

Для восстановления базы данных PostgreSQL выполните команду:

psql -d ffsecurity -f ffsecurity_postgres_backup.sql

Резервное копирование артефактов

Артефакты FindFace Security, такие как загруженные фотографии, видеофайлы и артефакты событий (полные кадры, миниатюры лиц и нормализованные изображения лиц) хранятся в следующих каталогах:

  • /var/lib/ffsecurity/uploads
  • /var/lib/ffupload/

Для резервного копирования артефактов выполните команду:

tar -cvzf var_lib_ffsecurity_uploads.tar.gz /var/lib/ffsecurity/uploads
tar -cvzf var_lib_ffupload.tar.gz /var/lib/ffupload/