Самый эффективный тип подключения Snowflake от PowerBI? - PullRequest
0 голосов
/ 21 февраля 2020

Мы тестируем PowerBI на размерной модели Snowflake, и производительность кажется неоптимизированной. Может кто-нибудь указать мне информацию о лучших практиках для этой связи? Ранее я использовал Tableau, и есть отличная белая книга , в которой описываются плюсы и минусы каждого типа подключения и как настроить это так, чтобы в Snowflake выполнялась как можно большая тяжелая работа с минимальной нагрузкой на а именно инструмент.

например, когда вы суммируете 1 миллион счетов-фактур, чтобы получить график объема продаж по годам, который исчисляет это до 10 точек данных, Tableu отправит «SELECT year, sum (volume) FROM t GROUP BY year» (~ 10 строк), но в PowerBI мы видим, что SF получает запрос типа «SELECT invoice_id, sum (volume) FROM t GROUP BY invoice_id» (~ 1M строк) - оставляя инструмент viz для выполнения гораздо большей работы.

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

Заранее спасибо!

1 Ответ

0 голосов
/ 24 февраля 2020

Я никогда не использовал Snowflake и понятия не имею, как PowerBi взаимодействует с ним. Тем не менее, на стороне PowerBI вас может заинтересовать составная модель и агрегаты.

MS Docs:

Блог Radacad о агрегатах:

На практике, когда вы используете составную модель, функция агрегации позволяет вам создать скрытую таблицу (в режиме импорта) в вашей модели с агрегированными данными (по году, месяцу, клиенту и т. Д.). c). Теперь, когда вы запрашиваете ваши данные, PowerBI проверит, может ли эта таблица ответить на запрос, если да, тогда он просто выберет данные из этой таблицы, в противном случае он выполнит запрос к источнику (прямой запрос)

* 1047. * Пример, которым вы поделились, когда PowerBI запрашивает источник без запроса агрегирования (но вместо этого запрашивает каждый InvoiceId) может быть вызвано неправильной настройкой составной модели.

Таблица в «Прямой запрос» не может ссылаться на другие таблицы в своем запросе (в данном случае на календарь), если эта таблица также не находится в режиме «Прямой запрос» или «Двойной». Как выглядит модель в случае, если вы поделились? и какой режим хранения каждой таблицы?

...