то подскажите пожалуйста как победили
Есть запрос к базе AzureSQL. Таблица, которая тянется внутрь PQ имеет 100млн строк.
Но мне не нужно тянуть все 100млн строк, а для работы достаточно и 1тыс строк.
Как сделать так, чтобы в PQ затягивались не все 100млн строк, а только 1тыс строк, но после публикации файла Power BI на Сервисе , нужно чтобы там в Набор Данных затягивался ВЕСЬ датасет из 100 млн строк?
Что уже пытался сделать.
В запросе PQ под названием Matrix после шага Source , добавлен шаг filter который урезает загруженный из базы датасет до 1тыс строк
source = Sql.Database(server, base, [Query="SELECT * FROM dbo.Table", CommandTimeout=#duration(0, 1, 0, 0)]),
filter = if pSelectTop = 0 then source else Table.FirstN(source, 1000)
В этом шаге filter есть параметр pSelectTop , который внутри PQ установлен = 1 , чтобы шаг filter урезал датасет source до 1тыс строк ( Table.FirstN(source, 1000) )
А в Power BI сервисе настроен pipeline где при деплойменте из тестового пайпа в продакш этот параметр pSelectTop приравнивается 0 (скрин ниже) и поэтому на Сервисе при обновлении Набора данных шаг filter затягивает весь датасет 100млн строк из базы AzureSQL,а не только первые 1тыс строк, как это происходит на локальном компе внутри PQ...
И вроде все работает норм.
Локальный файлик PBI содержит 1тыс строк и весит пару мегабайт, а на Сервисе крутится весь датасет в 100 млн строк ...
Однако, когда локальный файл PBI обновляется , то при обновлении он сначала вытягивает весь датасет в 100млн строк из AzureSQL , а потом урезает его до 1тыс строк ... (см второй скрин)
Можно ли как-то заставить локальный PBI файл при обновлении запрашивать только 1тыс строк, а не все 100млн.?
через вьюшку делать или через параметизацию и затем менять парамерт в сервисе
Так я же так и меняю параметр в сервисе ( первый скрин). Но при обновлении локального pbix несмотря на параметр , запрос вытягивает весь датасет
а фолдинг сработал?
вот и ответ
Обсуждают сегодня