После того как модель создана данные в ней необходимо обновлять, разберем как это можно сделать
Существует несколько способ решения задачи, но все их можно разделить на две группы: ручное и автоматическое обновление. Начнем с самого простого, ручного, а позже настроим автоматическое обновление по расписанию.
- ручное обновление модели в Analysis Services
- автоматическое обновление модели в Analysis Services
Общая информация о Process
Называя в материале процесс Обновлением я подразумеваю Process (обработка) в официальной документации, что скорее всего не корректно, но более отражает суть задачи. Существует несколько вариантов обработки в зависимости от уровня, где она применяется (модель, таблица):
- Process Default
- Process Full
- Process Clear
- Process Data
- Process Add
- Process Update
- Process Index
- Process Structure
- Process Clear Structure
Про каждый из них вы найдете необходимую информацию в официальной справке, я не буду на этом останавливаться.
Ручное обновление модели SSAS
Представьте себе, что у вас есть некоторая база данных, содержащая таблицы, которые ежедневно дополняются новой информацией. Если создать модель как мы делали ранее, то по мере обновления таблиц в базе данных новая информация не будет попадать в нашу модель. Давайте убедимся в этом на примере. Таблица содержит дату и некоторый показатель на это число (слева база данных, справа модель данных). На основе этой таблицы создана модель в Analysis Services (SSAS):
После того, как была создана модель данных в SSAS в исходную таблицу добавили запись от 2022-12-14. При обновлении данных в базе данных мы видим новую запись, а в модели данных нет:
Чтобы новая запись появилась и в модели данных к ней нужно применить process или назовем это обновлением. Поскольку разбираем самый простой вариант, то в SSMS выбираем нашу модель данных и нажимаем на ней правой кнопкой мыши. Выбираем пункт Process Database, откроется окно с параметрами:
Можно сейчас нажать Ok в нижней части экрана для запуска процесса, но мы выполним несколько дополнительных операций. Во первых — в Mode укажем Process Full, во вторых — справа от кнопки Script откроем выпадающий список и выберем первый пункт:
Откроется вкладка, в которой появится небольшой фрагмент кода, сохраните его себе, он нам понадобится позже. Теперь можно нажать Ok и выполнить ручной запуск обновления или обработки нашей модели. Если в процессе не произошло ни никах ошибок отобразится сообщение об успешном выполнении задачи:
Теперь можно вернуться к началу материала и повторить процесс сравнения данных в базе данных и модели данных:
Мы разобрали процесс ручного обновления модели SSAS (обработки модели). По аналогии можно применить описанный процесс не на уровне модели, а на уровне отдельной таблицы. Вернитесь к сохраненному ранее коду и давайте перейдём к настройке автоматического обновления.