SQL: Как повысить производительность запроса SQL представления? - PullRequest
0 голосов
/ 29 мая 2020

проблема:

  • Обновление и запрос (с использованием Power BI) моего еженедельного обзора продаж занимает вечность (> 30 минут), и я хотел бы понять, как я могу его улучшить

Текущая настройка:

  • Ежедневный просмотр продаж: представление, содержащее агрегирование и объединение двух основных таблиц продаж и таблицы дат
  • Недельное представление продаж: представление, присоединяющееся к «Ежедневному обзору продаж» ", таблица продаж и две таблицы измерений и содержащие обширные logi c (в основном агрегированные)

Пожалуйста, дайте мне знать, если у вас есть идеи, как упростить это и улучшить производительность представления.

1 Ответ

0 голосов
/ 29 мая 2020
  1. Как упоминал @Tim, представление будет иметь ту же производительность, что и базовый запрос. поэтому проверьте, можете ли вы оптимизировать запрос Select в представлении.
  2. Вы можете попробовать использовать общее табличное выражение (CTE) для некоторых агрегированных результатов в представлении вместо вычисления в самом выборе, а затем присоединиться к основному запросу с CTE.
  3. Вы можете попробовать использовать материализованное представление, если у вас есть возможность обновлять sh его каждый день / неделю в зависимости от ваших потребностей, а затем создавать индексы для материализованного представления и использовать его в качестве источника в ваш Power BI.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...