Поделиться через


Поиск и удаление неиспользуемых отчетов RDL

ОБЛАСТЬ ПРИМЕНЕНИЯ: Power BI построитель отчетов Power BI DesktopPower BI Power BI 2022 Report Server SQL Server 2022 Reporting Services

Ваша компания может работать с сотнями отчетов с разбивкой на страницы (RDL-файлы) в Сервер отчетов Power BI и SQL Server Reporting Services (SSRS). Некоторые из этих отчетов могут стать устаревшими и должны быть прекращены. Как автор отчета или администратор, вы не хотите перенести неиспользуемые отчеты в служба Power BI. При планировании миграции в облако мы рекомендуем выполнить некоторые домашние операции, чтобы избавиться от неиспользуемых отчетов RDL. Эта рекомендация поддерживает управление хранением и позволяет вашей организации использовать расписание хранения и политику данных.

Существует два процесса для проверка неиспользуемых отчетов. Мы расширим очистку до неиспользуемых объектов, а также для того, чтобы избавиться от неиспользуемых таблиц базы данных, которые могут иметь потенциально устаревшие данные.

Запуск аудита (необязательно)

Во-первых, мы рекомендуем создать спецификацию аудита сервера и базы данных. Аудит экземпляра ядра СУБД SQL Server или отдельной базы данных включает в себя отслеживание и ведение журнала событий, происходящих в ядре СУБД. Подсистема аудита SQL Server позволяет проводить аудит сервера, который может предусматривать спецификации аудита серверов для событий на уровне сервера и спецификации аудита баз данных для событий на уровне базы данных. События аудита могут записываться в журналы событий или файлы аудита.

После заполнения журнала аудита таблицами и хранимыми процедурами, используемыми для отчетов, вы можете экспортировать эти объекты в файл Excel и поделиться ими с заинтересованными лицами. Сообщите им, что вы готовитесь к отмене неиспользуемых объектов.

Примечание.

Некоторые важные отчеты могут выполняться только редко, поэтому обязательно попросите отзыв об объектах базы данных, которые редко используются. Нерекомендуя объект, можно изменить имя объекта, поместив zdel перед ним, чтобы объект падал в нижней части обозреватель объектов. Таким образом, если вы решите позже, что вам нужен объект zdel , вы можете изменить имя обратно на исходный. После того как вы будете готовы удалить их из базы данных, можно создать каденс для удаления неиспользуемых объектов.

Создание списка метрик использования отчетов

Во-вторых, необходимо создать список метрик использования отчетов RDL, запрашивая базу данных сервера отчетов. Используйте приведенный ниже T-SQL для получения количества использования. Если сервер отчетов настроен для хранения одного года журнала выполнения отчета, можно использовать определенную дату для фильтрации метрик использования.


; with UnusedReportsCte 
AS 
( 
SELECT 
Cat.Name,Path,COUNT(ExeLog.TimeStart) AS Cnt 

FROM (SELECT * FROM Catalog 
WHERE type=2 and Hidden=0) AS Cat 
LEFT JOIN 
ExecutionLog AS ExeLog 
ON ExeLog.ReportID = Cat.ItemID 
AND ExeLog.TimeStart>'01/01/2021' 
GROUP BY Cat.Name,Path) 
SELECT * FROM UnusedReportsCte 
ORDER BY Cnt ASC,path 

Примечание.

Вложенные отчеты и связанные отчеты не отображаются в журнале выполнения, если родительский отчет выполняется.

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