Мастер-Тур(15):Настройка заданий — различия между версиями
[досмотренная версия] | [досмотренная версия] |
Aefremov (обсуждение | вклад) (→Список стандартных заданий (Jobs)) |
Biryukov (обсуждение | вклад) (→Список стандартных заданий (Jobs)) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 33: | Строка 33: | ||
* @beginjob = '23:00:00' /* Время, с которого можно делать чистку. */ , | * @beginjob = '23:00:00' /* Время, с которого можно делать чистку. */ , | ||
* @endjob = '08:00:00' /* Время, во сколько чистка должна остановиться. */, | * @endjob = '08:00:00' /* Время, во сколько чистка должна остановиться. */, | ||
− | * @DaysAgo = '730' /* Количество дней, до которых будет проводиться удаление. Текущая дата минус указанное число дней. Проверяются 3 даты: дата действия по,дата продажи по, дата заезда по. | + | * @DaysAgo = '730' /* Количество дней, до которых будет проводиться удаление. Текущая дата минус указанное число дней. Проверяются 3 даты: дата действия по, дата продажи по, дата заезда по. */, |
− | * @DateAgo = '' /* '2010-01-01' (формат для примера). Дата, до которой производится удаление. Значение приоритетней над @ | + | * @DateAgo = '' /* '2010-01-01' (формат для примера). Дата, до которой производится удаление. Значение приоритетней над @DaysAgo. Проверяются 3 даты: дата действия по, дата продажи по, дата заезда по. */, |
* @cleancosts = 1 /* Включить, если нужно чистить цены */, | * @cleancosts = 1 /* Включить, если нужно чистить цены */, | ||
* @cleanhistory = 1 /* Включить, если нужно чистить историю */, | * @cleanhistory = 1 /* Включить, если нужно чистить историю */, | ||
Строка 60: | Строка 60: | ||
* @beginjob = '23:00:00' /* Время, с которого можно делать чистку. */ , | * @beginjob = '23:00:00' /* Время, с которого можно делать чистку. */ , | ||
* @endjob = '08:00:00' /* Время, во сколько чистка должна остановиться. */, | * @endjob = '08:00:00' /* Время, во сколько чистка должна остановиться. */, | ||
− | * @DaysAgo = '30' /* Количество дней. Текущая дата минус указанное число. Проверяются 3 даты: дата действия по,дата продажи по, дата заезда по.*/, | + | * @DaysAgo = '30' /* Количество дней. Текущая дата минус указанное число. Проверяются 3 даты: дата действия по, дата продажи по, дата заезда по. */, |
− | * @DateAgo = '' /* '2010-01-01' (формат для примера). Дата, до которой производится удаление. Значение приоритетней над @ | + | * @DateAgo = '' /* '2010-01-01' (формат для примера). Дата, до которой производится удаление. Значение приоритетней над @DaysAgo. Проверяются 3 даты: дата действия по, дата продажи по, дата заезда по. */, |
* @cleancosts = 1 /* Включить, если нужно чистить цены */, | * @cleancosts = 1 /* Включить, если нужно чистить цены */, | ||
* @deactivate = 1 /* Включить, если надо деактивировать ценовые блоки от даты удаления до текущего момента */, | * @deactivate = 1 /* Включить, если надо деактивировать ценовые блоки от даты удаления до текущего момента */, | ||
Строка 91: | Строка 91: | ||
* @CountLines = 30000 /* Величина блока для удаления */ | * @CountLines = 30000 /* Величина блока для удаления */ | ||
Также после выполнения задания по очистке истории рекомендуется отдельно последовательно выполнить скрипты ''Defrag_history.sql'' и ''Defrag_HistoryDetail.sql'' для дефрагментации таблиц истории (строго во внерабочее время). Эти скрипты можно запросить у своего куратора. | Также после выполнения задания по очистке истории рекомендуется отдельно последовательно выполнить скрипты ''Defrag_history.sql'' и ''Defrag_HistoryDetail.sql'' для дефрагментации таблиц истории (строго во внерабочее время). Эти скрипты можно запросить у своего куратора. | ||
+ | |- | ||
+ | | Название БД_CleanQuotas<br /> | ||
+ | '''Обрабатывается с релиза 15.9''' | ||
+ | | SET DATEFORMAT YMD | ||
+ | Maintenance_CleanQuotas_job<br /> | ||
+ | Ниже задаются настройки (описаны в описании) | ||
+ | | 1 сутки<br />(ночью)<br /> | ||
+ | | Удаляет данные из таблиц, связанных с квотами, историю квот, ServiceByDate и т.д. | ||
+ | Параметры задания задаются в настройке шага задания.<br /> | ||
+ | * @beginjob = '23:00:00' /* Время, с которого можно делать чистку. */ , | ||
+ | * @endjob = '08:00:00' /* Время, во сколько чистка должна остановиться. */, | ||
+ | * @DaysAgo = '730' /* Количество дней, до которых будет проводиться удаление. Текущая дата минус указанное число дней. */, | ||
+ | * @DateAgo = '' /* '2010-01-01' (формат для примера). Дата, до которой производится удаление. Значение приоритетней над @DaysAgo. */, | ||
+ | * @pr_key_list = '' /* Список ключей партнеров, по которым необходимо удалить данные. Если пусто, то удаление по всем партнерам. */, | ||
+ | * @exclude_pr_key_list = '' /* Список ключей партнеров, исключенных из удаления данных. Если пусто, то удаление по всем партнерам. */, | ||
+ | * @cn_key_list = '' /* Список ключе стран через запятую. */, | ||
+ | * @exclude_cn_key_list = '' /* Список ключей стран исключений через запятую. */, | ||
+ | * @ct_key_list = '' /* Список ключей городов через запятую. */, | ||
+ | * @exclude_ct_key_list = '' /* Список ключей городов исключений через запятую. */, | ||
+ | * @CountLines = 1000 /* Величина блока для удаления. */, | ||
+ | * @cleanservbydate = 1 /* Удаление записей ServiceByDate. Параметр не изменять. */, | ||
+ | * @cleanquotas = 1 /* Удаление записей qo, qd, qp, qt. Параметр не изменять. */, | ||
+ | * @cleanstopsale = 1 /* Удаление записей StopSales. Параметр не изменять. */, | ||
+ | * @delete = 1 /* Включение блока удаления. */', | ||
|- | |- | ||
| Название БД_Reindex | | Название БД_Reindex |
Текущая версия на 10:47, 10 декабря 2024
Версия статьи от 10.12.2024. Для перехода на версию статьи, соответствующую используемой Вами версии программы, нажмите ссылку в таблице:
Содержание
Введение
Статья предназначена для системных администраторов, контролирующих работоспособность ПК «Мастер-Тур 15». Статья описывает какие задания (Jobs) необходимо установить, чтобы постоянно очищать базу данных от устаревших и ненужных данных, а также проводить обслуживание таблиц, что положительно влияет на общую производительность ПК.
Создание заданий (Jobs)
Перед созданием заданий необходимо убедиться, что установлен и запущен SQL Server Agent. При использовании Express-издания Microsoft SQL Server вместо заданий sql-сервера используется планировщик заданий Windows
Для создания необходимых заданий необходимо выполнить скрипт по базе данных (CreateJob_NameJob.sql), который можно запросить у своего куратора (размещены по пути \\Scripts\utils\Jobs). Задания не должны работать одновременно.
Список стандартных заданий (Jobs)
Название задания (Job Name) | Запускаемая хранимая процедура | Интервал запуска | Описание |
Название БД_CleanCosts Обрабатывается с релиза 15.8, stable 2023.10 |
SET DATEFORMAT YMD
Maintenance_CleanCost_job |
1 сутки (ночью) |
Удаляет данные из таблицы цен, ценовых пакетов и таблиц истории History, HistoryDetail, HistoryCosts, удаляются ценовые блоки без цен. Удаляется история, относящаяся к ценам, которые были удалены.
|
Название БД_CleanCostsGDS Обрабатывается с релиза 15.8, stable 2023.10 |
SET DATEFORMAT YMD
Maintenance_CleanCostsGDS_job |
1 сутки (ночью) |
Основным назначением задания является чистка цен и истории цен от GDS адаптеров. Удаляются цены и пустые ценовые блоки старше указанного количества дней. Ценовые блоки от указанного
|
Название БД_CleanHistory Обрабатывается с релиза 15.8, stable 2023.10 |
SET DATEFORMAT YMD
Maintenance_CleanHistory_job |
1 сутки (ночью) |
Удаляет данные из таблицы истории History, HistoryDetail, HistoryCosts. Не удаляются строки, если заполнено поле hi_dgcod (т.е. информация относится к путевке).
Также после выполнения задания по очистке истории рекомендуется отдельно последовательно выполнить скрипты Defrag_history.sql и Defrag_HistoryDetail.sql для дефрагментации таблиц истории (строго во внерабочее время). Эти скрипты можно запросить у своего куратора. |
Название БД_CleanQuotas Обрабатывается с релиза 15.9 |
SET DATEFORMAT YMD
Maintenance_CleanQuotas_job |
1 сутки (ночью) |
Удаляет данные из таблиц, связанных с квотами, историю квот, ServiceByDate и т.д.
Параметры задания задаются в настройке шага задания.
|
Название БД_Reindex | Maintenance_reindex_job | 1 сутки (ночью) |
Производится обслуживание таблиц и статистики на таблицах в базе данных. Задание рекомендовано как замена штатных средств sql сервера, т.к. действия основываются на |
Название БД_StatsUpdate
Обрабатывается с релиза 15.8, stable 2023.10 |
Maintenance_stats_run | 1 сутки (ночью) |
Задание обновления статистики в таблицах базы данных на основе изменения данных и веса таблицы в работе. Задание рекомендуется использовать только по согласованию с куратором, если массовые изменения данных после |
Список нестандартных заданий (Jobs) - скоро будут удалены, так как будет их замена
Название задания (Job Name) | Запускаемая хранимая процедура | Интервал запуска | Описание |
Задание создать самостоятельно. Название БД_CostOffer_deactivate |
Содержимое файла CostOffer_deactivate.sql | 1 сутки (ночью) |
При работе с актуализацией цен Авиа GDS в базе данных создается значительное количество цен. Данный скрипт производит поиск неактуальных ценовых блоков, в которых есть цены, созданные механизмом обновления цен с прошедшими датами и деактивирует их. В скрипте необходимо задать название пакета и партнера Пример: PR_NAME = 'Nemo(внешняя система)' TL_NAME = 'Nemo(внешняя система)' Скрипт можно запросить у своего куратора. Содержимое скрипта целиком разместить в задании. |
Название БД_CleanHistory Обрабатывается с релиза 15.8 |
SET DATEFORMAT YMD
Maintenance_CleanHistory_job |
1 сутки (ночью) |
Производит очистку таблиц History и HistoryDetails за Х дней, кроме данных по путевкам. В хранимой процедуре Maintenance_CleanHistory_job в параметрах @BeginJob и @EndJob можно задать время, в которое можно проводить обслуживание. По умолчанию установлено время с 23:00 до 08:00. |
Регламентные работы, рекомендованные Microsoft
В процессе эксплуатации системы рекомендуется проводить регламентные работы с помощью мастера планов обслуживания в SQL Server.
Мастер планов обслуживания создает план обслуживания, который агент Microsoft SQL Server может выполняться регулярно. Это позволяет выполнять различные задачи администрирования базы данных, включая резервное копирование, проверки целостности базы данных или обновление статистики базы данных через указанные интервалы времени.
Обратите внимание, что описанный в статье блок по реорганизации индекса reindex нужно пропустить. Наш reindex, который мы предоставляем – реализован с учетом особенностей нашего ПО.
Внутренние скрипты
Разработан скрипт для удаления акций по параметрам.
Расположен по пути \\Scripts\utils\Cleaning\Clean_Specials.sql
Запросить его можно у своего куратора.