4

Для базы данных, размещенной на Azure, я могу просмотреть недавнюю историю запросов, выполненных на ней. Это через портал Azure> База данных> Управление> Администрирование> Производительность запросов.Как просмотреть историю запросов (все OR в течение длительного периода), выполненные в базе данных, размещенной на Azure?

К сожалению, найденная там история охватывает только небольшой временной интервал (несколько минут). Я намереваюсь создавать некластеризованные индексы в моей базе данных и для этого нужно получить журнал реальных запросов, запущенных на данных в обычный день, в отличие от последних нескольких минут.

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

Спасибо.

ответ

5

База данных Windows Azure SQL предлагает динамические представления управления (DMV), которые возвращают информацию о состоянии сервера, которая может использоваться для мониторинга работоспособности экземпляра сервера, диагностики проблем и настройки производительности.

Для получения списка доступных видов см. System Views (Windows Azure SQL Database).

Примеры использования запросов с интенсивным процессором, длительные запросы и интенсивные запросы ввода-вывода относятся к Tuning SQL Azure Databases, Part 2.

Дополнительные советы по устранению неполадок см Troubleshoot and Optimize Queries with Windows Azure SQL Database, Improving Your I/O Performance, Gaining Performance Insight into Windows Azure SQL Database, Troubleshooting Windows Azure SQL Database, Finding Blocking Queries in SQL Azure, March Madness – SQL Azure – sys.dm_exec_query_stats.

Также рассмотрите профилирование на уровне приложения, например, как описано в Profiling Database Activity in the Entity Framework и Query Profiling SQL Azure when using Entity Framework or Linq-to-SQL.

Для расширенного мониторинга рассмотрите возможность развертывания Windows Azure SQL Database Management Pack for System Center 2012.

0

Вот запрос я нашел полезным, чтобы увидеть наиболее выполняемых запросов на моем Azure базы данных SQL Server:

SELECT TOP 10 execution_count, statement_text 
FROM (
    SELECT QS.*, 
    SUBSTRING(
     ST.text, 
     (QS.statement_start_offset/2) + 1, 
     ((
      CASE statement_end_offset 
      WHEN -1 THEN DATALENGTH(st.text) 
      ELSE QS.statement_end_offset END 
      - QS.statement_start_offset 
     ) /2) 
     + 1 
    ) AS statement_text 
    FROM sys.dm_exec_query_stats AS QS 
    CROSS APPLY sys.dm_exec_sql_text(QS.sql_handle) as ST 
) AS query_stats 
WHERE statement_text LIKE 'UPDATE%' 
ORDER BY execution_count DESC 

Источник: March Madness - SQL Azure - sys.dm_exec_query_plan | SQLRockstar | Thomas LaRock