Повторяющиеся задачи по обслуживанию сервисов аналитики

Многие задачи, связанные с сервисами аналитики Apigee, можно выполнять с помощью стандартных утилит Postgres. Обычные задачи по обслуживанию базы данных Аналитики, такие как реорганизация базы данных с помощью команды VACUUM, переиндексация и обслуживание файлов журналов, выполняются так же, как и для любой базы данных PostgreSQL. Информацию о регулярном обслуживании Postgres можно найти на странице http://www.postgresql.org/docs/9.1/static/maintenance.html.

Дополнительную информацию об обслуживании базы данных PostgreSQL можно найти на странице http://www.postgresql.org/docs/9.1/static/maintenance.html.

Удаление данных Аналитики

По мере того как в репозитории Apigee будет накапливаться все больше данных аналитики, вам может понадобиться удалить данные, срок хранения которых превышает заданный интервал. Выполните следующую команду, чтобы удалить данные для определенной организации и среды:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge org_name env_name number_of_days_to_retain

Чтобы запустить скрипт, введите следующую команду:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge org_name env_name number_of_days_to_retain [Delete-from-parent-fact - N/Y] [Confirm-delete-from-parent-fact - N/Y]

Скрипт имеет следующие параметры:

  • Delete-from-parent-fact Значение по умолчанию: "Нет". Также будут удалены данные старше срока хранения из родительской таблицы фактов.
  • Skip-confirmation-prompt. Значение по умолчанию: "Нет". Если выбрано значение "Нет", скрипт запросит подтверждение перед удалением данных из родительского факта. Установите значение "Да", если скрипт удаления автоматизирован.

Эта команда запрашивает таблицу childfactables в схеме analytics, чтобы определить, какие разделы необработанных данных охватывают даты, для которых нужно выполнить удаление данных, а затем удаляет эти таблицы. После удаления таблиц записи в childfactables, связанные с этими разделами, будут удалены.

Childfactables – это данные фактов, разделенные по дням. Каждый день создаются новые разделы, и данные добавляются в таблицы с ежедневным разделением. Поэтому, когда старые данные фактов станут не нужны, вы сможете удалить соответствующие дочерние таблицы фактов.

В скрипте доступны следующие параметры (начиная с версии 4.51.00.00):

  • "Удалить из родительской таблицы фактов". Значение по умолчанию – "Нет". Также удаляет данные старше срока хранения из родительской таблицы фактов.
  • Confirm-delete-from-parent-fact. Значение по умолчанию – "Нет". Если выбрано "Нет", скрипт будет запрашивать подтверждение перед удалением данных из родительского факта. Установите значение "Да", если скрипт удаления автоматизирован.

Как удалить данные из сводной таблицы

Агрегированные таблицы обычно занимают меньше места, чем таблицы фактов. Однако если вы хотите удалить старые данные из агрегированных таблиц, выполните следующую команду:

/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql agg-data-purge org_name env_name days_to_retain [confirm_data_deletion-Y/N]

где confirm_data_deletion – необязательный параметр, который позволяет запросить подтверждение. Значение по умолчанию – N.